HTTP Status Codes

Kesavi Kanesalingam
3 min readMay 30, 2020

HTTP (Hyper Text Transfer Protocol) or response status codes refer to requests to a web server made by search engines or visitors on a website.

All HTTP response status codes are separated into five classes or categories. The first digit of the status code defines the class of response, while the last two digits do not have any classifying or categorization role. There are five classes defined by the standard:

  • 1xx : informational : The request has been received and the process is going on.
  • 2xx : successful : The request was successfully received, understood, and accepted
  • 3xx : redirection : The request has been received but needs a extra step to be completed.
  • 4xx : client error : The request has been asked by a client but the destination page is not correct.
  • 5xx : server error : The request asked by the client was correct but the server failed to deliver it.

Let’s see some common codes one by one.

200 OK

This is probably the most common code, and indicates a successful transfer of the requested file which mean everything is normal.

201 Created

The request has been fulfilled and has resulted in one or more new resources being created.

301 Moved Permanently

This is used to inform the browser that the requested file has been moved and that it should instead request the file from the location provided by the server, and remember that new location for future reference. This can only be used with HTTP GET and HEAD requests.

302 Found

This status code means that the server is responding to a request with a page from a different location while the requester keeps using the original location for future request. In clear, this process is not optimal because it doesn’t tell in the right way search engines that a page has changed location. In fact, using this status code obliges search engines to use the redirect as temporary without giving the link juice of 301 redirects.

304 Not Modified

Indicates that the resource has not been modified since the version specified by the request headers. If-Modified-Since or If-None-Match. In such case, there is no need to retransmit the resource since the client still has a previously-downloaded copy.

401 Unauthorized

The request has not been applied because it lacks valid authentication credentials for the target resource.

403 Forbidden

The server understood the request but refuses to authorize it.

404 Not Found

This status means that the server has not find anything related to the requested URL, which can be permanent or temporary. In most cases, a 404 errors message is displayed by webmasters.

410 Gone

As a permanent condition, the URL requested is not available anymore and no forwarding address is known.

500 Internal Server Error

This is an unfortunately ambiguous generic error code. It is issued whenever the server is deemed to have encountered an error that doesn’t match any more specific error code.

502 Bad Gateway

The server, while acting as a gateway or proxy, received an invalid response from an inbound server it accessed while attempting to fulfill the request.

503 Service Unavailable

The server is currently unable to handle the request due to a temporary overload or scheduled maintenance, which will likely be alleviated after some delay.

--

--