HTTP status codes are issued by a server in response to a client's request made to the server. They are typically a 3-digit number that tells you how the request was handled when the server received your request. HTTP status codes are not part of the website content.
These codes are returned every time your browser interacts with a server, even though you can't see them. If you own a website or you work as a developer, knowing these codes is an important tool in your debugging toolbox.
HTTP status codes is the primary communication between Domano and your domain, website or server. Knowing these codes can help you quickly identify alerts from Domano.
The first digit of the status code specifies one of five standard classes of responses. The message phrases shown are typical, but any human-readable alternative may be provided. Knowing the groups gives you an advantage in debugging potential problems before digging into the specific code.
The 5 groups are:
In some cases you will notice unofficial status codes. These codes are made specifically for Domano. Below you'll find a list of our own status codes and an explanation.
This status code will be returned if your domain did not respond. Read our documentation for information about what exactly happens when this scenario occurs.
A 100-level status code tells you that the request you've made to the server is still in progress for some reason. This isn't necessarily a problem, it's just extra information to let you know what's going on.
This means that the server in question has received your browser's request headers, and is now ready for the request body to be sent as well. This makes the request process more efficient since it prevents the browser from sending a body request even though the headers have been rejected.
Your browser has asked the server to change protocols, and the server has complied.
This returns some response headers before the rest of the server's response is ready.
This is the best kind of HTTP status code to receive. A 200-level response means that everything is working exactly as it should.
Everything is OK
This is the code that is delivered when a web page or resource acts exactly the way it's expected to.
The server has fulfilled the browser's request, and as a result, has created a new resource.
The server has accepted your browser's request but is still processing it. The request ultimately may or may not result in a completed response.
This status code may appear when a proxy is in use. It means that the proxy server received a 200 "Everything is OK" status code from the origin server, but has modified the response before passing it on to your browser.
This code means that the server has successfully processed the request, but is not going to return any content.
Like a 204 code, this means that how server has processed the request but is not going to return any content. However, it also requires that your browser resets the document view.
You may see this status code if your HTTP client (also known as your browser) uses "range headers". This enables your browser to resume paused downloads, as well as to split a download into multiple streams. A 206 code is sent when a range header causes the server to send only part of the requested resource.
Redirection is the process used to communicate that a resource has been moved to a new location. There are several HTTP status codes that accompany redirections, in order to provide visitors with information about where to find the content they're looking for.
Sometimes, there may be multiple possible resources the server can respond with to fulfill your browser's request. A 300 status code means that your browser now needs to choose between them. This may occur when there are multiple file type extensions available, or if the server is experiencing word sense disambiguation.
The requested resource has been moved permanently
This code is delivered when a web page or resource has been permanently replaced with a different resource. It is used for permanent URL redirection.
The requested resource has moved, but was found
This code is used to indicate that the requested resource was found, just not at the location where it was expected. It is used for temporary URL redirection.
Understanding a 303 status code requires that you know the difference between the four primary HTTP request methods. Essentially, a 303 code tells your browser that it found the resource your browser requested via POST, PUT, or DELETE. However, to retrieve it using GET, you need to make the appropriate request to a different URL than the one you previously used.
The requested resource has not been modified since the last time you accessed it
This code tells the browser that the resources stored in the browser cache haven't changed. It's used to speed up web page delivery by reusing previously-downloaded resources.
This status code has replaced 302 "Found" as the appropriate action when a resource has been temporarily moved to a different URL. Unlike the 302 status code, it does not allow the HTTP method to change.
The 308 status code is the successor to the 301 "Moved Permanently" code. It does not allow the HTTP method to change and indicates that the requested resource is now permanently located at a new URL.
At the 400 level, HTTP status codes start to become problematic. These are error codes specifying that there's a fault with your browser and/or request.
The server can't return a response due to an error on the client's end.
This is returned by the server when the target resource lacks valid authentication credentials.
Originally, this code was created for use as part of a digital cash system. However, that plan never followed through. Instead, it's used by a variety of platforms to indicate that a request cannot be fulfilled, usually due to a lack of required funds.
Access to that resource is forbidden
This code is returned when a user attempts to access something that they don't have permission to view. For example, trying to reach password-protected content without logging in might produce a 403 error.
The requested resource was not found
This is the most common error message of them all. This code means that the requested resource does not exist, and the server does not know if it ever existed.
Method not allowed
This is generated when the hosting server (origin server) supports the method received, but the target resource doesn't.
Not acceptable response
The requested resource is capable of generating only content that is not acceptable according to the accept headers sent in the request.
Proxy Authentication Required
A proxy server is in use and requires your browser to authenticate itself before continuing.
The server timed out waiting for the rest of the request from the browser
This code is generated when a server times out while waiting for the complete request from the browser. In other words, the server didn't get the full request that was sent by the browser. One possible cause could be net congestion resulting in the loss of data packets between the browser and the server.
A 409 status code means that the server couldn't process your browser's request because there's a conflict with the relevant resource. This sometimes occurs due to multiple simultaneous edits.
The requested resource is gone and won't be coming back
This is similar to a 404 "Not Found" code, except a 410 indicates that the condition is expected and permanent.
This means that the requested resource requires that the client specify a certain length and that it did not.
Your browser included certain conditions in its request headers, and the server did not meet those specifications.
Payload Too Large
Your request is larger than the server is willing or able to process.
URI Too Long
This is usually the result of a GET request that has been encoded as a query string that is too large for the server to process.
Unsupported Media Type
The request includes a media type that the server or resource doesn't support.
The server is unable to meet the requirements specified in the request's expect header field.
I'm a teapot
This code is returned by teapots that receive requests to brew coffee. It's also an April Fool's Joke from 1998.
The client request contains semantic errors, and the server can't process it.
This code is sent when the server is unwilling to process a request because it may be replayed.
Due to the contents of the request's upgrade header field, the client should switch to a different protocol.
The server requires conditions to be specified before processing the request.
Too many requests
This is generated by the server when the user has sent too many requests in a given amount of time (rate-limiting). This can sometimes occur due to bots or scripts attempting to access your site.
Request Header Fields Too Large
The server can't process the request because the header fields are too large. This may indicate a problem with a single header field, or all of them collectively.
Unavailable for Legal Reasons
The operator of the server has received a demand to prohibit access to the resource you've requested (or a set of resources including the one you've requested).
500-level status codes are also considered errors. However, they denote that the problem is on the server's end.
There was an error on the server and the request could not be completed
This is generic code that simply means "internal server error". Something went wrong on the server and the requested resource was not delivered.
This error indicates that the server does not support the functionality required to fulfill the request. This is almost always a problem on the web server itself, and usually must be resolved by the host.
This error code typically means that one server has received an invalid response from another, such as when a proxy server is in use. Other times a query or request will take too long, and so it is canceled or killed by the server and the connection to the database breaks.
The server is unavailable to handle this request right now
The request cannot be completed at this point in time. This code may be returned by an overloaded server that is unable to handle additional requests.
The server, acting as a gateway, timed out waiting for another server to respond
This is the code returned when there are two servers involved in processing a request, and the first server times out waiting for the second server to respond.
HTTP Version Not Supported
The server doesn't support the HTTP version the client used to make the request.
Network Authentication Required
This status code is sent when the network you're trying to use requires some form of authentication before sending your request to the server. For instance, you may need to agree to the Terms and Conditions of a public Wi-Fi hotspot.