.htaccess: RewriteEngine not allowed here

minimum configuration for your .htaccess to work:

AllowOverride FileInfo Options

allowing all configuration will work as well:

AllowOverride All

Let's say your DOCUMENT_ROOT is /home/foo/web then have this config in your httpd.conf file:

<Directory "/home/foo/web">
    Options Indexes FollowSymLinks Includes ExecCGI
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

This should take care of RewriteEngine is not allowed error you're getting.


Just an idea, this happened to me, and I've lost a lot of time trying to solve it.

If you have a directory like d:/web/my-sites/some-site/

And you place the .htaccess on d:/web/my-sites/some-site/.htaccess (where it supposed to be).

If you have ANY .htaccess files before this directory, Apache reads that files, and blocks the execution of the entire path, producing an internal server error.

I.E.: You have d:/web/my-sites/.htaccess


In httpd version 2.4 (2.4.3 and 2.4.4), take a look at /etc/httpd/conf.d/wordpress.conf There is one entry for: ....

Change: "AllowOverride Options" to "AllowOverride All"

in wordpress.conf also in addition to changing httpd.conf. Restart the http server before the changes will take effect.