Remove URL extension with a2enmod rewrite with htaccess

Posted November 7, 2015 5.3k views

Hi there :-)

I am trying to enable the URL rewrite so that when a person goes to they will not see the extension or .php .

I cannot get it to work unfortunately, this is what i have done:

I think I must be missing something small here:

my htaccess:

RewriteEngine On
RewriteCond %{REQUESTFILENAME} !-d
RewriteCond %{REQUEST
FILENAME}.php -f
RewriteRule ^(.*)$ $1.php [L]

set permissions to 664

a2enmod is enabled

removed extension from links in code (changed link in nav menu form /home.php to /home)

restarted apache

when i got to …/home - i get a 404.

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.

Submit an Answer
1 answer

Make sure that you have AllowOverride set to All in your apache virtual host file.

<Directory /var/www/html>
        Options -Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted

And then restart apache.