Putting your Site into Maintenance Mode

There are times when you want to disable access to your site. You could simply add a 'deny from all' to your .htaccess page but this gives the end user a ugly forbidden page and makes your site look broken. A better option is to create a nice looking page that explains to the user that your site is under going maintenance and will be back online shortly. You can do this easily if your web server supports mod_rewrite (most do) using the following instructions.

Requirements

  • Web Server with mod_rewrite support
  • Web Server with .htaccess support

Instructions

  1. Create a page with the desired content, save it as maintenance.html, and upload it to your site.
  2. In the root (public_html/) of your site create (or edit) the .htaccess file and add the following lines. Be sure to change the ip address on the REMOTE_ADDR line to match your ip address. This will allow you to access the site while others are redirected.
    Options +FollowSymlinks
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_URI} !/maintenance.html$
    RewriteCond %{REMOTE_ADDR} !^10.0.0.1$ # Change this to your ip address so that you can bypass the redirect
    RewriteRule .* /maintenance.html [R=307,L]
    

Your site should now redirect users to the maintenance.html page when they visit your site. Remember that if you added your IP address to the filter that the redirect wont happen when you visit the site. If you want to test the redirect you can comment out that line using a #.