Options -MultiViews +FollowSymlinks
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule .? http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteRule ^/?(.*/?)index\.(htm|html|php) /$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
RewriteCond %{REQUEST_URI} !^/search-results
RewriteCond %{QUERY_STRING} !=”"
RewriteRule ^(.*)$ /$1? [R=301,L]
ErrorDocument 404 /sitemap
I use this file for the FREEWebPlate website template I built | View Demo
In order from top to bottom, I’ve marked parts in bold that you may want to alter:
- index | you may change this to: default if that’s what you’re using
- htm|html|php | you may add more extensions like so: htm|html|php|asp
- php (both places) | you may change to any other file type extension; htm, html etc.
- /search-results | you’ll need to specify what folders/files you want to allow query strings (?) on, add a new line for each
- /sitemap | you’ll need to specify what page/URL you want 404 pages to go to
For more advanced users, you can of course alter it however you like.
What this Script Does
- Enforces www in URLs
- Removes index.htm, index.html and index.php from URLs
- Allows you to link to cleaner versions of URLs without using the extension (use website.com/contact instead of website.com/contact.php)
- Strips query strings from URLs except for the folders and files you allow
- Forwards/redirects 404 error pages to the page of your choice
Enjoy.
Thanks, Bryan
This will enforce forwarding / redirection to the www version of your pages, enforce clean URLs by removing index.php, index.html and index.htm and by removing query characters like ? where they don’t belong adding exceptions for folders/files where they are allowed and my favorite part, forwarding / redirecting 404 error pages to the page of your choosing, check it out:
RewriteEngine on
RewriteBase /RewriteRule ^index\.(htm|html|php) http://www.website.com/ [R=301,L]
RewriteRule ^(.*)/index\.(htm|html|php) http://www.website.com/$1/ [R=301,L]
RewriteCond %{HTTP_HOST} !^www\..*
RewriteRule ^.*$ http://www.website.com%{REQUEST_URI} [R=permanent,L]RewriteCond %{REQUEST_URI} !^/search-results.php
RewriteCond %{QUERY_STRING} !=”"
RewriteRule ^(.*)$ /$1? [R=301,L]ErrorDocument 404 sitemap.php
Bold parts are places you can edit. Simply paste the code in Notepad and then change website.com to your websites info, change search-results.php to the page you want to allow query strings on like a search results page, change sitemap.php to whatever page you want users to reach if they’ve reached your site in error, you can simply make it / if you want 404 errors to redirect to your homepage.
Save text file as .htaccess with “All Files” selected and then upload to the root folder of your website, this is often called public_html, just make sure it resides next to your index file.
Enjoy.
Thanks, Bryan
I’ve just started a new white label web services program. I’ve been thinking about doing this for some time now and in a way I already do this for some clients, so I decided I wanted to go full force with the idea.
It’s a very realistic way for anyone to make money, it might be worth a further look for those trying to make money online:
http://www.calmestghost.com/white-label-web-services/
Thanks, Bryan
It’s a great company that has great products and I’m happy to be working with them.
They program and design Premium WordPress Templates at a very fair price. I offer support to those customers needing help with the vast features PageLines templates offer.
Thanks, Bryan









