The HTTP response status codes that start with a 5, show the cases in which servers know they’ve found errors or otherwise can’t manage the request. With the exception of responding to HEAD requests, servers ought to have an entity with an explanation of the error and say whether it’s permanent or temporary. Similarly, user agents ought to show all included entities to users. The response codes apply to all request methods.
The server response codes are as follows:
- The server response code 500, or internal server error, means a generic message is sent if no more particular message can be obtained.
- A 501 code, meaning not implemented, indicates that a server can’t recognize a request method or cannot fulfill the request.
- 502 means a bad gateway; the server acted as a proxy or gateway but got an invalid response from a downstream server.
- 503, meaning service unavailable, indicates the server’s lack of availability due to overload or being down for maintenance, which is often just temporary.
- A 504 error, or a Gateway Timeout, occurs when the server acting as a gateway does not receive a quick response from the downstream serve.
- A 505 error means that the server can’t handle the HTTP version used in the request.
- A 506 error is called Variant Also Negotiates, and means that the negotiation for the server’s request results in circular references.
- A 507 error indicated Insufficient WebDAV Storage.
- The common 509 error (Bandwidth Limit Exceeded) isn’t actually specified in any RFC.
- A 510 error means that the request requires further extensions before it can be properly answered.