HTTP Status Codes
Whenever your website is accessed by a user through his or her web browser, the web server will send a Hypertext Transfer Protocol (HTTP) Status Code to the end-user's browser, that instructs it on what to do next. If all is well with your website, the returned code will indicate the webpage was reached successfully. However, on occasion, other codes may be returned. While most of these are very rare, you should expect to see a few other codes returned by your website. For example, if someone mistypes the URL for one of your webpages, or if a page has been taken down, a 404 Error - 'Not Found' may occur.
AlphaDrive provides its web hosting customers with access to multiple logging and analytics programs, including AWStats, Webalizer, and Logaholic. These programs track and list any error codes that occur when people are viewing your website. It's a good idea to check your logging software for errors once in a while to make sure there are no problems with your site.
HTTP Status Codes are broken into five classes, listed below. If your website does deliver error codes, they will typically be found in the 4xx class.
Informational status codes are provisional responses from the web server... they give the client a heads-up on what the server is doing. Informational codes do not indicate an error condition.
- 100 - Continue
The continue status code tells the browser to continue sending a request to the server.
- 101 - Switching Protocols
The server sends this response when the client asks to switch from HTTP/1.0 to HTTP/1.1
This class of status code indicates that the client's request was received, understood, and successful.
- 200 - Successful
Standard response for successful HTTP requests. The actual response will depend on the request method used. In a GET request, the response will contain an entity corresponding to the requested resource. In a POST request the response will contain an entity describing or containing the result of the action.
- 201 - Created
The request has been fulfilled and resulted in a new resource being created.
- 202 - Accepted
The request has been accepted for processing, but the processing has not been completed. The request might or might not eventually be acted upon, as it might be disallowed when processing actually takes place.
- 203 - Non-Authorative Information
The server successfully processed the request, but is returning information that may be from another source.
- 204 - No Content
The server successfully processed the request, but is not returning any content.
- 205 - Reset Content
The server successfully processed the request, but is not returning any content. Unlike a 204 response, this response requires that the requester reset the document view.
- 206 - Partial Content
The partial content success code is issued when the server fulfills a partial GET request. This happens when the client is downloading a multi-part document or part of a larger file.
This code tells the client that the browser should be redirected to another URL in order to complete the request. This is not an error condition.
- 300 - Multiple Choices
Indicates multiple options for the resource that the client may follow. For example, it could be used to present different format options for video, list files with different extensions, or word sense disambiguation.
- 301 - Moved Permanently
This and all future requests should be directed to the given URI (uniform resource identifier).
- 302 - Moved Temporarily/Found
This code can instruct the browser to perform a temporary redirect, though sometimes this code is use just like 303.
- 303 - See Other
The response to the request can be found under another URI using a GET method. When received in response to a POST (or PUT/DELETE), it should be assumed that the server has received the data and the redirect should be issued with a separate GET message.
- 304 - Not Modified
Indicates the resource has not been modified since last requested. Typically, the HTTP client provides a header like the If-Modified-Since header to provide a time against which to compare. Using this saves bandwidth and reprocessing on both the server and client, as only the header data must be sent and received and not the full web page or other resource.
- 305 - Use Proxy
Many HTTP clients (such as Mozilla and Internet Explorer) do not correctly handle responses with this status code, primarily for security reasons.
- 307 - Temporary Redirect
The request should be repeated with another URI; however, future requests can still use the original URI. In contrast to 302, the request method should not be changed when reissuing the original request. For instance, a POST request must be repeated using another POST request.
This status code indicates that the client has sent bad data or a malformed request to the server. Client errors are generally issued by the webserver when a client tries to gain access to a protected area using a bad username and password.
- 400 - Bad Request
The request cannot be fulfilled due to bad syntax.
- 401 - Unauthorized
Similar to 403 Forbidden, but specifically for use when authentication is possible but has failed or not yet been provided. The response must include a WWW-Authenticate header field containing a challenge applicable to the requested resource.
- 402 - Payment Required
This code is not currently in use.
- 403 - Forbidden
The request was a legal request, but the server is refusing to respond to it. Unlike a 401 Unauthorized response, authenticating will make no difference.
- 404 - Not Found
The requested resource could not be found but may be available again in the future. Subsequent requests by the client are permissible.
- 405 - Method Not Allowed
A request was made of a resource using a request method not supported by that resource; for example, using GET on a form which requires data to be presented via POST, or using PUT on a read-only resource.
- 406 - Not Acceptable
The requested resource is only capable of generating content not acceptable according to the Accept headers sent in the request.
- 407 - Proxy Authentication Required
The client must first authenticate itself with the proxy.
- 408 - Request Timeout
The server timed out waiting for the request.
- 409 - Conflict
Indicates that the request could not be processed because of a conflict in the request, such as an edit conflict.
- 410 - Gone
Indicates that the resource requested is no longer available and will not be available again. This should be used when a resource has been intentionally removed and the resource should be purged. Clients such as search engines should remove the resource from their indices. A "404 Not Found" error is commonly used instead.
- 411 - Length Required
The request did not specify the length of its content, which is required by the requested resource.
- 412 - Precondition Failed
The server does not meet one of the preconditions that the requester put on the request.
- 413 - Request Entity Too Long
The request is larger than the server is willing or able to process.
- 414 - Request-URI Too Long
The URI provided was too long for the server to process.
- 415 - Unsupported Media Type
The request entity has a media type which the server or resource does not support. For example, the client uploads an image as image/svg+xml, but the server requires that images use a different format.
This status code indicates that the client's request couldn't be succesfully processed due to some internal error in the web server. These error codes may indicate something is seriously wrong with the web server.
- 500 - Internal Server Error
An internal server error has caused the server to abort your request. This is an error condition that may also indicate a misconfiguration with the web server. However, the most common reason for 500 server errors is when you try to execute a script that has syntax errors.
- 501 - Not Implemented
This code is generated by a webserver when the client requests a service that is not implemented on the server. Typically, not implemented codes are returned when a client attempts to POST data to a non-CGI (ie, the form action tag refers to a non-executable file).
- 502 - Bad Gateway
The server, when acting as a proxy, issues this response when it receives a bad response from an upstream or support server.
- 503 - Service Unavailable
The web server is too busy processing current requests to listen to a new client.
- 504 - Gateway Timeout
Gateway timeouts are normally issued by proxy servers when an upstream or support server doesn't respond to a request in a timely fashion.
- 505 - HTTP Version Not Supported
The server issues this status code when a client tries to talk using an HTTP protocol that the server doesn't support or is configured to ignore.