Access Pages Without the PHP Extension Using .htaccess

There are a number of ways to make “clean URLs” work on your site, but this one is pretty straight forward. It allows you to access /any-page.php by simply going to /any-page. Just place the following into your .htaccess file (and make sure that mod_rewrite is enabled):

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

The nice thing about this is that it doesn’t affect querystrings. With this solution, both of these URLs are effectively the same:

http://example.com/page.php?id=123

http://example.com/page?id=123

Of course, the caveat is that you don’t have “clean querystrings”, but it’s a reasonable trade-off between “clean” and configuration.

Author: Ashif

Hi, my name is Ashif. I've been earning a living online since 2006 and love to share what I've learned. You can connect with me on Facebook, Twitter, YouTube and Google Plus. Don't forget to subscribe to my blog to keep up with my latest tips and tricks. You can also send questions in my mail.

Leave a Reply

Your email address will not be published. Required fields are marked *