.htaccess rewrite rules doesn't work

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]
Show comments

Submit an answer

This textbox defaults to using Markdown to format your answer.

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

Sign In or Sign Up to Answer

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