Last Updated on 25th February 2024

HTTPS is HTTP with secure encryption. The difference between the two protocols (HTTP and HTTPS) is HTTPS uses TLS (Transport Layer Security) (SSL (secure socket layer)) to encrypt normal HTTP requests and subsequently HTTP responses. As a result, HTTPS is more secure than HTTP. A website that uses HTTP has HTTP:// in its URL, while a website that uses HTTPS has HTTPS.

HTTPS response status codes indicate whether a specific HTTPS request has been successfully completed.  HTTPS server response status codes are simply put, a quick reply the server returns when a web page is requested from the server by a web browser or a web crawler.  The reply is a number.  The number gives an indication of the current status of the webpage.  HTTPS response codes are not visible in the content on the webpage as such, but are sent as a number from the server to indicate what status the webpage is in, therefore providing the browser (or a web crawler), with a good indication of what should happen next.

The numbers sent back in the server response code, and their meanings are as follows:

Complete list of HTTP Status Codes

These status codes are part of the Hypertext Transfer Protocol (HTTP) standard and are returned by the server to indicate the status of the requested resource or action.

200 Range

These status codes in the 200 range generally indicate successful or partially successful responses to client requests.

  • 200 OK: The request was successful, and the server has returned the requested data.
  • 201 Created: The request has been fulfilled, resulting in the creation of a new resource.
  • 202 Accepted: The request has been accepted for processing, but the processing has not been completed.
  • 203 Non-Authoritative Information: The server is a transforming proxy that received a 200 OK response from its origin but is returning a modified version of the origin’s response.
  • 204 No Content: The server successfully processed the request, but there is no content to send in the response.
  • 205 Reset Content: Informs the client to reset the document view, often used in forms to clear the current content.
  • 206 Partial Content: The server is delivering only part of the resource due to a range header sent by the client.

300 Range

  • 300 Multiple Choices: Indicates that the requested resource has multiple representations, each with its own specific location. The user or user agent can choose the one that is most appropriate.
  • 301 Moved Permanently: This response code indicates that the requested resource has been permanently moved to a new location. The URL of the new location is included in the response.
  • 302 Found: Similar to the 301 status code, but it indicates that the requested resource is temporarily located at another URI. The client should issue a new request to the new URI.
  • 303 See Other: The HTTP status code “303 See Other” indicates that the server is redirecting the client to a different URI (Uniform Resource Identifier), and the browser or user agent should perform a GET request to the new URI. Unlike 302 and 307, which allow the request method to remain the same after redirection, the 303 status explicitly indicates that the method should be changed to GET when making the subsequent request. In summary, when a server responds with a 303 status code, it’s telling the client that the requested resource can be found at a different location, and the client should use a GET request to retrieve it.
  • 304 Not Modified: This is used for caching purposes. It indicates that the requested resource has not been modified since the last request. The client can use the cached copy.
  • 307 Temporary Redirect: Similar to 302, but it indicates that the requested resource is temporarily located at another URI. The client should issue a new request to the new URI, but future requests should still use the original URI.
  • 308 Permanent Redirect: This is similar to 301, but it indicates that the requested resource has been permanently moved to another location, and future requests should use the new URI.

400 Range

These status codes in the 400 range generally indicate client errors, signaling that there is an issue with the client’s request.

  • 400 Bad Request: The server cannot understand the request due to a client error or malformed syntax.
  • 401 Unauthorized: The request requires user authentication, and the credentials provided are not valid.
  • 402 Payment Required: Reserved for future use. It is not currently used in the HTTP protocol.
  • 403 Forbidden: The server understood the request, but it refuses to authorize it.
  • 404 Not Found: The server could not find the requested resource.
  • 405 Method Not Allowed: The method specified in the request is not allowed for the resource identified by the request URI.
  • 406 Not Acceptable: The server cannot produce a response matching the list of acceptable values defined in the request’s headers.
  • 407 Proxy Authentication Required: Similar to 401, but it indicates that the client must first authenticate itself with the proxy.
  • 408 Request Timeout: The server timed out waiting for the request.
  • 409 Conflict: Indicates that the request could not be completed due to a conflict with the current state of the target resource.
  • 410 Gone: Indicates that the requested resource is no longer available and will not be available again.
  • 411 Length Required: The server requires a valid Content-Length header to be specified in the request.
  • 412 Precondition Failed: The server does not meet one of the preconditions specified in the request headers.
  • 413 Payload Too Large: The request is larger than the server is willing or able to process.
  • 414 URI Too Long: The URI provided in the request is too long for the server to process.
  • 415 Unsupported Media Type: The server does not support the media type or format specified in the request.
  • 416 Range Not Satisfiable: The client has asked for a portion of the file, but the server cannot supply that portion.
  • 417 Expectation Failed: The server cannot meet the requirements of the Expect request-header field.

500 Range

The 500 series HTTP status codes indicate that the server has encountered an error or is otherwise incapable of performing the request. Here are some of the commonly used response codes in the 500 range along with their meanings:

  • 500 Internal Server Error: This is a generic error message indicating that an unexpected condition was encountered by the server and no more specific message is suitable.
  • 501 Not Implemented: The server either does not recognize the request method or lacks the ability to fulfill the request. Usually, this means the server does not support the functionality required to fulfill the request.
  • 502 Bad Gateway: The server, while acting as a gateway or proxy, received an invalid response from an upstream server it accessed in attempting to fulfill the request.
  • 503 Service Unavailable: The server is not ready to handle the request. Common causes include the server being down for maintenance, overloading, or other temporary conditions.
  • 504 Gateway Timeout: The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server or some other auxiliary server it needed to access in order to complete the request.
  • 505 HTTP Version Not Supported: The server does not support, or refuses to support, the HTTP protocol version that was used in the request message.
  • 506 Variant Also Negotiates: Transparent content negotiation for the request results in a circular reference.
  • 507 Insufficient Storage: The server is unable to store the representation needed to complete the request.
  • 508 Loop Detected: The server detected an infinite loop while processing a request.
  • 510 Not Extended: Further extensions to the request are required for the server to fulfill it.