Typical HTTP Response Codes

Introduction

HTTP Status are 3 digit responses issued by a web server in response to a request that they receive, and they indicate what has happened to that response. 

There are 4 main types of HTTP response codes:

  • 2xx codes are "Success" codes and indicate that the request from the client was successfully received, understood and processed. These are the most common type of request you will see on the CDN
  • 3xx codes are redirection codes, and these mean that the client has to do a bit more work to obtain the final content they want from the request. More commonly than not, this involves going to another server or making another request to get the content.
  • 4xx codes mean that the client or the server has done something wrong, and their request cannot be fulfilled. More often than not, the client has sent a bad request to the server that it cannot fulfill for whatever reason.
  • 5xx codes mean that the server has had a problem while processing the request, and is unable to process the request that it has been given.

The below tables will go into further detail on each of the response codes that you may encounter.

2XX Response Codes

Code

Description

Explanation

200

OK

This is the usual request you should expect to see. This response code means that your request has been successful, and the content that is requested has been served.

201

Created

This means that the request has successfully been completed and a new resource has been created. The response will also include a reference to where the new resources can be located. This often happens when you upload content through a website.

204

No Content

This is a response where the server is confirming that it has received and processed a request, but does not need to return updated information. However, some of the headers may change. An example of this is when you fill in a web form, and click submit. 

206

Partial Content

This response code is sent when a client has sent a partial GET request. For example, your browser may have requested the first minute of a video file and the server is confirming that it is responding with that minute of video. This is a very good thing to see, and means that your clients are only requesting parts of files that they need. 

In the case of 2XX codes, the most common ones you will see in your CDN logs are 200 and 206, unless we are returning a different response code that we have retrieved from an origin server.

3XX Response Codes

Code

Description

Explanation

301

Moved Permanently

The requested URL has been moved or changed, and any future requests for this content should use the new URL to get to it.

302

Found

The requested URL has been temporarily moved to a new location. This is different from a 301, in that the browser should keep checking this URL, because the path may change again. 

303

See Other

This response is to tell the client that the actual response can be found at another location. The main reason this code was added is to enable a POST activated script to send the user elsewhere based on the POST request.

304

Not Modified

This is a very good request to see in your logs. This means the client has told the server that it has a certain version of a file in cache, and the server is simply replying to tell the client that its cached copy is still valid to use. 

The most common response codes you will see on the CDN are 301, 303 and 304.

4XX Response Codes

Code

Description

Explanation

400

Bad Request

The server could not understand the request that it was sent.

401

Unauthorized

The request requires authentication to access the resource, and the client did not send any credentials, or the credentials that were sent are wrong.

403

Forbidden

The server received and processed the request, but it is unwilling to fulfil it. Authentication will not help, the server has been explicitly told not to serve the file. This may be a permissions issue on the server. This may also be hotlink prevention or token authentication at work blocking a request.

404

Not Found

The server has not found any file to match the request that it was given. 

405

Method Not Allowed

The type of request that the client has sent is not supported by the resource on the server.  For example, you may have used a GET on a form which is expecting a POST request.

410

Gone

The requested file is no longer at the URL, and the server does not know where that file is any more.

429

Too Many Requests

The client has sent too many requests to the server in a given amount of time so the server has blocked the request. The client should slow down, and stop sending as many requests. 

The most common response codes you will see on the CDN are 403, 404 and 410 response codes.

5XX Response Codes

Code

Description

Explanation

500

Internal Server Error

The server encountered an unexplained problem which has prevented it from executing the given request.

502

Bad Gateway

The server was acting as a gateway or proxy to another server and got an invalid response from the upstream server it was trying to proxy.

503

Service Unavailable

The server is currently unable to handle the request it was sent due to maintenance or an overload on its resources. This is a typical condition that may be relieved later on, so the client can try again. 

504

Gateway Timeout

The server was acting as a gateway or proxy for another server and did not retrieve a response quick enough from the upstream server. This may have been from the server itself, or from some other server needed to make the request to the upstream (such as DNS).

Most commonly, you will see a 502 or 504 error on the CDN. This indicates that our Edge Nodes are having issues getting content from your origin. More often than not, the Edge Node will have tripped a firewall or security policy on your server.

Table of Contents

Was this article helpful?
114 out of 151 found this helpful