Dmitry
Dmitry

Reputation: 4101

RewriteEngine on gives error 403

Index file exists and works. When I create .htaccess file with the ONLY line:

RewriteEngine On 

Any page on server gives me:

Access forbidden!

You don't have permission to access the requested object. It is either read-protected or not readable by the server.

If you think this is a server error, please contact the webmaster. Error 403 mysite.com Wed Oct 5 22:25:25 2011 Apache/2.2.3 (Linux/SUSE)

Some server info:

Loaded Modules 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 version:

SERVER_SOFTWARE Apache/2.2.3 (Linux/SUSE)

Also did this:

Options FollowSymLinks

In Directory section of httpd.conf

Log says just fact of error, not reasons:

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

Thanks for any help!

Upvotes: 21

Views: 17649

Answers (4)

Anthony Ivol
Anthony Ivol

Reputation: 36

Thanks to the Tarun's answer, Options All did the job for me :

<Directory "/path/to/apache/root"/>
    Options All
    ...
</Directory>

Upvotes: 0

Tarun Gupta
Tarun Gupta

Reputation: 6403

Check in the httpd.conf for the block of code. By default on a mac it's pretty restrictive. If it's only local and you don't care to much you can open it up like:

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

That might help, or, could be the file permissions themselves. The /var/log/apache2/error_log and /var/log/apache2/access_log may also give you a bit more detail as to what's going on.

Upvotes: 2

Kurt
Kurt

Reputation: 546

Place

Options +SymLinksIfOwnerMatch

as the first line of your .htaccess file. That fixed the problem for me.

Upvotes: 45

Jeff Hutchins
Jeff Hutchins

Reputation: 735

The most likely cause is that your main conf file has the permissions restricted. Do you have a line like:

<Directory /> 
    AllowOverride None 
</Directory>

in your main conf file? This will stop you from being able to change basically anything using a .htaccess file.

You can find out more about apache permissions on their website.

Upvotes: 2

Related Questions