Недавно я отформатировал и установил свой iMac. Я использую 10.6.5. До этого формата у меня был установленный по умолчанию веб-сервер Apache с несколькими виртуальными хостами, и все работало прекрасно. После форматирования я снова все настроил, и теперь Apache ведет себя забавно. Вот описание того, что у меня происходит.
Мой корневой каталог по умолчанию для веб-сервера Apache указывает на внешний жесткий диск. В моем httpd.conf вот что у меня есть:
DocumentRoot "/Storage/Sites"
Затем несколько строк ниже:
<Directory />
Options FollowSymLinks
AllowOverride All
Order deny,allow
Allow from all
</Directory>
А затем под этим:
<Directory "/Storage/Sites">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from All
</Directory>
В конце этого файла я закомментировал файл user dir include conf:
Include /private/etc/apache2/extra/httpd-userdir.conf
И раскомментировал файл conf виртуальных хостов:
Include /private/etc/apache2/extra/httpd-vhosts.conf
Двигаясь дальше, у меня есть следующая запись в моем файле vhosts:
<VirtualHost *:80>
DocumentRoot "/Storage/Sites/mysite"
ServerName mysite.dev
</VirtualHost>
У меня также есть запись хоста в моем файле / etc / hosts, которая указывает mysite.dev на 127.0.0.1 (я также пробовал использовать свой IP-адрес маршрутизатора, 192.168.1.2).
Проблема, с которой я сталкиваюсь, заключается в том, что, несмотря на наличие файлов PHP в / Storage / Sites / mysite, сервер по-прежнему просматривает / Storage / Sites. Я знаю это, потому что в DocumentRoot содержится файл php с phpinfo () (тогда как файл index.php в mysite имеет другой код).
Я пробовал настроить другие виртуальные хосты, но они по-прежнему делают то же самое. Кроме того, «NameVirtualHost *: 80» находится в моем файле vhosts. Я видел решение в другом потоке здесь. Кажется, это не имеет значения.
Есть идеи по этому поводу? Сообщите мне, если этой информации недостаточно.
Включите только те параметры директивы, которые будут общими для всех VirtualHosts, в ваш основной файл httpd.conf. Сделайте все хосты, обслуживаемые Apache, виртуальными.
Удалите DocumentRoot и блоки из основного файла httpd.conf. Имейте их только в файле httpd-vhosts.conf.