URL rewrite helps you to hide your extension name or show different extension name like index.php can be displayed as index.html or only index or home etc.

The following code will rewrite anyfile.php to anyfile.html

RewriteEngine on
RewriteRule ^(.*).html$ $1.php


The following code will rewrite index.php to index

RewriteEngine on
RewriteRule ^index index.php

 

Few Example to create SEO friendly URL.

1. Rewrite product.php?id=1 to product-1.html

RewriteEngine on
RewriteRule ^product-([0-9]+).html$ product.php?id=$1

 

2. Rewrite product.php?id=12 to product/cat/12.html

RewriteEngine on
RewriteRule ^product/([a-zA-Z0-9_-]+)/([0-9]+).html$ product.php?id=$2

 

3. Rewrite domain.com/member.php?username=arup to domain.com/arup

RewriteEngine on
RewriteRule ^([a-zA-Z0-9_-]+)$ user.php?username=$1
RewriteRule ^([a-zA-Z0-9_-]+)/$ user.php?username=$1

4. Rewrite domain.com/users.php?id=username&page=2 to domain.com/username/2

RewriteEngine on
RewriteRule ^([a-zA-Z0-9_-]+)/([0-9]+)$ users.php?user=$1&page=$2
RewriteRule ^([a-zA-Z0-9_-]+)/([0-9]+)/$ users.php?user=$1&page=$2

5. Rewrite file anyfile.php to /anyfile

Options All -Indexes
RewriteEngine On
RewriteBase /

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