Подтвердить что ты не робот

RewriteEngine on дает ошибку 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_suexec mod_userdir mod_rewrite mod_php5

Версия Apache:

SERVER_SOFTWARE 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)"

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

4b9b3361

Ответ 1

Место

Options +SymLinksIfOwnerMatch

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

Ответ 2

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

<Directory /> 
    AllowOverride None 
</Directory>

в вашем основном файле conf? Это остановит вас на том, что вы можете вообще ничего изменить, используя файл .htaccess.

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

Ответ 3

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

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

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