Error Pages

Occasionally, a user may do something that confuses Drupal, such as typing a wrong page name or trying to access content they shouldn't. These will generate 404 and 403 errors, respectively.

A recent SEO newsletter, they mentioned the value of letting Drupal handle these errors:

Your unique 404 error page should look like a regular page of your site. It should include your site's header, footer and navigation bar so that the site visitor can easily click on another area of your site. The content of this unique 404 error page should contain text explaining that the page selected is no longer available along with contact information so the site visitor has the option of emailing or calling your company.

This was one of those "Duh" moments for me. How obvious it is that you should make it easy for the user to get "back into" your site.

The same more or less goes for the "access denied" (403) error message. Let them know they did a no-no and try to explain why.

You set these in Administer>>Site Configuration>>Error Handling. Create the pages first.

Page Not Found

Here's the HTML for my 404 page:

<P>Sorry! The page you were looking for no longer exists. We redesigned our site and many of the pages have changed.</P>
<P>&nbsp;</P>
<P>If you are unable to find something on our new site or have a question about our site or services feel free to <A HREF="contact">contact us</A>.</P>
<P>&nbsp;</P>
<P>--Webmistress</P>

Access Denied

Here's the HTML for my 403 page:

<P>We're sorry, but you must have permission to view the page you requested.</P>
<P>&nbsp;</P>
<P>If you are already a registered member of this site, please try logging in.</P>
<P>&nbsp;</P>
<P>If you are not a member, you need to <A HREF="join_us">join us</A>.</P>
<P>&nbsp;</P>
<P>If you have any questions about our site or group, please feel free to <A HREF="contact">contact us</A>.</P>
<P>&nbsp;</P>
<P>--Webmistress</P>

Don't worry that you haven't created the "join_us" page yet. This is an advantage to having URL Alias support (the Path module) enabled.