Building BobSmithPhotography.net has stopped expanding because I've been overwhelmed with spam on the comment forums. So, if you're here and have questions about web design come and visit Forums, Blogs, Wikis dot com. It has articles that I've written, some of which are also here, and a web design forum as well so you can ask any questions you may have. There is still a lot of good stuff here though, so poke around the links and take a look.

Home » Other Tips » HTTP Status Codes

HTTP Status Codes

When a file is requested from your server, the server will send the client a status code.  Depending on what code is sent the browser will either download the file requested, be redirected to another file, or show an error.   Below is a list of the codes that may be sent. 

1xx - Information
Informational codes are just that, informational.  No action needs to be taken, no errors are being reported.

100 - Continue
The request has been received and the client may continue.

101 - Switching protocols
The server has switched protocols.

2xx - Success
Success codes are given when the request was, well, successful. While this would seem to be an either / or type situation, there are other options for success.

200 - OK
The request was successful and the file was sent.  This is probably the most common response code you'll see in your web statistics.

201 - Created
A new resource was successfully created.

202 - Accepted
The request was accepted, but has not been processed.

203 - Non-Authoritative Information
The data returned may be from a non-authoritative source.

204 - No Content
The request was successful, but is not returning any data.

205 - Reset Content
The request was successful, but the browser should reset the document.

206 - Partial Content
The partial GET command was successful.

3xx - Redirection
Redirection codes tell the client that the resource requested is available somewhere else.

300 - Multiple Choice
The resource requested is available from multiple locations.  These locations are listed as part of this response.

301 - Moved Permanently
The file requested has been moved permanently.  Future requests should use the new URI.

302 - Found / Moved Temporarily
The file was found under a different name.  Future requests should continue using the old URI.

303 - See Other
The file requested should be accessed using another URI.

304 - Not Modified
The file has not changed since the last time the client requested it and the client should use its cached version instead.

305 - Use Proxy
The client should request the file through a proxy.

306 - Reserved for future use

307 - Temporary Redirect
Same as 302.

4xx - Client Errors
Client errors typically come from requests with errors.

400 - Bad Request
The request was badly formed or in a format that the server cannot understand.

401 - Not Authorized
The client did not send the proper authorization to view this file.

402 - Payment Required
Not used, but reserved for future use.

403 - Forbidden
The client does not have permission to view this file. 

404 - Not Found
The file requested cannot be found on the server. 

405 - Method Not Allowed
The method (GET, POST, HEAD) used for the request is not allowed.

406 - Not Acceptable
The request was made in such a way that it cannot be fulfilled.

407 - Proxy Authentication Required

408 - Request Timeout

409 - Conflict

410 - Gone
The file requested is no longer available.  This differs from a 404 in that a 410 code says that the file was there but was removed.

411 - Length Required
A valid Content-Length header must be sent.

412 - Precondition Failed

413 - Request Entity Too Large

414 - Request URI Too Long
The URI to request the file was too long for the server to process.

415 - Unsupported Media Type

416 - Requested Range Not Satisfiable

417 - Expectation Failed

5xx - Server Errors
The 500 series codes are returned when the server encounters an error trying to fulfill the request.

500 - Internal Server Error
A generic error message when the server encounters an error trying to fulfill a request.

501 - Not Implemented
The server does not support the necessary functionality to fulfill the request.

502 - Bad Gateway
An invalid response was received by the server from an upstream server.

503 - Service Unavailable
The request failed due to a server either being down or overloaded.

504 - Gateway Timeout

505 - HTTP Version Not Supported

Content managed by the Etomite Content Management System.