Почему Mac OS X Lion Apache DocumentRoot / usr / htdocs?

15

Я сбит с толку.

Я не вижу, где /usr/htdocsуказано как DocumentRoot для apache2 на Mac OS X Lion.

Это DocumentRoot по умолчанию при новой установке OSX Lion.

Может кто-нибудь указать мне, где это указано?

Я просмотрел весь /etc/apache2каталог и не смог найти это правило.

vinhboy
источник
ничего в /etc/apache2/available-sites/*конфигах?
Рагнк
В настройке OSX по умолчанию не используется структура available-sites или enabled-sites.
vinhboy
1
Это не. В новой установке OS X Lion используются /Library/WebServer/Documents, как и в основных выпусках до Lion, на которую также указывает кнопка « Открыть папку веб-сайта компьютера» в « Системных настройках» «Общий доступ» »Общий веб-доступ . Вы установили менеджер пакетов, такой как Homebrew, Fink или MacPorts; XAMPP или подобное решение Apache? Что выводится which httpdи ps aux | grep httpdв Терминале?
Даниэль Бек
Я не установил ни одного из этих менеджеров пакетов. Но спасибо, я посмотрю по этому пути. Я вижу /Library/WebServer/Documentsдирективу в файле httpd.conf. Тем не менее, он явно перезаписывается где-то еще. Я попытался следовать всем ссылкам на другой файл .conf, но пока не повезло.
vinhboy
Почему не grepдля /usr/htdocsна вашей машине и увидеть , где он переписывается? - (/ cc @dan, вы не получили ответа на это)
slhck

Ответы:

14

Когда «Общий веб-доступ» НЕ включен, он становится /usr/htdocsкорневым. Когда вы включаете «Общий веб-доступ», он принимает файл конфигурации по адресу /etc/apache2/httpd.conf. Каталог будет указан рядом со следующим разделом файла.

<IfDefine WEBSHARING_ON>
#
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
#
DocumentRoot "/Library/WebServer/Documents"

Также вы можете использовать каталог "Сайты" при /Users/USERNAME/Sitesдоступе с localhost/~USERNAME.

timoto
источник
Пятно на. Обратите также внимание на строку ServerRoot "/usr"- с отключенным веб-общим доступом и отсутствием альтернативного DocumentRoot, кажется, что Apache по умолчанию ищет в htdocsпределах определенного корневого сервера.
rymo
Это правда, что некоторые <IfDefine WEBSERVICE> должны быть прокомментированы, так как это WEBSERVICE?
Gucho Ca
0

Сначала включите общий доступ к Интернету. Перейдите к системным настройкам -> Общий доступ, затем включите общий доступ к Интернету. Я написал пост об этом.

dimas.priyanto
источник
Не могли бы вы добавить больше деталей? Ваш пост содержит больше информации, чем вы сказали здесь.
Саймон Шихан
поэтому он написал пост, иди и прочитай его, и настрои свой веб-обмен в lion))) Я тоже так делал, раньше теперь у меня есть папка «Сайты» в моем домашнем каталоге, и все работает.
Холмс
0

Этот вопрос помог мне решить ту же проблему на SnowLeopard сегодня. Осторожно: это было httpd.confв /private/etc/apache2 не в /etc/apache2 (который также существует) , который получил читать и указал /Library/WebServer/Documentsв моем случае.

Надеюсь, это поможет (и другим тоже).

П Марецки
источник
Вся папка / etc представляет собой ссылку на / private / etc, поэтому они одинаковы.
Fireandlight27
@ Fireandlight27 Не думаю, что это было на SL, иначе я бы не писал. Я рад, что они связаны в вашем случае; какая версия ОС?
П Марецки