Table B-2 is a quick reference for all the status codes defined in the HTTP/1.1 specification, providing a brief summary of each. Section 3.4 goes into more detailed descriptions of these status codes and their uses.

Table B-2. Status codes

Status code Reason phrase Meaning
100 Continue An initial part of the request was received, and the client should continue.
101 Switching Protocols The server is changing protocols, as specified by the client, to one listed in the Upgrade header.
200 OK The request is okay.
201 Created The resource was created (for requests that create server objects).
202 Accepted The request was accepted, but the server has not yet performed any action with it.
203 Non-Authoritative Information The transaction was okay, except the information contained in the entity headers was not from the origin server, but from a copy of the resource.
204 No Content The response message contains headers and a status line, but no entity body.
205 Reset Content Another code primarily for browsers; basically means that the browser should clear any HTML form elements on the current page.
206 Partial Content A partial request was successful.
300 Multiple Choices A client has requested a URL that actually refers to multiple resources. This code is returned along with a list of options; the user can then select which one he wants.
301 Moved Permanently The requested URL has been moved. The response should contain a Location URL indicating where the resource now resides.
302 Found Like the 301 status code, but the move is temporary. The client should use the URL given in the Location header to locate the resource temporarily.
303 See Other Tells the client that the resource should be fetched using a different URL. This new URL is in the Location header of the response message.
304 Not Modified Clients can make their requests conditional by the request headers they include. This code indicates that the resource has not changed.
305 Use Proxy The resource must be accessed through a proxy, the location of the proxy is given in the Location header.
306 (Unused) This status code currently is not used.
307 Temporary Redirect Like the 301 status code; however, the client should use the URL given in the Location header to locate the resource temporarily.
400 Bad Request Tells the client that it sent a malformed request.
401 Unauthorized Returned along with appropriate headers that ask the client to authenticate itself before it can gain access to the resource.
402 Payment Required Currently this status code is not used, but it has been set aside for future use.
403 Forbidden The request was refused by the server.
404 Not Found The server cannot find the requested URL.
405 Method Not Allowed A request was made with a method that is not supported for the requested URL. The Allow header should be included in the response to tell the client what methods are allowed on the requested resource.
406 Not Acceptable Clients can specify parameters about what types of entities they are willing to accept. This code is used when the server has no resource matching the URL that is acceptable for the client.
407 Proxy Authentication Required Like the 401 status code, but used for proxy servers that require authentication for a resource.
408 Request Timeout If a client takes too long to complete its request, a server can send back this status code and close down the connection.
409 Conflict The request is causing some conflict on a resource.
410 Gone Like the 404 status code, except that the server once held the resource.
411 Length Required Servers use this code when they require a Content-Length header in the request message. The server will not accept requests for the resource without the Content-Length header.
412 Precondition Failed If a client makes a conditional request and one of the conditions fails, this response code is returned.
413 Request Entity Too Large The client sent an entity body that is larger than the server can or wants to process.
414 Request URI Too Long The client sent a request with a request URL that is larger than what the server can or wants to process.
415 Unsupported Media Type The client sent an entity of a content type that the server does not understand or support.
416 Requested Range Not Satisfiable The request message requested a range of a given resource, and that range either was invalid or could not be met.
417 Expectation Failed The request contained an expectation in the Expect request header that could not be satisfied by the server.
500 Internal Server Error The server encountered an error that prevented it from servicing the request.
501 Not Implemented The client made a request that is beyond the server's capabilities.
502 Bad Gateway A server acting as a proxy or gateway encountered a bogus response from the next link in the request response chain.
503 Service Unavailable The server cannot currently service the request but will be able to in the future.
504 Gateway Timeout Similar to the 408 status code, except that the response is coming from a gateway or proxy that has timed out waiting for a response to its request from another server.
505 HTTP Version Not Supported The server received a request in a version of the protocol that it can't or won't support.

 


Hypertext Transfer Protocol (HTTP)