HTTP Status/Error Codes provide valuable metrics about the ‘health’ of an application and its use. Online Producers, Developers and Designers should be mindful about the most common Error Codes, and what kind of information and tools should be displayed for users when these errors are inevitably encountered.
Since the status code sent in the actual HTTP Headers is significant, they should not be combined or hidden behind application logic – that is, the pages that are displayed should actually be sending the correct Status Codes so that they can be properly logged by the server and your other web analytics tools. Keep in mind that these are different from application logic errors (i.e. throwing Exceptions) and should be handled on a case by case basis.
Below are the most common error codes, and the way to treat them when designing for the User Experience of your site.
404 – Not Found
Should provide users the information that the page they were looking for is not at this address, and provide them with the tools in which to try to locate it on their own (search and/or site map browsing)
401 – Unauthorized
403 – Forbidden
Used when a page that normally requires a login was tried to be accessed directly. Ideally will send user to a login form (that in turn redirects them to the page they originally requested). If not, a message asking them to login and getting them to that page should be provided.
500 – Internal Server Error
502 – Bad Gateway
503 – Service Unavailable
These errors usually indicate that something went wrong – very wrong. These errors should be logged and the Developers notified some how. These need their own page so that these errors can be tracked down and fixed. Users should be told in very friendly terms (Opps! Something’s broken) that something went wrong, that we have been notified, and that they can try their request at another time.
You’re a blogger!
Way to go!
Awesome summary. I linked to you from littleblackhat.com
Thanks. I was hoping to capture this in a way that gave gentle guidance. I could write at length on each one, but I don’t have time.
In fact, I recommend this book if you are interested in learning more.