1. HTTP (Hypertext Transfer Protocol)

  1. HTTP Status Codes

  1. 500 Server Error
    1. Writing responses (servers)
    2. Reading responses (clients)
    3. Overview table
    4. See also

500 Server Error

The 500 (Server Error) HTTP status code indicates indicates the server cannot process the request at this time.

Writing responses (servers)

Use 500 (Server Error) for errors that arise in the course of server processing, but where there is nothing apparently wrong with the request itself, and retrying the request at a later date might be successful. This status code is generic, consult the IANA HTTP Status Code Registry to determine if a more appropriate status code is available. If the error is correctable by the client, or is otherwise a problem with the request itself, see 400 Bad Request.

Server errors and bad requests are not always easily distinguishable, for example, 404 Not Found and 501 Not Implemented could both be caused either by client or server errors, depending on the circumstance. Since 4xx and 5xx both indicate the request was not filled, it is more important to use a correct, specific status code, than a generic status code from a more accurate class.

Reading responses (clients)

500 errors are generally not fixable without manual intervention by the server administrator; after which, the request may be re-tried. See the Retry-After header for server-indicated retry times.

Overview table

Name
500
Message
500 Server Error
Description
The server does not support the functionality required to fill the request.
Specification
RFC 7231: HTTP/1.1 Semantics and Content ยง6.6.2. 500 Server Error

See also