Я пробовал много предложений, которые могу найти через Google, чтобы мой виртуальный хост работал должным образом после обновления с Debian до Jessie (обновление с Apach 2.2 до 2.4).
У меня есть mod_rewrite и mod_access_compat, поэтому кажется, что он работает нормально, когда я использую старый синтаксис. Как только я пойду в Require all granted
, он перестает работать, и я получаю 403 Forbidden.
У меня много виртуальных хостов, и то же самое во всех отношениях ... большинство из них - установки Drupal. Вот пример виртуального хоста:
<VirtualHost *:80>
ServerName www.skyjacobs.com
Redirect 301 / http://skyjacobs.com/
</VirtualHost>
<VirtualHost *:80>
ServerAdmin skyjacobs@gmail.com
ServerName skyjacobs.com
DocumentRoot /www/sky
<Directory /www/sky>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny # These 2 lines work
allow from all #
Require all granted # If I use this line only, it stops working
</Directory>
ErrorLog /www/logs/sky/error.log
LogLevel warn
CustomLog /www/logs/sky/access.log combined
</VirtualHost>
Если я закомментирую 2 строки старого синтаксиса и использую Require all granted
, он перестает работать. Кто-нибудь знает, в чем может быть проблема? Спасибо за любые подсказки.
Вы используете неправильный модуль для своей конфигурации. По документации существует 2 модуля.
Если вы хотите перейти на новый синтаксис, вы должны включить mod_access_host
и отключить mod_access_compat
. В противном случае вы могли бы остаться на старом синтаксисе с mod_access_compat
.