Setting up Custom HTTP Error Pages

You can set up custom error pages so that you can specify what someone sees when they go to a page that does not exist. This can help visitors to your site find their way around.

For a taste of what a custom error page can be like, see this example of a custom error page, which Elizabeth Buie has set up for Æsthetic Images Photography.

This FAQ assumes that you have at least a basic knowledge of HTML.

You set it up within a special file named .htaccess (yes, the name really starts with a dot)

You can create the .htaccess file right in your shell or FTP it up to your site.

If your directory already has an .htaccess file, use that one and modify it.
Your FTP software may need some adjustments to see the .htaccess file.

You can create/edit this file 2 ways.

If you have shell access to your account, log in via SSH, then use a local editor, such as vi or pico to edit the file

If you access your files via FTP, use your favorite client to download the existing .htaccess file, and upload it back.

To create/edit the .htaccess file locally, use a simple text editor (notepad on PC of Text Edit on Mac), and make sure to save the file in text format.

Always upload the file back to the server via FTP in text (ASCII mode, not binary)

Once the file is uploaded, make sure the permissions are set correctly on your .htaccess file. In UNIX speak, you need to chmod the .htaccess file to 644. (rw-r--r--)

From the shell, type: chmod 644 .htaccess

You can also use your FTP client to change the file permissions if you don't have shell access.

Customizing Server Error Messages

HTTP error codes

Web server error messages have standard associated numbers ("HTTP response codes"), for example the familiar #404 message meaning "File not found" or the classic #403: Forbidden

Your .htaccess file

1. Within your document root directory, /usr/home/your-username/docs, there might already be a (normally hidden) file called ".htaccess" - if you do not already have an .htaccess file then you may create one.

2. To create customized error messages, first make web pages that are suitable for this purpose.

3. Then simply add the following lines to the .htaccess in your document directory, replacing the URL "/errors/400.html" with the URL of your own custom error messages:
ErrorDocument 403 /errors/403.html
ErrorDocument 404 /errors/404.html
ErrorDocument 500 /errors/500.html

a. For example, something like the following: ErrorDocument 400 /~your-username/400.html

b. Or you could use a full URL (NOTE! This is best!): ErrorDocument 400

c. And you can also just write in the text or HTML to display. ErrorDocument 400 This is a 400 error.

The ErrorDocument directive is briefly documented at the Apache Project site:

Properties ID: 000164   Views: 4776   Updated: 13 years ago
Filed under: