Code Reference Reason (message shown to client) Rationale (Why is this here?)
100 RFC 2616 # 10.1.1 Continue HTTP spec
101 RFC 2616 # 10.1.2  Switching Protocols HTTP spec
102 RFC 2518 Processing This code indicates that the server has received and is processing the request, but no response is available yet.
200 RFC 2616 # 10.2.1  OK HTTP spec
201  RFC 2616 # 10.2.2  Created HTTP spec
202  RFC 2616 # 10.2.3  Accepted HTTP spec
203  RFC 2616 # 10.2.4  Non-Authoritative Information HTTP spec
204  RFC 2616 # 10.2.5  No Content HTTP spec
205  RFC 2616 # 10.2.6  Reset Content HTTP spec
206  RFC 2616 # 10.2.7  Partial Content HTTP spec
207 RFC 4918 Multi-Status The message body that follows is an XML message and can contain a number of separate response codes, depending on how many sub-requests were made.
208 RFC 5842 Already Reported The members of a DAV binding have already been enumerated in a previous reply to this request, and are not being included again.
226 RFC 3229 IM Used The server has fulfilled a GET request for the resource, and the response is a representation of the result of one or more instance-manipulations applied to the current instance.
250 RFC 2326 Low on Storage Space The server returns this warning after receiving a RECORD request that it may not be able to fulfill completely due to insufficient storage space.
300  RFC 2616 # 10.3.1  Multiple Choices HTTP spec
301  RFC 2616 # 10.3.2  Moved Permanently HTTP spec
302  RFC 2616 # 10.3.3  Found HTTP spec
303  RFC 2616 # 10.3.4  See Other HTTP spec
304  RFC 2616 # 10.3.5  Not Modified HTTP spec
305  RFC 2616 # 10.3.6  Use Proxy HTTP spec
307  RFC 2616 # 10.3.8  Temporary Redirect HTTP spec
308 proposed  Resume Incomplete http://tools.ietf.org/html/draft-reschke-http-status-308-07
400  RFC 2616 # 10.4.1  Bad Request HTTP spec
401  RFC 2616 # 10.4.2  Unauthorized HTTP spec
402  RFC 2616 # 10.4.3  Payment Required HTTP spec
403  RFC 2616 # 10.4.4  Forbidden HTTP spec
404  RFC 2616 # 10.4.5  Not Found HTTP spec
405  RFC 2616 # 10.4.6  Method Not Allowed HTTP spec
406  RFC 2616 # 10.4.7  Not Acceptable HTTP spec
407  RFC 2616 # 10.4.8  Proxy Authentication Required HTTP spec
408  RFC 2616 # 10.4.9  Request Time-out HTTP spec
409  RFC 2616 # 10.4.10  Conflict HTTP spec
410  RFC 2616 # 10.4.11  Gone HTTP spec
411  RFC 2616 # 10.4.12  Length Required HTTP spec
412  RFC 2616 # 10.4.13  Precondition Failed HTTP spec
413  RFC 2616 # 10.4.14  Request Entity Too Large HTTP spec
414  RFC 2616 # 10.4.15  Request-URI Too Large HTTP spec
415  RFC 2616 # 10.4.16  Unsupported Media Type HTTP spec
416  RFC 2616 # 10.4.17  Requested range not satisfiable HTTP spec
417  RFC 2616 # 10.4.18  Expectation Failed HTTP spec
422 RFC 4918 Unprocessable Entity The request was well-formed but was unable to be followed due to semantic errors.
423 RFC 4918 Locked  The resource that is being accessed is locked.
424 RFC 4918 Failed Dependency The request failed due to failure of a previous request (e.g. a PROPPATCH).
424 RFC 4918 Method Failure Indicates the method was not executed on a particular resource within its scope because some part of the method's execution failed causing the entire method to be aborted. 
425 RFC 3648 Unordered Collection  Defined in  "WebDAV Advanced Collections Protocol".
426 RFC 2817 Upgrade Required The client should switch to a different protocol such as TLS/1.0.
428 RFC 6585 Precondition Required  The origin server requires the request to be conditional. Intended to prevent "the 'lost update' problem, where a client GETs a resource's state, 
429 RFC 6585 Too Many Requests  The user has sent too many requests in a given amount of time. Intended for use with rate limiting schemes.
431 RFC 6585 Request Header Fields Too Large  The server is unwilling to process the request because either an individual header field, or all the header fields collectively, are too large.
444 Nginx No Response Used in Nginx logs to indicate that the server has returned no information to the client and closed the connection (useful as a deterrent for malware).
449 MSFT Retry With A Microsoft extension. The request should be retried after performing the appropriate action.  Often search-engines or custom applications will ignore required parameters. Where no default action is appropriate, the Aviongoo website sends a "HTTP/1.1 449 Retry with valid parameters: param1, param2, . . ." response. The applications may choose to learn, or not.
450 MSFT Blocked by Windows Parental Controls A Microsoft extension. This error is given when Windows Parental Controls are turned on and are blocking access to the given webpage.
451 RFC 2326 Parameter Not Understood  The recipient of the request does not support one or more parameters contained in the request.
451 proposed  Unavailable For Legal Reasons http://tools.ietf.org/html/draft-tbray-http-legally-restricted-status-00
452 RFC 2326 Conference Not Found  The conference indicated by a Conference header field is unknown to the media server.
453 RFC 2326 Not Enough Bandwidth  The request was refused because there was insufficient bandwidth. This may, for example, be the result of a resource reservation failure.
454 RFC 2326 Session Not Found  The RTSP session identifier in the Session header is missing, invalid, or has timed out.
455 RFC 2326 Method Not Valid in This State  The client or server cannot process this request in its current state. The response SHOULD contain an Allow header to make error recovery easier.
456 RFC 2326 Header Field Not Valid for Resource  The server could not act on a required request header. For example, if PLAY contains the Range header field but the stream does not allow seeking.
457 RFC 2326 Invalid Range  The Range value given is out of bounds, e.g., beyond the end of the presentation.
458 RFC 2326 Parameter Is Read-Only  The parameter to be set by SET_PARAMETER can be read but not modified.
459 RFC 2326 Aggregate Operation Not Allowed  The requested method may not be applied on the URL in question since it is an aggregate (presentation) URL. The method may be applied on a stream URL.
460 RFC 2326 Only Aggregate Operation Allowed  The requested method may not be applied on the URL in question since it is not an aggregate (presentation) URL. The method may be applied on the presentation URL.
461 RFC 2326 Unsupported Transport  The Transport field did not contain a supported transport specification.
462 RFC 2326 Destination Unreachable  The data transmission channel could not be established because the client address could not be reached. This error will most likely be the result of a client attempt to place an invalid Destination parameter in the Transport field.
500  RFC 2616 # 10.5.1 Internal Server Error HTTP spec
501  RFC 2616 # 10.5.2 Not Implemented HTTP spec
502  RFC 2616 # 10.5.3 Bad Gateway HTTP spec
503  RFC 2616 # 10.5.4 Service Unavailable HTTP spec
504  RFC 2616 # 10.5.5 Gateway Time-out HTTP spec
505  RFC 2616 # 10.5.6 HTTP Version not supported HTTP spec
506 RFC 2295 Variant Also Negotiates Transparent content negotiation for the request results in a circular reference.
507 RFC 4918 Insufficient Storage The server is unable to store the representation needed to complete the request.
508 RFC 5842 Loop Detected The server detected an infinite loop while processing the request (sent in lieu of 208).
509 Apache Bandwidth Limit Exceeded This status code, while used by many servers, is not specified in any RFCs. Apache-specific.
510 RFC 2774 Not Extended Further extensions to the request are required for the server to fulfill it.
511 RFC 6585 Network Authentication Required The client needs to authenticate to gain network access. Intended for use by intercepting proxies used to control Access to the network (e.g. "captive portals" used to require agreement to Terms of Service before granting full Internet access via a Wi-Fi hotspot
551 RFC 2326 Option not supported An option given in the Require or the Proxy-Require fields was not supported. The Unsupported header should be returned stating the option for which there is no support.
1000 new DNS: Name service failure Indicates a DNS failure for unknown reasons
1001 new DNS: Unknown host This indicates socket receives an unknown host error from DNS
1002 new DNS: Lookup Failure Client was unable to resolve DNS either due to no DNS server being available or no valid response returned.
1100 new TCP: Connection Error This indicates a general connection error
1101 new TCP: Connection refused This indicates a request to connect to the server is refused
1102 new TCP: Connection timeout This indicates there is no activity in socket connection in N seconds.
1103 new TCP: Connection reset This indicates socket receive a reset signal from the server
1104 new TCP: Socket error This indicates a general socket error
1105 new TCP: Socket protocol error This indicates an error in socket protocol
1106 new TCP: Socket unexpected close This indicates socket connection has been closed unexpectedly
1107 new TCP: Socket bind error This indicates an error in binding the socket
1108 new TCP: Socket receive timeout This socket exceeded its timeout to receive data
1109 new TCP: No route to host This indicates a no route to host error was received while attempting to open a socket
1110 new TCP: Unknown Connection This connection cannot be made due to lack of information
1200 new SSL: Connection failure This indicates a SSL failure for unknown reasons
1201 new SSL: Timeout This indicates a timeout during SSL handshake (2 minutes)
1202 new SSL: End of input This indicates an end-of-file is received during SSL handshake
1203 new SSL: Handshake error This indicates a general error during SSL handshake
1204 new SSL: Certificate verification error This indicates an error in SSL certificate verification
1205 new SSL: Authentication error This indicates an authentication error during SSL handshake
1206 new SSL: Bad MAC This indicates a bad MAC during SSL handshake
1207 new SSL: Cipher error This indicates a cipher error during SSL handshake
1208 new SSL: Unsupported SSL Version SSL version mismatch
1209 new SSL: Client certificate Error  This error is used when SSL client certificate error occurred to distinguish it from 4XX in a log and an error page redirection. (Nginx)
1210 new SSL: No SSL certificate This error is used when client didn't provide certificate to distinguish it from 4XX in a log and an error page redirection. (Nginx)
1211 new SSL: HTTP to HTTPS  This error is used for the plain HTTP requests that are sent to HTTPS port to distinguish it from 4XX in a log and an error page redirection. (Nginx)
1300 new HTTP: Invalid URL URL is invalid
1301 new HTTP: Redirect error This indicates an error in redirect HTTP header
1302 new HTTP: Header malformed This indicates a malformed HTTP header
1303 new HTTP: Empty HTTP response This indicates server doesn't send any response after a request is sent
1304 new HTTP: Incomplete Response This indicates sever sends an incomplete page/object (as indicated by Content-Length header)
1305 new HTTP: Frame loop This indicates a page has a frame loop (frame A includes Frame B that includes Frame A)
1306 new HTTP: Redirect loop This indicates a page has a redirect loop (page A redirects to page B that redirects to page A)
1307 new HTTP: Chunked encoding error This indicates an error in chunked encoding
1308 new HTTP: Excessive Number of Redirects Too many redirects
1400 new Client: Client failure unknown The client is unable to complete the request  for unknown reasons
1401 new Client: Byte Limit Exceeded Indicates that the client has received more bytes than some predefined limit
1402 new Client: TimeOut Exceeded Arbitrary session/client timeout
1403 new Client: Client closed request  Used to indicate when the connection has been closed by client while the server is still processing its request, making server unable to send a status code back. (Nginx)
RFC Key
2616 HTTP 1.1
2326 RSTP
4918 WebDAV
3648 WebDAV
5862 WebDAV
2774 HTTP Ext
6585 HTTP Ext
2295 Content Negotiation
2817 TLS+HTTP
2518 WebDAV
3229 HTTP Deltas
5842 WebDAV