Generally: The server failed to fulfill an apparently valid request. Response status codes beginning with the digit “5” indicate cases in which the server is aware that it has encountered an error or is otherwise incapable of performing the request. Except when responding to a HEAD request, the server should include an entity containing an explanation of the error situation, and indicate whether it is a temporary or permanent condition. Likewise, user agents should display any included entity to the user. These response codes are applicable to any request method.


500 Internal Server Error
A generic error message, given when an unexpected condition was encountered and no more specific message is suitable.


501 Not Implemented
The server either does not recognize the request method, or it lacks the ability to fulfil the request. Usually this implies future availability (e.g., a new feature of a web-service API).


502 Bad Gateway
The server was acting as a gateway or proxy and received an invalid response from the upstream server.


503 Service Unavailable
The server is currently unavailable (because it is overloaded or down for maintenance). Generally, this is a temporary state.


504 Gateway Timeout
The server was acting as a gateway or proxy and did not receive a timely response from the upstream server.


505 HTTP Version Not Supported
The server does not support the HTTP protocol version used in the request.


506 Variant Also Negotiates (RFC 2295)
Transparent content negotiation for the request results in a circular reference.


507 Insufficient Storage (WebDAV; RFC 4918)
The server is unable to store the representation needed to complete the request.


508 Loop Detected (WebDAV; RFC 5842)
The server detected an infinite loop while processing the request (sent in lieu of 208 Already Reported).


509 Bandwidth Limit Exceeded (Apache bw/limited extension)
This status code is not specified in any RFCs. Its use is unknown.


510 Not Extended (RFC 2774)
Further extensions to the request are required for the server to fulfil it.


511 Network Authentication Required (RFC 6585)
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).


520 Origin Error (CloudFlare)
This status code is not specified in any RFCs, but is used by CloudFlare‘s reverse proxies to signal an “unknown connection issue between CloudFlare and the origin web server” to a client in front of the proxy.


521 Web server is down (CloudFlare)
This status code is not specified in any RFCs, but is used by CloudFlare’s reverse proxies to indicate that the origin webserver refused the connection.


522 Connection timed out (CloudFlare)
This status code is not specified in any RFCs, but is used by CloudFlare’s reverse proxies to signal that a server connection timed out.


523 Proxy Declined Request (CloudFlare)
This status code is not specified in any RFCs, but is used by CloudFlare’s reverse proxies to signal a resource that has been blocked by the administrator of the website or proxy itself.


524 A timeout occurred (CloudFlare)
This status code is not specified in any RFCs, but is used by CloudFlare’s reverse proxies to signal a network read timeout behind the proxy to a client in front of the proxy.


598 Network read timeout error (Unknown)
This status code is not specified in any RFCs, but is used by Microsoft HTTP proxies to signal a network read timeout behind the proxy to a client in front of the proxy.


599 Network connect timeout error (Unknown)
This status code is not specified in any RFCs, but is used by Microsoft HTTP proxies to signal a network connect timeout behind the proxy to a client in front of the proxy.