500 Ошибка на сервере Apache – «AllowOverride не разрешено здесь»

Я настроил сервер на своем Mac (OSX 10.9), но он возвращает ошибку 500 со следующим сообщением в журнале ошибок …

[alert] [client ::1] /Users/user/Sites/mysite/.htaccess: AllowOverride not allowed here 

Вот код в моем файле .htaccess

 Options +FollowSymLinks -MultiViews AllowOverride All # Turn mod_rewrite on RewriteEngine On RewriteBase / RewriteMap lc int:toLower RewriteCond %{REQUEST_URI} [AZ] RewriteRule (.*) ${lc:$1} [R=301,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^i/(.*)/(.*)-(.*)$ /items/?id=$1&range=$2&type=$3 [L,QSA,NC] RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^c/(.*)$ /category/?menu=$1 [L,QSA,NC] 

И вот соответствующий код httpd.conf (дайте мне знать, если что-нибудь еще поможет)

 DocumentRoot "/Users/user/Sites/mysite" <Directory /> Options FollowSymLinks AllowOverride All Order deny,allow Deny from all </Directory> <Directory "/Users/user/Sites/mysite"> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny Allow from all </Directory> 

Есть идеи?

AllowOverride All не принадлежит файлу htaccess. Он используется в конфигурации сервера (httpd.conf) для установки параметров конфигурации сервера, которые файл htaccess может переопределить . Поэтому, очевидно, было бы неправильно настраивать, какие параметры htaccess файлы могут переопределять из файлов htaccess.

Удалите его из файла htaccess. Вы уже определили AllowOverride All в своем httpd.conf в правильных местах.

AllowOverride контролирует .htaccess-security и -behaviour и не может быть установлен внутри файлов .htaccess.

Drop "AllowOverride All" из .htaccess, вот и все.

Возьмите AllowOverride Все из вашего .htaccess.