У меня OS X Server 10.8 [с серверным приложением]. Я включил службу веб-сайтов и добавил путь к /Volumes/dev1/http
как корень для моего веб-сайта сервера.
Я редактировал файл в /private/etc/apache2/httpd.conf
и добавил следующую строку: Include /Volumes/dev1/http/.virtual-hosts
Файл на /Volumes/dev1/http/.virtual-hosts
это что-то вроде:
listen 80
listen 443
servername "site"
serveradmin "mail@myemail.com"
namevirtualhost *:80
namevirtualhost *:443
directoryindex .index.php index.html index.php
options -indexes -multiviews +followsymlinks
<directory /Volumes/dev1/http>
allowoverride all
</directory>
<virtualhost *:80 *:443>
servername site.com
serveralias www.site.com
documentroot "/Volumes/dev1/http/com-site"
rewriteengine on
</virtualhost>
Сервер полностью игнорирует этот файл, даже если я ввожу случайные символы и запускаю apachectl -t
он говорит, что синтаксис неправильный.
Я даже пробовал иметь только directoryindex .index.php
в этом файле и до сих пор не действует - возвращает 403 Forbidden, даже подумал .index.php
настоящее.
Эта точная конфигурация прекрасно работает на более старом сервере 10.6.
Спасибо, что нашли время подумать о моей проблеме!
После некоторого подхода к Google и проб и ошибок ответ таков: при использовании серверного приложения в OS 10.8 вам необходимо поместить директиву include в /Library/Server/Web/Config/apache2/httpd_server_app.conf
не в /private/etc/apache2/httpd.conf