RewriteEngine выдает ошибку 403

Индексный файл существует и работает. Когда я создаю файл .htaccess с ТОЛЬКО строкой:

RewriteEngine On 

Любая страница на сервере дает мне:

Доступ запрещен!

У вас нет прав доступа к запрошенному объекту. Он либо защищен от чтения, либо недоступен для чтения сервером.

Если вы считаете, что это ошибка сервера, обратитесь к веб-мастеру. Ошибка 403 mysite.com, среда, 5 октября, 22:25:25 2011 Apache/2.2.3 (Linux/SUSE)

Немного информации о сервере:

Загруженные модули core prefork http_core mod_so mod_actions mod_alias mod_auth_basic mod_authn_file mod_authz_host mod_authz_groupfile mod_authz_default mod_authz_user mod_authn_dbm mod_autoindex mod_cgi mod_dir mod_env mod_expires mod_include mod_log_config mod_mime mod_negotiation mod_setenvif mod_ssl mod_ssl mod_ssl mod_ssl mod_authz_user mod_authn_dbm mod_cgi mod_dir mod_env mod_expires

Версия апача:

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ СЕРВЕРА Apache/2.2.3 (Linux/SUSE)

Также сделал это:

Options FollowSymLinks

В разделе «Каталог» httpd.conf

Лог говорит только о факте ошибки, а не о причинах:

89.112.xx.x - - [05/Oct/2011:22:32:34 +0200] "GET /info.php HTTP/1.1" 403 1040 "-" "Mozilla/5.0 (Windows NT 6.1; rv:7.0.1) Gecko/20100101 Firefox/7.0.1"
::1 - - [05/Oct/2011:22:32:45 +0200] "GET / HTTP/1.0" 200 1 "-" "Apache/2.2.3 (Linux/SUSE) (internal dummy connection)"

Спасибо за любую помощь!


person Dmitry    schedule 05.10.2011    source источник
comment
Пожалуйста, проверьте ссылку ниже. Это поможет вам stackoverflow.com/questions/22621643/   -  person NIMESH PAREKH    schedule 08.05.2015


Ответы (4)


Место

Options +SymLinksIfOwnerMatch

в качестве первой строки вашего файла .htaccess. Это решило проблему для меня.

person Kurt    schedule 11.09.2013
comment
+FollowSymLinks требуется для механизма перезаписи. Если вы посмотрите в разделе Перезапись каталогов в документах Apache, вы увидите это. В качестве альтернативы можно использовать +SymLinksIfOwnerMatch, хотя я думаю, что все это зависит от вашей конфигурации apache в отношении производительности и безопасности. - person upful; 05.11.2013
comment
Options +FollowSymLinks помог мне. Спасибо. - person Martin Vseticka; 14.11.2013
comment
Работал как шарм ... Был бы признателен, если бы вы также объяснили, почему. - person Mołot; 13.01.2014

Наиболее вероятная причина заключается в том, что ваш основной файл конфигурации имеет ограниченные разрешения. У вас есть строка типа:

<Directory /> 
    AllowOverride None 
</Directory>

в вашем основном файле конфигурации? Это помешает вам изменить практически что-либо с помощью файла .htaccess.

Вы можете узнать больше о разрешениях Apache на их веб-сайте.

person Jeff Hutchins    schedule 05.10.2011
comment
Да, там была строка AllowOverride None, я ее удалил, перезапустил apache, но все равно выдает 403. Вот текущий раздел Directory: ‹Directory /› Options FollowSymLinks (Здесь было AllowOverride None) Запретить заказ, разрешить запретить от всех ‹ /Каталог› - person Dmitry; 06.10.2011
comment
Вместо того, чтобы удалять строку AllowOverride, измените ее на ВСЕ или соответствующее подмножество нужных вам функций. Дополнительную информацию об этих параметрах можно найти на веб-сайте Apache. - person Jeff Hutchins; 06.10.2011
comment
Кроме того, вы хотите убедиться, что у вас нет другого объявления Directory, которое ограничивает разрешения Override где-то в ваших файлах conf, и что расширение mod_rewrite включено. - person Jeff Hutchins; 06.10.2011

Проверьте в httpd.conf блок кода. По умолчанию на Mac это довольно ограничительно. Если это только локально, и вам все равно, вы можете открыть его, например:

<Directory />
    Options All
    AllowOverride All
    Order deny,allow
    Allow from all
</Directory>

Это может помочь, или могут быть сами права доступа к файлам. Файлы /var/log/apache2/error_log и /var/log/apache2/access_log также могут дать вам более подробную информацию о том, что происходит.

person Tarun Gupta    schedule 07.06.2014

Благодаря ответу Таруна Options All сделал эту работу за меня:

<Directory "/path/to/apache/root"/>
    Options All
    ...
</Directory>
person Anthony Ivol    schedule 29.08.2018