We’ve all been there – we’ve visited a website, and instead of finding the website we wanted to visit – we get an error message instead. But what do they actually mean? Some are serious; some are minor. All are inconvenient. It’s important for anyone who owns and runs a website to know what they mean because they can reveal serious problems with your website.
There are actually hundreds of HTTP error codes, but we’re going to summarize the ones you’re most likely to come across as a web user.
400 Bad Request
This error is triggered when you make a request to a server that it does not understand. The common cause is a malformed URL or incorrect address. Usually, this is fixed for the user by giving them the correct URL. If your software running your website is triggering the error, then there is something wrong on the technical side of things.
This error means that you’re trying to access something that you, general web user, should not have access to. Usually, a username/password is required to access the content. It could also be triggered because you have a website you’re building behind a login wall while you’re building, so the public can’t see it. When you launch, don’t forget to turn this off, or all your new visitors will get this error.
This is similar to the 401 error above, but the key difference is that usually, this is blocking access to something that you should never have access to or access has been restricted until a later time. A user/pass will not unlock it for the end-user; they simply cannot access it.
404 Not Found
This is probably the most common HTTP error people encounter – it simply means that the thing you’re trying to access doesn’t exist. It’s just not there. This happens for lots of reasons, but usually, it’s because a page has been deleted or moved and is simply no longer at the address that it once was. It also happens if you have a typo or mistake in the URL – the page exists, you just have the address wrong so get the 404 error instead. You’re most likely to encounter this when you access a website from a search engine that hasn’t updated the results to reflect this. It’s important for a website to have a custom 404-page setup so that if someone comes across a page that’s not there, you can easily have them navigate back to your website, rather than be presented with a blank error page that goes nowhere.
405 Method Not Allowed
This one is not likely to be encountered by most users, but basically, it’s triggered when a user tries to access a resource improperly – like trying to edit a read-only resource or something similar.
406 Not Acceptable
You’re not acceptable! Just kidding. This means that the requested resource is only capable of generating content not acceptable according to the Accept headers sent in the request by the web browser. This usually happens when user agent (i.e. browser) specifies an acceptable character set, language, and so on that should be responded with, and the server is unable to provide such the correct response.
408 Request Timeout
This means that the server timed out while trying to fulfil your request. When requesting something from a server, you’re using its resources. And most servers will have a rather low timeout set so that you don’t hog resources trying to access something. This can cause a problem, though, if there’s a large request that takes too long. You’ve basically run out the clock, and the ‘computer says no’.
429 Too Many Requests
This means that you are making too many requests to a server, and it blocks you to prevent you from hammering the server resources. The most common cause of this is in a Distributed Denial of Service attack (DDOS). But it can easily be triggered by a user making a complicated request in a content management system like WordPress. When you see the error, the server is essentially protecting itself from you bringing it down.
451 Unavailable for Legal Reasons
This is one that may rarely be encountered, but this response code indicates that the user has requested a resource that is not available due to legal reasons, such as a web page for which a legal action has been issued. It was named after Ray Bradbury’s Fahrenheit 451, where books are outlawed and burned. This could be anything from a lawsuit, subpoena, DMCA request, etc. If a certain country, jurisdiction or court demands a website be blocked to users of that area, this is often the error encountered. Another example is when the GDPR came into effect in the EEA a few years ago, many US newspapers and media outlets refused to comply with the new laws and when EEA visitors went to their websites, they encountered an error like this. But it also has a darker use in countries that repress free speech or enforce draconian blasphemy laws.
500 Internal Server Error
This is probably the second most common error a website user will encounter. It’s also not the fault of the user; this means that your website or web services are down because something is broken. As I’m my own webmaster on a Blacknight dedicated server, I’ve encountered this one a lot… If you encounter this as an end-user, there’s nothing you can do other than try and contact the website owner to tell them their website is broken.
502 Bad Gateway
This one is a little harder to explain. But essentially, it’s a network issue between servers not under your control. Your browser is trying to access something, but its path to get there is being broken somehow. It essentially means that one server on the internet received an invalid response from another server. Usually, a refresh/reload fixes the error.
503 Service Unavailable
This means that a server is currently unavailable (because it is overloaded or down for maintenance). Generally, this is a temporary state. For example, it can happen when updating WordPress or a bunch of plugins, and the software needs to essentially restart itself. If you encounter the error as a user, try again later. If you encounter the error as a webmaster, something needs to be kicked or fixed.
504 Gateway Timeout
The means that a server is acting as a gateway or proxy and does not receive a timely response from the upstream server. Basically, your path to getting to a website has been blocked by something, and it timed out. Come back later.
508 Resource Limit Reached
This is one you might encounter as a Blacknight customer. It means you’ve reached your limits on your shared hosting plan. This can happen for lots of reasons – but usually, it’s because of a traffic spike or too many requests being made at once. We go into more detail on this error and how to fix it in this longer blog post here.