.htaccess rewrite rules doesn't work

  • Posted October 27, 2014

Hello, I’ve tried to follow this guide to enable the .htaccess on my server (so my .htaccess is working), but without luck.

Does anyone know where the problem can be?

Here is my htaccess file, it works on my localhost etc.

RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

URLs that are beautiful.

For instance “index.php/hello/world” would become “hello/world” - so the index.php is removed.

This is working without problems on my localhost as mentioned, so I think it’s some kind of server setup that is giving problems

what are you trying to achieve with your .htaccess configuration ?

Submit an answer
You can type!ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

It does not work for me even if set AllowOverride All. What else can be a problem?

To remove the .php using .htaccess file, your .htaccess doc should look like this:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]

In case you want to remove a .html extension and not a .php replace the last line with this:

RewriteRule ^([^\.]+)$ $1.html [NC,L]

Finally for beginners, you can create .htaccess files from Using their web interface

Hope this helps ;)


This comment has been deleted