Home » Library » HTTP status code: Introducing error message

HTTP status code: Introducing error message

Most of us have experienced pure disappointment when coming across the dreaded and notorious “404 Not Found” or the mysterious annoyance called “403 Forbidden”. However, despite these error codes’ share of popularity, not many people are familiar with what exactly these codes are.

So today let’s learn about all the bane of web surfers – the HTTP status code

Explaining HTTP response status code

HTTP status code in a nutshell

The HTTP status codes are answers from the server to the client-side request. One of the most popular codes – 404 – is a HTTP status code that refers to the “page not found” error. Besides 404, there are many other HTTP error status codes.

HTTP status codes aren’t part of the website’s content, but are messages from the server informing you of the status of the request to access a specific page. Think of HTTP codes as small notice notes from a server that are being slapped onto a web page.

HTTP status code class and how it works

The way HTTP status code works is the browser sends requests to the web server whenever someone views a web page (as in click on a link or enter in a URL and hit Enter). Before the web page can be shown, the web server must receive the request, process it, and then transmit the HTTP header, which carries the page’s status code, to the client’s browser.

While the codes are returned every time your browser requests a web page or resource, the majority of the time they are not visible to you. For example, the status for a standard web page is “200 O.K.”. When a web page is still operating well, you will not see the 200 status code, since the server will transmit the contents of the requested page to you. It’s generally only whenever things go south that you’ll notice the status code in your browser. That is the way for the server to explain: “Something isn’t quite right. Here’s a code that explains what mistakes occur.”

HTTP status code categories

HTTP status codes come in three digits with five categories. The first digit of the status code determines the response class:

  • 1xx – informational response
  • 2xx – successful
  • 3xx – redirection
  • 4xx – client error
  • 5xx – server error

The reason why they are in a group of three is that they were used as mnemonics, similar to TLA. Plenty of terms in computing are TLA, so is anyone there surprised that the status codes have three digits?

HTTP error messages and their meaning

As stated, HTTP code is a group of three characters with five classes, but what exactly is the meaning behind these numbers?

Explaining HTTP error code

Let’s take 404 as an example. We can break the code down into three separate numbers, similar to how we pronounce it: 4, 0, and another 4.

The first 4 (in the 4xx format) specify that it is a client’s error. Maybe you have made a mistake, a typo for example, when typing the URL, or the web page just simply no longer exists.

The middle 0 indicates a general syntax error. And the last number, which can be anything from 0 to 9, refers to what specific issue is inside the 4xx error category – in the 404 case, what you’re looking for is non-existent. Summing up, we have the 404 code indicating it is an “not found” error from the client side.

List of HTTP error codes (HTTP status code + The meaning of each code)

Error status code Code meaning
3xx URLs that redirect to another URL
300 Multiple Choice The request has multiple responses that the client may choose
301 Moved permanently The requested URL has been changed permanently. The response also contains the new URL
302 Found (previously Moved Temporarily) The page address has been changed temporarily and the client should look at another URL
303 See Other The server will redirect the client using the GET method
304 Found (previously Moved Temporarily The page address has been changed and the new URL is available
305 Use Proxy The requested resource must be reached through a proxy. For security reason, this code is no longer used
4xx Problem has occurred on the client’s end
400 Bad Request The server could not understand the request due to client error (e.g., malformed request syntax, deceptive request routing, etc.)
401 Unauthorized The client is denied access due to not having valid authentication credentials
402 Payment Required Reserved for future use. Originally intent as part of a form of future digital payment methods
403 Forbidden The client is not allowed to view a certain file or the webserver denies access for some reason (e.g. no more visitors)
404 Not Found The requested files are not on the server because these files have been deleted, or never existed before
405 Method Not Allowed Resource requested by the client is not supported by the server
406 Not Acceptable Server understood and processed the request, but the client cannot understand the form of response
407 Proxy Authentication Required The client must authenticate itself with the proxy before the request can proceed
408 Request Time-out The server took too long (usually caused by high network traffic) to process the request
409 Conflict Client’s request could not be processed due to a conflict in the current state of the server
410 Gone Similar to 404, the 410 indicates the resource is not present anymore, so search engines, spiders etc., can purge this resource from their indices.
411 Length Required The content length was not specified so the server refuses to process the request
412 Precondition Failed The server does not meet the preconditions in the request header
413 Payload Too Large The request is larger than the server’s limits
414 URI Too Long The URI provided was too long for the server to process
415 Unsupported Media Type The server does not support the media format of the requested data
5xx Problem has occurred on the server’s end
500 Internal Server Error A generic error message – something is wrong with the webserver or the server can’t determine the exact problem
501 Not Implemented The server cannot handle the request because it does not support the request method
502 Bad Gateway The server, while acting as a gateway, received an invalid response from upstream
503 Service Unavailable A temporary error for when the server cannot handle the request (e.g. server overloaded or down)
504 Gateway Time-out Similar to 408 Request time-out error, but this error occurs at the server port, showing the server is down or not working
505 HTTP Version Not Supported The server does not support the request’s HTTP version

You may have also noticed that there are no 1xx and 2xx codes in our common error code table. This is because both 1xx and 2xx classes mean the request and action requested by the client was received, understood, and accepted – They are the “success” code, not “error” code, which won’t be shown to the client side.

Rise of the code

As the internet blew up, so did the popularity of the error code. One of the HTTP codes that has become so well-known, it’s no longer contained in just the computing industry and has become an element of global pop culture – Yes, we are talking about the 404 error code. The “404 Not found” code has firmly cemented itself into the mainstream, and became the international shorthand for anything that is missing, lost, or can’t be found.

With such a negative meaning, normally people don’t wish to associate with 404, right?

So you can imagine our reaction when we, IPTP Networks, a trusted network company, somehow stumble our way into this 404 predicament.

Back in the day, when we were negotiating the rental of space for our Matrix 4 data centre in Amsterdam, it had the address Kruislaan 411. We were pretty satisfied with this address because the number 411 is known as “directory assistance” in North America. Want to find a phone number? Hit up 411. Address? 411. Want the world-class data centre, built using industry-leading solutions and technologies? Head straight for 411 (Kruislaan Street).

So everything was absolutely fine and dandy until the area decided that it was time for a change.

And with the new change in address, Matrix 4 is currently situated at (you guessed it!) 404 Science Park.

411 to 404.

IPTP Networks Datacenter Matrix 4 at 404 Science Park peering facilities, Amsterdam, the Netherlands

Matrix 4 went from the directory-guide number to the cannot-be-found number.

We like to think that this is proof that life tends to hurl bad signs at you when you excel at something. We are really confident in our service availability and this event is a life way of giving IPTP the thumbs up. Just like the occasional 404 is a little price to pay for an endless supply of cat memes. A bad for a good, you know? Have to keep the universe balanced.

For those that want to investigate our supposedly “not found” data centre: Matrix 4