Client and Server Error Codes and Descriptions

The tables below provide the error code numbers (also called return codes or status codes), names, and descriptions for client errors (range 400-426) and server errors (range 500-510).

See section 10 of the HTTP/1.1 specification (RFC2616) for full details on all return codes, including those in ranges not listed below, or see the link included in an individual return code.

Client Errors
Error Code Name Description
400 Bad Request Usually occurs due to a space in the URL or other malformed URL syntax. Check if the URL is properly URL-encoded.
401 Unauthorized The visitor did not present the correct username and/or password to access the file. This error is often returned for an initial request, at which point the browser will prompt the user for a name and password. These values are provided along with a second request for the file, which will succeed if the user entered the correct information. Therefore, the existence of any given 401 error is not necessarily a problem; you may only care about repeated or unexpected errors.
402 Payment Required This code is reserved for future use.
403 Forbidden The server understood the request and has denied access to the file due to the user authentication values provided. This error is different than error 401. Error 401 says that authentication is required but no values were provided. Error 403 says that the values provided were incorrect.
404 Not Found The file was not found on the server. This is a very common return code.
405 Method Not Allowed The HTTP method used in making the request is not allowed for the given file. For example, a script could be written to allow accept data via the POST method, not the GET method.
406 Not Acceptable The server cannot generate a response that satisfies the Accept values provided in the request header.
407 Proxy Authentication Required This code is similar to 401 (Unauthorized), but indicates that the client must first authenticate itself with the proxy.
408 Request Timeout The client did not produce a request within the time that the server was prepared to wait (for example, between the time the socket was opened and when the client sent the request). If your web site generates a lot of 408 errors, take a look at the workload on your server.
409 Conflict The request could not be completed due to a conflict with the current state of the resource.
410 Gone The file no longer exists. This is considered a more "permanent" version of error code 404.
411 Length Required The server requires a content-length header in the request but it was not provided.
412 Precondition Failed The precondition given in one or more of the request header fields evaluated to "False" when it was tested on the server. This return code allows the client to place preconditions on the current resource metainformation (header field data) and thus prevent the requested method from being applied to a resource other than the one intended.
413 Request Entity Too Large The server is refusing to process a request because the request entity is larger than the server is willing or able to process. For example, this can happen if a visitor tries to upload a file that is larger than your server is configured to accept.
414 Request-URI Too Long The URL requested is too long for the server to handle. This might happen if a GET request includes too many query string parameters, or if the values sent are too long. It can also be a sign that someone is attacking your web site by requested a too-long URL in the hope of exploiting a buffer overrun.
415 Unsupported Media Type The server is refusing to service the request because the actual media type of the resource does not match the type specified in the request, or is incompatible with the HTTP method being used (such as a file upload via PUT).
416 Requested Range Not Satisfiable A browser (or other user agent) has requested a range (bytes, usually) which cannot be satisfied.
417 Expectation Failed The expectation given in an Expect request header field could not be met by your server.
422 Unprocessable Entity The request is well-formed but the server cannot process it. This is a WebDAV return code; see RFC 2518.
423 Locked The source or destination resource is locked. This is a WebDAV return code; see RFC 2518.
424 Failed Dependency The method depended on another action, and that action failed. This is a WebDAV return code; see RFC 2518.
426 Upgrade Required The server is advertising the protocols that it supports for upgrading HTTP connections. This return code is defined in RFC 2817.

Server Errors
Error Code Name Description
500 Internal Server Error An unexpected server error occurred. This error is most often caused by an error in a script.
501 Not Implemented The server does not support the functionality required to fulfill the request. This code is also returned when the server does not recognize the request method and is not capable of supporting it for any resource. For example, your server may return this code if a client sends WebDAV methods. Your web server may also return this code when a client uses the CONNECT method, which is used for building tunnels across proxies. If your web site generates a lot of these errors, you can configure FlashStats to ignore methods other than HEAD, GET, and POST. To do so, open the FlashStats Web Site menu and choose the Properties command. Click on the Advanced tab, then select the Ignore requests with extended methods check box.
502 Bad Gateway The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting to fulfill the request.
503 Service Unavailable The server is currently unable to handle the request due to a temporary overloading, or due to maintenance of the server.
504 Gateway Timeout The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server, or from some other auxiliary server (e.g. DNS) it needed in order to complete the request.
505 HTTP Version Not Supported The server does not support the HTTP protocol version used in the request.
507 Insufficient Storage The request could not be completed because the server has insufficient storage. This is a WebDAV return code; see RFC 2518.
510 Not Extended The server does not support the HTTP extensions requested. This return code is defined in RFC 2774.