HTTP status codes are essentially tacked-on messages from the server. They aren’t part of the website’s content. Instead, they’re notifications from the server informing you of the status of the request to see a certain page.
Even if you don’t see them, these types of messages are returned every time your browser communicates with a server. Understanding HTTP status codes is essential whether you’re a website owner or developer. HTTP status codes, when they appear, are a helpful tool for detecting and correcting website configuration problems.
What are HTTP status codes and what do they mean?
Your browser sends a request to the web server for the site you’re attempting to access every time you click on a link or put in a URL and hit Enter. The server receives the request, processes it, and then delivers the requested resources together with an HTTP header back to the client.
In the HTTP header, your browser receives HTTP status codes. Although status codes are issued every time your browser requests a web page or resource, you rarely see them.
It’s typically only when anything goes wrong that you’ll notice one in your browser. “Something isn’t quite right,” the server expresses. Here’s a code that describes what happened.”
Several different programs make it easier to observe status codes that your browser doesn’t typically display you. Developer-friendly platforms like Chrome and Firefox provide browser extensions, and there are several web-based headers collecting tools like Web Sniffer.
Look for the line at the top of the report that reads “Status: HTTP/1.1” to see HTTP status codes with one of these tools. This will be followed by the status code that the server has returned.
HTTP status code classes: An overview
HTTP status codes are classified into five “classes.” These are collections of replies with similar or related meanings. Knowing what they are can help you rapidly establish the broad meaning of a status code before searching it up specifically.
The five classes are as follows:
- 100s: Informational codes indicating that the browser-initiated request is still active.
- 200s: When a browser request is received, interpreted, and processed by the server, a success code is returned.
- 300s: When a new resource has been replaced for the requested resource, a redirection code is returned.
- 400s: Client error codes that indicate a problem with the request.
- 500s: Server error codes indicate that the request was accepted but that a server error prohibited it from being fulfilled.
While crawling your site, search engine bots notice HTTP status codes. In certain circumstances, these signals can have an impact on whether or not your pages are indexed, as well as how search engines view the health of your site.
In general, HTTP status codes at the 100 and 200 levels will not affect your SEO. They indicate that everything on your site is functioning properly and allows search engine bots to continue their journey. They will not, however, improve your ranks.
HTTP Status Codes: A complete guide and list
While there are over 40 distinct server status codes, you’ll probably only see a few dozen regularly. We’ve addressed the most frequent ones, as well as a couple of the more unusual codes you could still see.
100 Status Codes
A status code of 100 indicates that the request you made to the server is still in progress for any reason. This isn’t inherently an issue; it’s just additional information to keep you informed of what’s going on.
- 100: Continue
- 101: Switching protocols
- 103: Early hints
200 Status Codes
This is the most desirable HTTP status code to be sent. A 200-level response indicates that everything is functioning well.
- 200: Everything is OK
- 201: Created
- 202: Accepted
- 203: Non-Authoritative Information
- 204: No Content
- 205: Reset Content
- 206: Partial Content
300 Status Codes
The technique of communicating that a resource has been relocated is known as redirection. Numerous HTTP status codes accompany redirections to advise users about where to get the content they’re looking for.
- 300: Multiple Choices
- 301: The desired resource has been permanently relocated.
- 302: The requested resource has moved, but it has been located.
400 Status Codes
HTTP status codes become troublesome at the 400 level. These are error codes that indicate a problem with your browser and/or request.
- 400: Bad Request
- 401: Authorization Required
- 403: It is forbidden to use that resource. When a user tries to access something they don’t have authorization to see, this code is returned. Attempting to access password-protected information without logging in, for example, may result in a 403 error.
- 404: The requested resource could not be located.
- 425: Too early
- 426: Upgrade Required
- 428: Precondition Required
- 429: Too many requests
500 Status Codes
Errors are also regarded as 500-level status codes. They do, however, indicate that the issue is with the server. As a result, they may be more difficult to address.
- 500: he server encountered an issue, and the request could not be completed.
- 501: Not implemented
- 502: Bad gateway
- 505: The HTTP version is not supported
- 521: Web server is down
Where can I find more information about HTTP status codes?
There are a few more odd HTTP status codes to learn about in addition to the ones we’ve covered in this list. There are numerous sites available to learn more about these uncommon codes, including:
- Wikipedia has a complete list of HTTP status codes
- Definitions of status codes from the Internet Engineering Task Force (IETF)
- RFC 7231
Knowing these status codes may assist you in resolving certain specific difficulties when managing your own website, or even while encountering them on other websites.
While HTTP status codes may appear to be puzzling or scary at first glance, they are really quite useful. You can fix problems on your site more quickly if you learn some of the most prevalent ones.
From the simpler 100- and 200-level codes to the more complicated 400- and 500-level errors, making sense of these indicators is critical for managing your website and ensuring its accessibility to users.