РНР 5 в подлиннике

Страница 60 из 554


Гпава 4. Установка Apache

123

При желании можно добавить и другие параметры в блоки <virtuaiHost> (например, Directoryindex и т. д.) Не переопределенные параметры наследуются виртуальным хостом от главного. Однако не советуем злоупотреблять настройками в этих секциях — лучше сделать их в файле .htaccess в каталоге нужного хоста, потому что компания, которая предоставляет (будет предоставлять) вам "настоящие" виртуальные хосты в Интернете, вряд ли позволит менять данные блоки.

Но как же система узнает, что хост ipbased сопоставлен с адресом 127.0.0.2, а nmbased — хост типа name-based? Для решения проблемы надо немного подправить системный файл hosts, который находится в каталоге C:\WINDOWS для операционных систем Windows 95/98/Millennium и C:\WINNT\SYSTEM32\DRIVERS\etc для Windows NT/2000/XP и Windows Server 2003 (вероятно, и для всех следующих версий ОС тоже).

Внимание!

Не путайте файл hosts (без расширения) с файлом hosts.sam, который, скорее всего, также расположен в том же каталоге! Последний файл является просто демонстрационным примером Microsoft и никак не используется системой. Если файла hosts не существует, его необходимо создать.

Файл hosts — обычный текстовый файл, и в него может быть заранее включена только одна строка:

127.0.0.1 localhost

Именно эта строка и задает соответствие имени localhost адресу 127.0.0.1.

( Замечание j

Ради справедливости следует сказать, что имя localhost работает и без указанной выше строки. Ну и выдумщики же эти парни из компании Microsoft!

Для нашего виртуального хоста надо добавить соответствующую строчку, чтобы файл выглядел так, как представлено в листинге 4.6.

j Листинг 4.6. Файл hosts

## Соответствие доменных имен IP-адресам. 127.0.0.1 localhost nmbased 127.0.0.2 ipbased

Обратите внимание на то, что хост nmbased описан в той же строке, что и localhost. Такой синтаксис допустим. Если одному адресу сопоставляется сразу несколько хостов, то один из них (тот, который идет первым) объявляется главным, а остальные — его псевдонимами. В нашем случае localhost — главный, a nmbased — его псевдоним. Apache при получении запроса на адрес 127.0.0.1 по протоколу HTTP 1.1 узнает, что он пришел хосту с именем nmbased, и активизирует соответствующий

блок <VirtualHost>.

Замечание j

Впрочем, вы можете разбить эту строчку на две, независимых, используя в каждой из них префикс 127.0.0.1.

124

Часть II. Выбор и настройка инструментария

Что получилось в итоге?

Итак, мы создали виртуальные хосты со следующими свойствами:

 ХОСТ nmbased: ИМЯ — nmbased;

доступен по адресу http://nmbased;

расположен в каталоге z:/home/nmbased;

каталог для хранения документов — z:/home/nmbased/www, доступный по адресу http://nrabased/;

каталог для CGI — z:/home/nmbased/cgi, доступный по адресу http://nmbased/cgi/; файлы журналов хранятся в z:/home/nmbased;

 ХОСТ ipbased: ИМЯ — ipbased;

доступен по адресу http://ipbased или http://127.0.0.2;

размещен в каталоге z:/home/ipbased;

каталог для хранения документов — z:/home/ipbased/www, доступен по адресу http://ipbased/;

каталог для CGI — z:/home/ipbased/cgi, доступен по адресу http://ipbased/cgi/; файлы журналов содержатся в z:/home/ipbased.

( Замечание ^

Необходимо заметить, что главный хост (невиртуальный, тот, который мы создали ранее) по-прежнему доступен по адресу http://127.0.0.1 или http://localhost. Более того, его каталог cgi-bin "виден" всем существующим виртуальным хостам, так что вы можете его использовать.

После всех изменений не забывайте перезапускать Apache.

Примечание ^

Рекомендуется закрывать Apache при помощи написанного нами ВАТ-файла, а не просто кнопкой закрытия окна.

Apache для Windows и безопасность

Выше мы писали о том, что Apache для Windows можно применять в качестве отладочной платформы при разработке скриптов и сайтов. Материал данной книги опирается именно на возможность такого его применения и не выходит за ее рамки. Прошлое издание1 показало, что, к сожалению, пользователи часто пытаются ис-

Котеров Д. В. Самоучитель РНР 4. - СПб.: БХВ-Петербург, 2001.




  Hostland.Ru

 «Бесплатный хостинг Hostland.Su» © 2006