Итак, Вы
установили Apache. Получили, таким образом, директорию g:/www для хранения
документов и g:/cgi-bin для CGI. Но вот беда: в Интернете вы поддерживаете
несколько серверов, а Apache создал для вас только один. Конечно, можно
структуру этих несколькох серверов хранить на одном сервере, однако проще и
удобнее было бы создать несколько виртуальных хостов с помощью Apache, например,
один с именем serv1 и адресом 127.0.0.2, а другой - с именем serv2 и адресом
127.0.0.3. (Конечно, вместо "serv1" и "serv2" Вам нужно будет указать желаемые
имена Ваших виртуальных хостов. Советуем назвать их так же, как и на Вашем
настоящем Web-сервере - это может многое упростить при программировании
скриптов.)
Как это
принято в Unix, каждый сервер будет представлен своим каталогом в директории
g:/home с именем, совпадающим с именем сервера. Например, сервер serv1 будет
храниться в директории g:/home/serv1, которую Вам необходимо создать прямо
сейчас. В этой директории будут находиться:
- файл access.log с журналом доступа
к виртуальному серверу.
- файл errors.log с журналом ошибок
сервера. директория www, где будут храниться
- html-документы. директория cgi для
хранения CGI-программ.
Последние
две директории (www и cgi) Вам тоже необходимо создать прямо сейчас.
Далее, для
установки виртуального хоста необходимо сделать некоторые изменеия в файле
конфигурации Apache httpd.conf (см. выше), а также в некоторых файлах Windows.
Вот необходимые действия:
1.
Откройте директорию
g:\usr\local\apache\conf. Откройте находящийся там файл httpd.conf. Перейдите в
его конец, Вам предстоит добавить туда несколько строк.
2.
Пропишите следующие
строки в конце файла после всех комментариев:
3. #----serv1
4. <VirtualHost 127.0.0.2>
5. ServerAdmin webmaster@serv1.ru
6. ServerName serv1
7. DocumentRoot "g:/home/serv1/www"
8. ScriptAlias /cgi/ "g:/home/serv1/cgi/"
9. ErrorLog g:/home/serv1/error.log
10. CustomLog g:/home/serv1/access.log common
11. </VirtualHost>
При желании можно
добавить и другие параметры (например, DirectoryIndex и т.д.) Вообще, не
переопределенные параметры наследуются виртуальным хостом от
главного.
12.
Теперь надо немного
подправить системный файл hosts, который находится в C:\WINDOWS\hosts (такого
файла может не быть по умолчанию - в этом случае его надо создать). hosts -
обычный текстовый файл, и в нем обычно заранее прописана только одна строка:
127.0.0.1 localhost
именно эта строка и
задает соответствие имени localhost адресу 127.0.0.1. (Ради справедливости
следует сказать, что имя localhost работает и без указанной выше строки. Ну и
выдумщики же эти парни из фирмы Microsoft!) Для нашего виртуального хоста надо
добавить соответствующую строчку, чтобы файл выглядел так:
127.0.0.1 localhost
127.0.0.2 serv1
Этим Вы
создадите виртуальных хост со следующими свойствами:
Имя - serv1.
Доступен по адресу http://serv1 (или http://127.0.0.2). Расположен,
соответственно, в директории g:/home/serv1. Директория для хранения документов -
g:/home/serv1/www, доступная по адресу http://serv1/. Директория для CGI -
g:/home/serv1/cgi,доступная по адресу http://serv1/cgi/ Файлы журналов хранятся
в g:/home/serv1
Ну вот, мы
создали один виртуальный хост! Если будет необходимо сделать второй, нужно
просто проделать аналогичные действия, заменив параметры, связанные с
расположением хоста на диске. Главное, не забудьте в этом случае указать другой
IP-адрес (лучше всего указывать их последовательно, начиная с 127.0.0.2, затем
127.0.0.3 и т.д. - в этом случае все работает корректно). Желательно также для
этих целей не указывать IP-адрус http://127.0.0.1, так как это - адрес главного
сервера.
Кстати,
необходимо заметить, что главный хост (невиртуальный, тот, который мы создали в
раздулах 1 и 2) по-прежнему доступен по адресу http://127.0.0.1 или
http://localhost. Более того, его директория cgi-bin "видна" всем созданным
виртуальным хостам, так что Вы можете ее использовать.
|