Five practical .htaccess tricks

30 Nov, 2018

Apache's '.htaccess' has some very powerful tools that you can use with minimal effort to enhance the user experience and even performance, of your website. These are the top 5 .htaccess tricks that you should add to your website today.

1. Redirecting users to your maintenance page. If you're making some big changes to your site that could affect users negatively, you may want to temporarily redirect them to a maintenance page while you make the changes.

RewriteEngine On
RewriteBase /

# Allow your IP
RewriteCond %{REMOTE_ADDR} !^000\.000\.000\.000

# Redirect to maintenance.html
RewriteCond %{REQUEST_URI} !^/maintenance\.html$
RewriteRule ^(.*)$ [R=307,L]

2. Enabling gzip compression to reduce the time it takes your website to load.

# Compression
SetOutputFilter DEFLATE
SetEnvIfNoCase Request_URI "\.(?:gif|jpe?g|png)$" no-gzip

3. Blocking bad IP addresses.

# Block some IP
RewriteCond %{REMOTE_HOST} [OR]

4. Specify custom HTTP error pages to create a better user experience in the event of a broken link or some other error.

# Custom error pages
ErrorDocument 400 /error/400.html
ErrorDocument 401 /error/401.html
ErrorDocument 403 /error/403.html
ErrorDocument 404 /error/404.html
ErrorDocument 500 /error/500.html

5. Remove .html and .php extensions to shorten URLs and make them less confusing to users.

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
# Remove .php extention
RewriteRule ^([^\.]+)$ $1.php [NC,L]
# Remove .html extention
RewriteRule ^([^\.]+)$ $1.html [NC,L]

Other Tutorials

View All

Beme style progress bar

html - css - javascript

How to create a progress bar that wraps around the screen of any sized device similar to the Beme app.

How to use jQuery's ajax to load dynamic content

javascript - php

Providing dynamically loaded content instead of loading a whole new page can go a long way in terms of improving the experience your users have on your website.