From Wikipedia, the free encyclopedia
This is a list of Hypertext Transfer Protocol (HTTP) response status codes. Status codes are issued by a server in response to a client’s request made to the server. It includes codes from IETF Request for Comments (RFCs), other specifications, and some additional codes used in some common applications of the HTTP. The first digit of the status code specifies one of five standard classes of responses. The optional message phrases shown are typical, but any human-readable alternative may be provided, or none at all.
Unless otherwise stated, the status code is part of the HTTP standard (RFC 9110).
The Internet Assigned Numbers Authority (IANA) maintains the official registry of HTTP status codes.[1]
All HTTP response status codes are separated into five classes or categories. The first digit of the status code defines the class of response, while the last two digits do not have any classifying or categorization role. There are five classes defined by the standard:
- 1xx informational response – the request was received, continuing process
- 2xx successful – the request was successfully received, understood, and accepted
- 3xx redirection – further action needs to be taken in order to complete the request
- 4xx client error – the request contains bad syntax or cannot be fulfilled
- 5xx server error – the server failed to fulfil an apparently valid request
1xx informational response
An informational response indicates that the request was received and understood. It is issued on a provisional basis while request processing continues. It alerts the client to wait for a final response. The message consists only of the status line and optional header fields, and is terminated by an empty line. As the HTTP/1.0 standard did not define any 1xx status codes, servers must not[note 1] send a 1xx response to an HTTP/1.0 compliant client except under experimental conditions.
- 100 Continue
- The server has received the request headers and the client should proceed to send the request body (in the case of a request for which a body needs to be sent; for example, a POST request). Sending a large request body to a server after a request has been rejected for inappropriate headers would be inefficient. To have a server check the request’s headers, a client must send
Expect: 100-continue
as a header in its initial request and receive a100 Continue
status code in response before sending the body. If the client receives an error code such as 403 (Forbidden) or 405 (Method Not Allowed) then it should not send the request’s body. The response417 Expectation Failed
indicates that the request should be repeated without theExpect
header as it indicates that the server does not support expectations (this is the case, for example, of HTTP/1.0 servers).[2] - 101 Switching Protocols
- The requester has asked the server to switch protocols and the server has agreed to do so.
- 102 Processing (WebDAV; RFC 2518)
- A WebDAV request may contain many sub-requests involving file operations, requiring a long time to complete the request. This code indicates that the server has received and is processing the request, but no response is available yet.[3] This prevents the client from timing out and assuming the request was lost.
- 103 Early Hints (RFC 8297)
- Used to return some response headers before final HTTP message.[4]
2xx success
This class of status codes indicates the action requested by the client was received, understood, and accepted.[1]
- 200 OK
- Standard response for successful HTTP requests. The actual response will depend on the request method used. In a GET request, the response will contain an entity corresponding to the requested resource. In a POST request, the response will contain an entity describing or containing the result of the action.
- 201 Created
- The request has been fulfilled, resulting in the creation of a new resource.[5]
- 202 Accepted
- The request has been accepted for processing, but the processing has not been completed. The request might or might not be eventually acted upon, and may be disallowed when processing occurs.
- 203 Non-Authoritative Information (since HTTP/1.1)
- The server is a transforming proxy (e.g. a Web accelerator) that received a 200 OK from its origin, but is returning a modified version of the origin’s response.[6][7]
- 204 No Content
- The server successfully processed the request, and is not returning any content.
- 205 Reset Content
- The server successfully processed the request, asks that the requester reset its document view, and is not returning any content.
- 206 Partial Content
- The server is delivering only part of the resource (byte serving) due to a range header sent by the client. The range header is used by HTTP clients to enable resuming of interrupted downloads, or split a download into multiple simultaneous streams.
- 207 Multi-Status (WebDAV; RFC 4918)
- The message body that follows is by default an XML message and can contain a number of separate response codes, depending on how many sub-requests were made.[8]
- 208 Already Reported (WebDAV; RFC 5842)
- The members of a DAV binding have already been enumerated in a preceding part of the (multistatus) response, and are not being included again.
- 226 IM Used (RFC 3229)
- The server has fulfilled a request for the resource, and the response is a representation of the result of one or more instance-manipulations applied to the current instance.[9]
3xx redirection
This class of status code indicates the client must take additional action to complete the request. Many of these status codes are used in URL redirection.[1]
A user agent may carry out the additional action with no user interaction only if the method used in the second request is GET or HEAD. A user agent may automatically redirect a request. A user agent should detect and intervene to prevent cyclical redirects.[10]
- 300 Multiple Choices
- Indicates multiple options for the resource from which the client may choose (via agent-driven content negotiation). For example, this code could be used to present multiple video format options, to list files with different filename extensions, or to suggest word-sense disambiguation.
- 301 Moved Permanently
- This and all future requests should be directed to the given URI.
- 302 Found (Previously «Moved temporarily»)
- Tells the client to look at (browse to) another URL. The HTTP/1.0 specification (RFC 1945) required the client to perform a temporary redirect with the same method (the original describing phrase was «Moved Temporarily»),[11] but popular browsers implemented 302 redirects by changing the method to GET. Therefore, HTTP/1.1 added status codes 303 and 307 to distinguish between the two behaviours.[10]
- 303 See Other (since HTTP/1.1)
- The response to the request can be found under another URI using the GET method. When received in response to a POST (or PUT/DELETE), the client should presume that the server has received the data and should issue a new GET request to the given URI.
- 304 Not Modified
- Indicates that the resource has not been modified since the version specified by the request headers If-Modified-Since or If-None-Match. In such case, there is no need to retransmit the resource since the client still has a previously-downloaded copy.
- 305 Use Proxy (since HTTP/1.1)
- The requested resource is available only through a proxy, the address for which is provided in the response. For security reasons, many HTTP clients (such as Mozilla Firefox and Internet Explorer) do not obey this status code.
- 306 Switch Proxy
- No longer used. Originally meant «Subsequent requests should use the specified proxy.»
- 307 Temporary Redirect (since HTTP/1.1)
- In this case, the request should be repeated with another URI; however, future requests should still use the original URI. In contrast to how 302 was historically implemented, the request method is not allowed to be changed when reissuing the original request. For example, a POST request should be repeated using another POST request.
- 308 Permanent Redirect
- This and all future requests should be directed to the given URI. 308 parallel the behaviour of 301, but does not allow the HTTP method to change. So, for example, submitting a form to a permanently redirected resource may continue smoothly.
4xx client errors
This class of status code is intended for situations in which the error seems to have been caused by the client. Except when responding to a HEAD request, the server should include an entity containing an explanation of the error situation, and whether it is a temporary or permanent condition. These status codes are applicable to any request method. User agents should display any included entity to the user.
- 400 Bad Request
- The server cannot or will not process the request due to an apparent client error (e.g., malformed request syntax, size too large, invalid request message framing, or deceptive request routing).
- 401 Unauthorized
- Similar to 403 Forbidden, but specifically for use when authentication is required and has failed or has not yet been provided. The response must include a WWW-Authenticate header field containing a challenge applicable to the requested resource. See Basic access authentication and Digest access authentication. 401 semantically means «unauthorised», the user does not have valid authentication credentials for the target resource.
- Some sites incorrectly issue HTTP 401 when an IP address is banned from the website (usually the website domain) and that specific address is refused permission to access a website.[citation needed]
- 402 Payment Required
- Reserved for future use. The original intention was that this code might be used as part of some form of digital cash or micropayment scheme, as proposed, for example, by GNU Taler,[13] but that has not yet happened, and this code is not widely used. Google Developers API uses this status if a particular developer has exceeded the daily limit on requests.[14] Sipgate uses this code if an account does not have sufficient funds to start a call.[15] Shopify uses this code when the store has not paid their fees and is temporarily disabled.[16] Stripe uses this code for failed payments where parameters were correct, for example blocked fraudulent payments.[17]
- 403 Forbidden
- The request contained valid data and was understood by the server, but the server is refusing action. This may be due to the user not having the necessary permissions for a resource or needing an account of some sort, or attempting a prohibited action (e.g. creating a duplicate record where only one is allowed). This code is also typically used if the request provided authentication by answering the WWW-Authenticate header field challenge, but the server did not accept that authentication. The request should not be repeated.
- 404 Not Found
- The requested resource could not be found but may be available in the future. Subsequent requests by the client are permissible.
- 405 Method Not Allowed
- A request method is not supported for the requested resource; for example, a GET request on a form that requires data to be presented via POST, or a PUT request on a read-only resource.
- 406 Not Acceptable
- The requested resource is capable of generating only content not acceptable according to the Accept headers sent in the request. See Content negotiation.
- 407 Proxy Authentication Required
- The client must first authenticate itself with the proxy.
- 408 Request Timeout
- The server timed out waiting for the request. According to HTTP specifications: «The client did not produce a request within the time that the server was prepared to wait. The client MAY repeat the request without modifications at any later time.»
- 409 Conflict
- Indicates that the request could not be processed because of conflict in the current state of the resource, such as an edit conflict between multiple simultaneous updates.
- 410 Gone
- Indicates that the resource requested was previously in use but is no longer available and will not be available again. This should be used when a resource has been intentionally removed and the resource should be purged. Upon receiving a 410 status code, the client should not request the resource in the future. Clients such as search engines should remove the resource from their indices. Most use cases do not require clients and search engines to purge the resource, and a «404 Not Found» may be used instead.
- 411 Length Required
- The request did not specify the length of its content, which is required by the requested resource.
- 412 Precondition Failed
- The server does not meet one of the preconditions that the requester put on the request header fields.
- 413 Payload Too Large
- The request is larger than the server is willing or able to process. Previously called «Request Entity Too Large» in RFC 2616.[18]
- 414 URI Too Long
- The URI provided was too long for the server to process. Often the result of too much data being encoded as a query-string of a GET request, in which case it should be converted to a POST request. Called «Request-URI Too Long» previously in RFC 2616.[19]
- 415 Unsupported Media Type
- The request entity has a media type which the server or resource does not support. For example, the client uploads an image as image/svg+xml, but the server requires that images use a different format.
- 416 Range Not Satisfiable
- The client has asked for a portion of the file (byte serving), but the server cannot supply that portion. For example, if the client asked for a part of the file that lies beyond the end of the file. Called «Requested Range Not Satisfiable» previously RFC 2616.[20]
- 417 Expectation Failed
- The server cannot meet the requirements of the Expect request-header field.[21]
- 418 I’m a teapot (RFC 2324, RFC 7168)
- This code was defined in 1998 as one of the traditional IETF April Fools’ jokes, in RFC 2324, Hyper Text Coffee Pot Control Protocol, and is not expected to be implemented by actual HTTP servers. The RFC specifies this code should be returned by teapots requested to brew coffee.[22] This HTTP status is used as an Easter egg in some websites, such as Google.com’s «I’m a teapot» easter egg.[23][24][25] Sometimes, this status code is also used as a response to a blocked request, instead of the more appropriate 403 Forbidden.[26][27]
- 421 Misdirected Request
- The request was directed at a server that is not able to produce a response (for example because of connection reuse).
- 422 Unprocessable Entity
- The request was well-formed but was unable to be followed due to semantic errors.[8]
- 423 Locked (WebDAV; RFC 4918)
- The resource that is being accessed is locked.[8]
- 424 Failed Dependency (WebDAV; RFC 4918)
- The request failed because it depended on another request and that request failed (e.g., a PROPPATCH).[8]
- 425 Too Early (RFC 8470)
- Indicates that the server is unwilling to risk processing a request that might be replayed.
- 426 Upgrade Required
- The client should switch to a different protocol such as TLS/1.3, given in the Upgrade header field.
- 428 Precondition Required (RFC 6585)
- The origin server requires the request to be conditional. Intended to prevent the ‘lost update’ problem, where a client GETs a resource’s state, modifies it, and PUTs it back to the server, when meanwhile a third party has modified the state on the server, leading to a conflict.[28]
- 429 Too Many Requests (RFC 6585)
- The user has sent too many requests in a given amount of time. Intended for use with rate-limiting schemes.[28]
- 431 Request Header Fields Too Large (RFC 6585)
- The server is unwilling to process the request because either an individual header field, or all the header fields collectively, are too large.[28]
- 451 Unavailable For Legal Reasons (RFC 7725)
- A server operator has received a legal demand to deny access to a resource or to a set of resources that includes the requested resource.[29] The code 451 was chosen as a reference to the novel Fahrenheit 451 (see the Acknowledgements in the RFC).
5xx server errors
The server failed to fulfil a request.
Response status codes beginning with the digit «5» indicate cases in which the server is aware that it has encountered an error or is otherwise incapable of performing the request. Except when responding to a HEAD request, the server should include an entity containing an explanation of the error situation, and indicate whether it is a temporary or permanent condition. Likewise, user agents should display any included entity to the user. These response codes are applicable to any request method.
- 500 Internal Server Error
- A generic error message, given when an unexpected condition was encountered and no more specific message is suitable.
- 501 Not Implemented
- The server either does not recognize the request method, or it lacks the ability to fulfil the request. Usually this implies future availability (e.g., a new feature of a web-service API).
- 502 Bad Gateway
- The server was acting as a gateway or proxy and received an invalid response from the upstream server.
- 503 Service Unavailable
- The server cannot handle the request (because it is overloaded or down for maintenance). Generally, this is a temporary state.[30]
- 504 Gateway Timeout
- The server was acting as a gateway or proxy and did not receive a timely response from the upstream server.
- 505 HTTP Version Not Supported
- The server does not support the HTTP version used in the request.
- 506 Variant Also Negotiates (RFC 2295)
- Transparent content negotiation for the request results in a circular reference.[31]
- 507 Insufficient Storage (WebDAV; RFC 4918)
- The server is unable to store the representation needed to complete the request.[8]
- 508 Loop Detected (WebDAV; RFC 5842)
- The server detected an infinite loop while processing the request (sent instead of 208 Already Reported).
- 510 Not Extended (RFC 2774)
- Further extensions to the request are required for the server to fulfill it.[32]
- 511 Network Authentication Required (RFC 6585)
- The client needs to authenticate to gain network access. Intended for use by intercepting proxies used to control access to the network (e.g., «captive portals» used to require agreement to Terms of Service before granting full Internet access via a Wi-Fi hotspot).[28]
Unofficial codes
The following codes are not specified by any standard.
- 419 Page Expired (Laravel Framework)
- Used by the Laravel Framework when a CSRF Token is missing or expired.
- 420 Method Failure (Spring Framework)
- A deprecated response used by the Spring Framework when a method has failed.[33]
- 420 Enhance Your Calm (Twitter)
- Returned by version 1 of the Twitter Search and Trends API when the client is being rate limited; versions 1.1 and later use the 429 Too Many Requests response code instead.[34] The phrase «Enhance your calm» comes from the 1993 movie Demolition Man, and its association with this number is likely a reference to cannabis.[citation needed]
- 430 Request Header Fields Too Large (Shopify)
- Used by Shopify, instead of the 429 Too Many Requests response code, when too many URLs are requested within a certain time frame.[35]
- 450 Blocked by Windows Parental Controls (Microsoft)
- The Microsoft extension code indicated when Windows Parental Controls are turned on and are blocking access to the requested webpage.[36]
- 498 Invalid Token (Esri)
- Returned by ArcGIS for Server. Code 498 indicates an expired or otherwise invalid token.[37]
- 499 Token Required (Esri)
- Returned by ArcGIS for Server. Code 499 indicates that a token is required but was not submitted.[37]
- 509 Bandwidth Limit Exceeded (Apache Web Server/cPanel)
- The server has exceeded the bandwidth specified by the server administrator; this is often used by shared hosting providers to limit the bandwidth of customers.[38]
- 529 Site is overloaded
- Used by Qualys in the SSLLabs server testing API to signal that the site can’t process the request.[39]
- 530 Site is frozen
- Used by the Pantheon Systems web platform to indicate a site that has been frozen due to inactivity.[40]
- 598 (Informal convention) Network read timeout error
- Used by some HTTP proxies to signal a network read timeout behind the proxy to a client in front of the proxy.[41]
- 599 Network Connect Timeout Error
- An error used by some HTTP proxies to signal a network connect timeout behind the proxy to a client in front of the proxy.
Internet Information Services
Microsoft’s Internet Information Services (IIS) web server expands the 4xx error space to signal errors with the client’s request.
- 440 Login Time-out
- The client’s session has expired and must log in again.[42]
- 449 Retry With
- The server cannot honour the request because the user has not provided the required information.[43]
- 451 Redirect
- Used in Exchange ActiveSync when either a more efficient server is available or the server cannot access the users’ mailbox.[44] The client is expected to re-run the HTTP AutoDiscover operation to find a more appropriate server.[45]
IIS sometimes uses additional decimal sub-codes for more specific information,[46] however these sub-codes only appear in the response payload and in documentation, not in the place of an actual HTTP status code.
nginx
The nginx web server software expands the 4xx error space to signal issues with the client’s request.[47][48]
- 444 No Response
- Used internally[49] to instruct the server to return no information to the client and close the connection immediately.
- 494 Request header too large
- Client sent too large request or too long header line.
- 495 SSL Certificate Error
- An expansion of the 400 Bad Request response code, used when the client has provided an invalid client certificate.
- 496 SSL Certificate Required
- An expansion of the 400 Bad Request response code, used when a client certificate is required but not provided.
- 497 HTTP Request Sent to HTTPS Port
- An expansion of the 400 Bad Request response code, used when the client has made a HTTP request to a port listening for HTTPS requests.
- 499 Client Closed Request
- Used when the client has closed the request before the server could send a response.
Cloudflare
Cloudflare’s reverse proxy service expands the 5xx series of errors space to signal issues with the origin server.[50]
- 520 Web Server Returned an Unknown Error
- The origin server returned an empty, unknown, or unexpected response to Cloudflare.[51]
- 521 Web Server Is Down
- The origin server refused connections from Cloudflare. Security solutions at the origin may be blocking legitimate connections from certain Cloudflare IP addresses.
- 522 Connection Timed Out
- Cloudflare timed out contacting the origin server.
- 523 Origin Is Unreachable
- Cloudflare could not reach the origin server; for example, if the DNS records for the origin server are incorrect or missing.
- 524 A Timeout Occurred
- Cloudflare was able to complete a TCP connection to the origin server, but did not receive a timely HTTP response.
- 525 SSL Handshake Failed
- Cloudflare could not negotiate a SSL/TLS handshake with the origin server.
- 526 Invalid SSL Certificate
- Cloudflare could not validate the SSL certificate on the origin web server. Also used by Cloud Foundry’s gorouter.
- 527 Railgun Error
- Error 527 indicates an interrupted connection between Cloudflare and the origin server’s Railgun server.[52]
- 530
- Error 530 is returned along with a 1xxx error.[53]
AWS Elastic Load Balancer
Amazon’s Elastic Load Balancing adds a few custom return codes
- 460
- Client closed the connection with the load balancer before the idle timeout period elapsed. Typically when client timeout is sooner than the Elastic Load Balancer’s timeout.[54]
- 463
- The load balancer received an X-Forwarded-For request header with more than 30 IP addresses.[54]
- 561 Unauthorized
- An error around authentication returned by a server registered with a load balancer. You configured a listener rule to authenticate users, but the identity provider (IdP) returned an error code when authenticating the user.[55]
Caching warning codes (obsoleted)
The following caching related warning codes were specified under RFC 7234. Unlike the other status codes above, these were not sent as the response status in the HTTP protocol, but as part of the «Warning» HTTP header.[56][57]
Since this «Warning» header is often neither sent by servers nor acknowledged by clients, this header and its codes were obsoleted by the HTTP Working Group in 2022 with RFC 9111.[58]
- 110 Response is Stale
- The response provided by a cache is stale (the content’s age exceeds a maximum age set by a Cache-Control header or heuristically chosen lifetime).
- 111 Revalidation Failed
- The cache was unable to validate the response, due to an inability to reach the origin server.
- 112 Disconnected Operation
- The cache is intentionally disconnected from the rest of the network.
- 113 Heuristic Expiration
- The cache heuristically chose a freshness lifetime greater than 24 hours and the response’s age is greater than 24 hours.
- 199 Miscellaneous Warning
- Arbitrary, non-specific warning. The warning text may be logged or presented to the user.
- 214 Transformation Applied
- Added by a proxy if it applies any transformation to the representation, such as changing the content encoding, media type or the like.
- 299 Miscellaneous Persistent Warning
- Same as 199, but indicating a persistent warning.
See also
- Custom error pages
- List of FTP server return codes
- List of HTTP header fields
- List of SMTP server return codes
- Common Log Format
Explanatory notes
- ^ Emphasised words and phrases such as must and should represent interpretation guidelines as given by RFC 2119
References
- ^ a b c «Hypertext Transfer Protocol (HTTP) Status Code Registry». Iana.org. Archived from the original on December 11, 2011. Retrieved January 8, 2015.
- ^ «RFC 9110: HTTP Semantics and Content, Section 10.1.1 «Expect»«.
- ^ Goland, Yaronn; Whitehead, Jim; Faizi, Asad; Carter, Steve R.; Jensen, Del (February 1999). HTTP Extensions for Distributed Authoring – WEBDAV. IETF. doi:10.17487/RFC2518. RFC 2518. Retrieved October 24, 2009.
- ^ Oku, Kazuho (December 2017). An HTTP Status Code for Indicating Hints. IETF. doi:10.17487/RFC8297. RFC 8297. Retrieved December 20, 2017.
- ^ Stewart, Mark; djna. «Create request with POST, which response codes 200 or 201 and content». Stack Overflow. Archived from the original on October 11, 2016. Retrieved October 16, 2015.
- ^ «RFC 9110: HTTP Semantics and Content, Section 15.3.4».
- ^ «RFC 9110: HTTP Semantics and Content, Section 7.7».
- ^ a b c d e Dusseault, Lisa, ed. (June 2007). HTTP Extensions for Web Distributed Authoring and Versioning (WebDAV). IETF. doi:10.17487/RFC4918. RFC 4918. Retrieved October 24, 2009.
- ^ Delta encoding in HTTP. IETF. January 2002. doi:10.17487/RFC3229. RFC 3229. Retrieved February 25, 2011.
- ^ a b «RFC 9110: HTTP Semantics and Content, Section 15.4 «Redirection 3xx»«.
- ^ Berners-Lee, Tim; Fielding, Roy T.; Nielsen, Henrik Frystyk (May 1996). Hypertext Transfer Protocol – HTTP/1.0. IETF. doi:10.17487/RFC1945. RFC 1945. Retrieved October 24, 2009.
- ^ «The GNU Taler tutorial for PHP Web shop developers 0.4.0». docs.taler.net. Archived from the original on November 8, 2017. Retrieved October 29, 2017.
- ^ «Google API Standard Error Responses». 2016. Archived from the original on May 25, 2017. Retrieved June 21, 2017.
- ^ «Sipgate API Documentation». Archived from the original on July 10, 2018. Retrieved July 10, 2018.
- ^ «Shopify Documentation». Archived from the original on July 25, 2018. Retrieved July 25, 2018.
- ^ «Stripe API Reference – Errors». stripe.com. Retrieved October 28, 2019.
- ^ «RFC2616 on status 413». Tools.ietf.org. Archived from the original on March 7, 2011. Retrieved November 11, 2015.
- ^ «RFC2616 on status 414». Tools.ietf.org. Archived from the original on March 7, 2011. Retrieved November 11, 2015.
- ^ «RFC2616 on status 416». Tools.ietf.org. Archived from the original on March 7, 2011. Retrieved November 11, 2015.
- ^ TheDeadLike. «HTTP/1.1 Status Codes 400 and 417, cannot choose which». serverFault. Archived from the original on October 10, 2015. Retrieved October 16, 2015.
- ^ Larry Masinter (April 1, 1998). Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0). doi:10.17487/RFC2324. RFC 2324.
Any attempt to brew coffee with a teapot should result in the error code «418 I’m a teapot». The resulting entity body MAY be short and stout.
- ^ I’m a teapot
- ^ Barry Schwartz (August 26, 2014). «New Google Easter Egg For SEO Geeks: Server Status 418, I’m A Teapot». Search Engine Land. Archived from the original on November 15, 2015. Retrieved November 4, 2015.
- ^ «Google’s Teapot». Retrieved October 23, 2017.[dead link]
- ^ «Enable extra web security on a website». DreamHost. Retrieved December 18, 2022.
- ^ «I Went to a Russian Website and All I Got Was This Lousy Teapot». PCMag. Retrieved December 18, 2022.
- ^ a b c d Nottingham, M.; Fielding, R. (April 2012). «RFC 6585 – Additional HTTP Status Codes». Request for Comments. Internet Engineering Task Force. Archived from the original on May 4, 2012. Retrieved May 1, 2012.
- ^ Bray, T. (February 2016). «An HTTP Status Code to Report Legal Obstacles». ietf.org. Archived from the original on March 4, 2016. Retrieved March 7, 2015.
- ^ alex. «What is the correct HTTP status code to send when a site is down for maintenance?». Stack Overflow. Archived from the original on October 11, 2016. Retrieved October 16, 2015.
- ^ Holtman, Koen; Mutz, Andrew H. (March 1998). Transparent Content Negotiation in HTTP. IETF. doi:10.17487/RFC2295. RFC 2295. Retrieved October 24, 2009.
- ^ Nielsen, Henrik Frystyk; Leach, Paul; Lawrence, Scott (February 2000). An HTTP Extension Framework. IETF. doi:10.17487/RFC2774. RFC 2774. Retrieved October 24, 2009.
- ^ «Enum HttpStatus». Spring Framework. org.springframework.http. Archived from the original on October 25, 2015. Retrieved October 16, 2015.
- ^ «Twitter Error Codes & Responses». Twitter. 2014. Archived from the original on September 27, 2017. Retrieved January 20, 2014.
- ^ «HTTP Status Codes and SEO: what you need to know». ContentKing. Retrieved August 9, 2019.
- ^ «Screenshot of error page». Archived from the original (bmp) on May 11, 2013. Retrieved October 11, 2009.
- ^ a b «Using token-based authentication». ArcGIS Server SOAP SDK. Archived from the original on September 26, 2014. Retrieved September 8, 2014.
- ^ «HTTP Error Codes and Quick Fixes». Docs.cpanel.net. Archived from the original on November 23, 2015. Retrieved October 15, 2015.
- ^ «SSL Labs API v3 Documentation». github.com.
- ^ «Platform Considerations | Pantheon Docs». pantheon.io. Archived from the original on January 6, 2017. Retrieved January 5, 2017.
- ^ «HTTP status codes — ascii-code.com». www.ascii-code.com. Archived from the original on January 7, 2017. Retrieved December 23, 2016.
- ^
«Error message when you try to log on to Exchange 2007 by using Outlook Web Access: «440 Login Time-out»«. Microsoft. 2010. Retrieved November 13, 2013. - ^ «2.2.6 449 Retry With Status Code». Microsoft. 2009. Archived from the original on October 5, 2009. Retrieved October 26, 2009.
- ^ «MS-ASCMD, Section 3.1.5.2.2». Msdn.microsoft.com. Archived from the original on March 26, 2015. Retrieved January 8, 2015.
- ^ «Ms-oxdisco». Msdn.microsoft.com. Archived from the original on July 31, 2014. Retrieved January 8, 2015.
- ^ «The HTTP status codes in IIS 7.0». Microsoft. July 14, 2009. Archived from the original on April 9, 2009. Retrieved April 1, 2009.
- ^ «ngx_http_request.h». nginx 1.9.5 source code. nginx inc. Archived from the original on September 19, 2017. Retrieved January 9, 2016.
- ^ «ngx_http_special_response.c». nginx 1.9.5 source code. nginx inc. Archived from the original on May 8, 2018. Retrieved January 9, 2016.
- ^ «return» directive Archived March 1, 2018, at the Wayback Machine (http_rewrite module) documentation.
- ^ «Troubleshooting: Error Pages». Cloudflare. Archived from the original on March 4, 2016. Retrieved January 9, 2016.
- ^ «Error 520: web server returns an unknown error». Cloudflare. Retrieved November 1, 2019.
- ^ «527 Error: Railgun Listener to origin error». Cloudflare. Archived from the original on October 13, 2016. Retrieved October 12, 2016.
- ^ «Error 530». Cloudflare. Retrieved November 1, 2019.
- ^ a b «Troubleshoot Your Application Load Balancers – Elastic Load Balancing». docs.aws.amazon.com. Retrieved August 27, 2019.
- ^ «Troubleshoot your Application Load Balancers — Elastic Load Balancing». docs.aws.amazon.com. Retrieved January 24, 2021.
- ^ «Hypertext Transfer Protocol (HTTP/1.1): Caching». datatracker.ietf.org. Retrieved September 25, 2021.
- ^ «Warning — HTTP | MDN». developer.mozilla.org. Retrieved August 15, 2021.
Some text was copied from this source, which is available under a Creative Commons Attribution-ShareAlike 2.5 Generic (CC BY-SA 2.5) license.
- ^ «RFC 9111: HTTP Caching, Section 5.5 «Warning»«. June 2022.
External links
- «RFC 9110: HTTP Semantics and Content, Section 15 «Status Codes»«.
- Hypertext Transfer Protocol (HTTP) Status Code Registry
принят и клиент может продолжать присылать запросы либо проигнорировать
этот ответ, если запрос был завершён.
клиента, содержащий заголовок
Upgrade:
, и указывает, чтосервер переключился на протокол, который был указан в заголовке. Эта
возможность позволяет перейти на несовместимую версию протокола и обычно
не используется.
обрабатывает его, но обработка ещё не завершена.
загружены заранее, пока сервер будет подготавливать основной ответ.
RFC 8297 (Experimental).
OK
метода HTTP, который был запрошен:
-
GET: «ПОЛУЧИТЬ». Запрошенный ресурс был найден и передан в теле
ответа. - HEAD: «ЗАГОЛОВОК». Заголовки переданы в ответе.
-
POST: «ПОСЫЛКА». Ресурс, описывающий результат действия сервера на
запрос, передан в теле ответа. -
TRACE: «ОТСЛЕЖИВАТЬ». Тело ответа содержит тело запроса полученного
сервером.
Этот код обычно присылается в ответ на запрос PUT «ПОМЕСТИТЬ».
нет способа с помощью HTTP отправить асинхронный ответ позже, который
будет показывать итог обработки запроса. Это предназначено для случаев,
когда запрос обрабатывается другим процессом или сервером, либо для
пакетной обработки.
которая возвращена, была предоставлена не от исходного сервера, а из
какого-нибудь другого источника. Во всех остальных ситуациях более
предпочтителен код ответа 200 OK.
ответа, которые могут быть полезны, присылаются. Клиент может
использовать их для обновления кешированных заголовков полученных ранее
для этого ресурса.
чтобы сообщить клиенту, что необходимо сбросить отображение документа,
который прислал этот запрос.
присылает заголовок диапазона, чтобы выполнить загрузку отдельно, в
несколько потоков.
«Множественный выбор». Этот код ответа присылается, когда запрос имеет
более чем один из возможных ответов. И User-agent или пользователь
должен выбрать один из ответов. Не существует стандартизированного
способа выбора одного из полученных ответов.
«Перемещён на постоянной основе». Этот код ответа значит, что URI
запрашиваемого ресурса был изменён. Возможно, новый URI будет
предоставлен в ответе.
«Найдено». Этот код ответа значит, что запрошенный ресурс
временно изменён. Новые изменения в URI могут быть доступны в
будущем. Таким образом, этот URI, должен быть использован клиентом в
будущих запросах.
направлять клиента для получения запрашиваемого ресурса в другой URI с
запросом GET.
значит, что запрошенный ресурс не был изменён. Таким образом, клиент
может продолжать использовать кешированную версию ответа.
доступен через прокси. Этот код ответа в основном не поддерживается из
соображений безопасности.
запросы должны использовать указанный прокси.»
получил запрошенный ресурс на другой URL-адрес с тем же методом, который
использовал предыдущий запрос. Данный код имеет ту же семантику, что код
ответа
302 Found
, за исключением того, что агентпользователя не должен изменять используемый метод HTTP: если в первом
запросе использовался
POST
, то во втором запросе такжедолжен использоваться
POST
.
«Перенаправление на постоянной основе». Это означает, что ресурс
теперь постоянно находится в другом URI, указанном в заголовке
Location:
HTTP Response. Данный код ответа имеет ту же
семантику, что и код ответа 301 Moved Permanently
, за
исключением того, что агент пользователя не должен изменять
используемый метод HTTP: если POST
использовался в первом
запросе, POST
должен использоваться и во втором запросе.
Примечание: Это экспериментальный код ответа,
Спецификация которого в настоящее время находится в черновом виде.
из-за неверного синтаксиса.
аутентификация. Статус похож на статус 403, но,в этом случае,
аутентификация возможна.
использования. Первоначальная цель для создания этого кода была в
использовании его для цифровых платёжных систем(на данный момент не
используется).
отказывается дать надлежащий ответ.
ответа, наверно, самый известный из-за частоты его появления в вебе.
деактивирован и не может быть использован. Два обязательных метода,
GET
и HEAD
, никогда не должны бытьдеактивированы и не должны возвращать этот код ошибки.
Этот ответ отсылается, когда веб сервер после выполнения
server-driven content negotiation, не нашёл контента, отвечающего критериям, полученным из user agent.
прокси сервера.
означает, что сервер хотел бы отключить это неиспользуемое соединение.
Этот метод используется все чаще с тех пор, как некоторые браузеры,
вроде Chrome и IE9, стали использовать
HTTP механизмы предварительного соединения
для ускорения сёрфинга (смотрите баг 634278, будущей
реализации этого механизма в Firefox). Также учитывайте, что некоторые
серверы прерывают соединения не отправляя подобных сообщений.
Этот ответ отсылается, когда запрос конфликтует с текущим состоянием
сервера.
Этот ответ отсылается, когда запрашиваемый контент удалён с сервера.
Запрос отклонён, потому что сервер требует указание заголовка
Content-Length
, но он не указан.
выполнить
Размер запроса превышает лимит, объявленный сервером. Сервер может
закрыть соединение, вернув заголовок Retry-After
его обработать
запрос отклонён
Range
не может бытьвыполнен; возможно, он выходит за пределы переданного URI
Expect
, не может быть выполнено сервером.
не знает как обработать.
обработан. Единственные методы, которые сервера должны поддерживать (и,
соответственно, не должны возвращать этот код) —
GET
иHEAD
.
качестве шлюза для получения ответа, нужного для обработки запроса,
получил недействительный (недопустимый) ответ.
причинами являются отключение сервера или то, что он перегружен.
Обратите внимание, что вместе с этим ответом удобная для
пользователей(user-friendly) страница должна отправлять объяснение
проблемы. Этот ответ должен использоваться для временных условий и
Retry-After:
HTTP-заголовок должен, если возможно,содержать предполагаемое время до восстановления сервиса. Веб-мастер
также должен позаботиться о заголовках, связанных с кешем, которые
отправляются вместе с этим ответом, так как эти ответы, связанные с
временными условиями, обычно не должны кешироваться.
не может получить ответ вовремя.
поддерживается сервером.
Содержание
Составили подробный классификатор кодов состояния HTTP. Добавляйте в закладки, чтобы был под рукой, когда понадобится.
Что такое код ответа HTTP
Когда посетитель переходит по ссылке на сайт или вбивает её в поисковую строку вручную, отправляется запрос на сервер. Сервер обрабатывает этот запрос и выдаёт ответ — трехзначный цифровой код HTTP от 100 до 510. По коду ответа можно понять реакцию сервера на запрос.
Первая цифра в ответе обозначает класс состояния, другие две — причину, по которой мог появиться такой ответ.
Как проверить код состояния страницы
Проверить коды ответа сервера можно вручную с помощью браузера и в панелях веб‑мастеров: Яндекс.Вебмастер и Google Search Console.
В браузере
Для примера возьмём Google Chrome.
-
Откройте панель разработчика в браузере клавишей F12, комбинацией клавиш Ctrl + Shift + I или в меню браузера → «Дополнительные инструменты» → «Инструменты разработчика». Подробнее об этом рассказывали в статье «Как открыть исходный код страницы».
-
Переключитесь на вкладку «Сеть» в Инструментах разработчика и обновите страницу:
В Яндекс.Вебмастере
Откройте инструмент «Проверка ответа сервера» в Вебмастере. Введите URL в специальное поле и нажмите кнопку «Проверить»:
Как добавить сайт в Яндекс.Вебмастер и другие сервисы Яндекса
В Google Search Console
Чтобы посмотреть код ответа сервера в GSC, перейдите в инструмент проверки URL — он находится в самом верху панели:
Введите ссылку на страницу, которую хотите проверить, и нажмите Enter. В результатах проверки нажмите на «Изучить просканированную страницу» в блоке «URL есть в индексе Google».
А затем в открывшемся окне перейдите на вкладку «Подробнее»:
Теперь расскажем подробнее про все классы кодов состояния HTTP.
1* класс кодов (информационные сообщения)
Это системный класс кодов, который только информирует о процессе передачи запроса. Такие ответы не являются ошибкой, хотя и могут отображаться в браузере как Error Code.
100 Continue
Этот ответ сообщает, что полученные сведения о запросе устраивают сервер и клиент может продолжать отправлять данные. Такой ответ может требоваться клиенту, если на сервер отправляется большой объём данных.
101 Switching Protocols
Сервер одобрил переключение типа протокола, которое запросил пользователь, и в настоящий момент выполняет действие.
102 Processing
Запрос принят — он находится в обработке, и на это понадобится чуть больше времени.
103 Checkpoint
Контрольная точка — используется в запросах для возобновления после прерывания запросов POST или PUT.
POST отправляет данные на сервер, PUT создает новый ресурс или заменяет существующий данными, представленными в теле запроса.
Разница между ними в том, что PUT работает без изменений: повторное его применение даёт такой же результат, что и в первый раз, а вот повторный вызов одного и того же метода POST часто меняет данные.
Пример — оформленный несколько раз интернет‑заказ. Такое часто происходит как раз по причине неоднократного использования запроса PUT.
105 Name Not Resolved
Не удается преобразовать DNS‑адрес сервера — это означает ошибку в службе DNS. Эта служба преобразует IP‑адреса в знакомые нам доменные имена.
2* класс кодов (успешно обработанные запросы)
Эти коды информируют об успешности принятия и обработки запроса. Также сервер может передать заголовки или тело сообщений.
200 ОК
Все хорошо — HTTP‑запрос успешно обработан (не ошибка).
201 Created
Создано — транзакция успешна, сформирован новый ресурс или документ.
202 Accepted
Принято — запрос принят, но ещё не обработан.
203 Non‑Authoritative Information
Информация не авторитетна — запрос успешно обработан, но передаваемая информация была взята не из первичного источника (данные могут быть устаревшими).
204 No Content
Нет содержимого — запрос успешно обработан, однако в ответе только заголовки без контента сообщения. Не нужно обновлять содержимое документа, но можно применить к нему полученные метаданные.
205 Reset Content
Сбросить содержимое. Запрос успешно обработан — но нужно сбросить введенные данные. Страницу можно не обновлять.
206 Partial Content
Частичное содержимое. Сервер успешно обработал часть GET‑запроса, а другую часть вернул.
GET — метод для чтения данных с сайта. Он говорит серверу, что клиент хочет прочитать какой‑то документ.
Представим интернет‑магазин и страницы каталога. Фильтры, которые выбирает пользователь, передаются благодаря методу GET. GET‑запрос работает с получением данных, а POST‑запрос нужен для отправки данных.
При работе с подобными ответами следует уделить внимание кэшированию.
207 Multi‑Status
Успешно выполнено несколько операций — сервер передал результаты выполнения нескольких независимых операций. Они появятся в виде XML‑документа с объектом multistatus.
226 IM Used
Успешно обработан IM‑заголовок (специальный заголовок, который отправляется клиентом и используется для передачи состояния HTTP).
3* класс кодов (перенаправление на другой адрес)
Эти коды информируют, что для достижения успешной операции нужно будет сделать другой запрос, возможно, по другому URL.
300 Multiple Choices
Множественный выбор — сервер выдает список нескольких возможных вариантов перенаправления (максимум — 5). Можно выбрать один из них.
301 Moved Permanently
Окончательно перемещено — страница перемещена на другой URL, который указан в поле Location.
302 Found/Moved
Временно перемещено — страница временно перенесена на другой URL, который указан в поле Location.
303 See Other
Ищите другую страницу — страница не найдена по данному URL, поэтому смотрите страницу по другому URL, используя метод GET.
304 Not Modified
Модификаций не было — с момента последнего визита клиента изменений не было.
305 Use Proxy
Используйте прокси — запрос к нужному ресурсу можно сделать только через прокси‑сервер, URL которого указан в поле Location заголовка.
306 Unused
Зарезервировано. Код в настоящий момент не используется.
307 Temporary Redirect
Временное перенаправление — запрашиваемый ресурс временно доступен по другому URL.
Этот код имеет ту же семантику, что код ответа 302 Found, за исключением того, что агент пользователя не должен изменять используемый метод HTTP: если в первом запросе использовался POST, то во втором запросе также должен использоваться POST.
308 Resume Incomplete
Перемещено полностью (навсегда) — запрашиваемая страница была перенесена на новый URL, указанный в поле Location заголовка. Метод запроса (GET/POST) менять не разрешается.
4* класс кодов (ошибки на стороне клиента)
Эти коды указывают на ошибки со стороны клиентов.
400 Bad Request
Неверный запрос — запрос клиента не может быть обработан, так как есть синтаксическая ошибка (возможно, опечатка).
401 Unauthorized
Не пройдена авторизация — запрос ещё в обработке, но доступа нет, так как пользователь не авторизован.
Для доступа к запрашиваемому ресурсу клиент должен представиться, послав запрос, включив при этом в заголовок сообщения поле Authorization.
402 Payment Required
Требуется оплата — зарезервировано для использования в будущем. Код предусмотрен для платных пользовательских сервисов, а не для хостинговых компаний.
403 Forbidden
Запрещено — запрос принят, но не будет обработан, так как у клиента недостаточно прав. Может возникнуть, когда пользователь хочет открыть системные файлы (robots, htaccess) или не прошёл авторизацию.
404 Not Found
Не найдено — запрашиваемая страница не обнаружена. Сервер принял запрос, но не нашёл ресурса по указанному URL (возможно, была ошибка в URL или страница была перемещена).
405 Method Not Allowed
Метод не разрешён — запрос был сделан методом, который не поддерживается данным ресурсом. Сервер должен предложить доступные методы решения в заголовке Allow.
406 Not Acceptable
Некорректный запрос — неподдерживаемый поисковиком формат запроса (поисковый робот не поддерживает кодировку или язык).
407 Proxy Authentication Required
Нужно пройти аутентификацию прокси — ответ аналогичен коду 401, только нужно аутентифицировать прокси‑сервер.
408 Request Timeout
Тайм‑аут запроса — запрос клиента занял слишком много времени. На каждом сайте существует свое время тайм‑аута — проверьте интернет‑соединение и просто обновите страницу.
409 Conflict
Конфликт (что‑то пошло не так) — запрос не может быть выполнен из‑за конфликтного обращения к ресурсу (несовместимость двух запросов).
410 Gone
Недоступно — ресурс раньше был размещён по указанному URL, но сейчас удалён и недоступен (серверу неизвестно месторасположение).
411 Length Required
Добавьте длины — сервер отклоняет отправляемый запрос, так как длина заголовка не определена, и он не находит значение Content‑Length.
Нужно исправить заголовки на сервере, и в следующий раз робот сможет проиндексировать страницу.
412 Precondition Failed
Предварительное условие не выполнено — стоит проверить правильность HTTP‑заголовков данного запроса.
413 Request Entity Too Large
Превышен размер запроса — перелимит максимального размера запроса, принимаемого сервером. Браузеры поддерживают запросы от 2 до 8 килобайт.
414 Request‑URI Too Long
Превышена длина запроса — сервер не может обработать запрос из‑за длинного URL. Такая ошибка может возникнуть, например, когда клиент пытается передать чересчур длинные параметры через метод GET, а не POST.
415 Unsupported Media Type
Формат не поддерживается — сервер не может принять запрос, так как данные подгружаются в некорректном формате, и сервер разрывает соединение.
416 Requested Range Not Satisfiable
Диапазон не поддерживается — ошибка возникает в случаях, когда в самом HTTP‑заголовке прописывается некорректный байтовый диапазон.
Корректного диапазона в необходимом документе может просто не быть, или есть опечатка в синтаксисе.
417 Expectation Failed
Ожидания не оправдались — прокси некорректно идентифицировал содержимое поля «Expect: 100‑Continue».
418 I’m a teapot
Первоапрельская шутка разработчиков в 1998 году. В расшифровке звучит как «я не приготовлю вам кофе, потому что я чайник». Не используется в работе.
422 Unprocessable Entity
Объект не обработан — сервер принял запрос, но в нём есть логическая ошибка. Стоит посмотреть в сторону семантики сайта.
423 Locked
Закрыто — ресурс заблокирован для выбранного HTTP‑метода. Можно перезагрузить роутер и компьютер. А также использовать только статистический IP.
424 Failed Dependency
Неуспешная зависимость — сервер не может обработать запрос, так как один из зависимых ресурсов заблокирован.
Выполнение запроса напрямую зависит от успешности выполнения другой операции, и если она не будет успешно завершена, то вся обработка запроса будет прервана.
425 Unordered Collection
Неверный порядок в коллекции — ошибка возникает, если клиент указал номер элемента в неупорядоченном списке или запросил несколько элементов в порядке, отличном от серверного.
426 Upgrade Required
Нужно обновление — в заголовке ответа нужно корректно сформировать поля Upgrade и Connection.
Этот ответ возникает, когда серверу требуется обновление до SSL‑протокола, но клиент не имеет его поддержки.
428 Precondition Required
Нужно предварительное условие — сервер просит внести в запрос информацию о предварительных условиях обработки данных, чтобы выдавать корректную информацию по итогу.
429 Too Many Requests
Слишком много запросов — отправлено слишком много запросов за короткое время. Это может указывать, например, на попытку DDoS‑атаки, для защиты от которой запросы блокируются.
431 Request Header Fields Too Large
Превышена длина заголовков — сервер может и не отвечать этим кодом, вместо этого он может просто сбросить соединение.
Исправляется это с помощью сокращения заголовков и повторной отправки запроса.
434 Requested Host Unavailable
Адрес запрашиваемой страницы недоступен.
444 No Response
Нет ответа — код отображается в лог‑файлах, чтобы подтвердить, что сервер никак не отреагировал на запрос пользователя и прервал соединение. Возвращается только сервером nginx.
Nginx — программное обеспечение с открытым исходным кодом. Его используют для создания веб‑серверов, а также в качестве почтового или обратного прокси‑сервера. Nginx решает проблему падения производительности из‑за роста трафика.
449 Retry With
Повторите попытку — ошибка говорит о необходимости скорректировать запрос и повторить его снова. Причиной становятся неверно указанные параметры (возможно, недостаточно данных).
450 Blocked by Windows Parental Controls
Заблокировано родительским контролем — говорит о том, что с компьютера попытались зайти на заблокированный ресурс. Избежать этой ошибки можно изменением параметров системы родительского контроля.
451 Unavailable For Legal Reasons
Недоступно по юридическим причинам — доступ к ресурсу закрыт, например, по требованию органов государственной власти или по требованию правообладателя в случае нарушения авторских прав.
456 Unrecoverable Error
Неустранимая ошибка — при обработке запроса возникла ошибка, которая вызывает некорректируемые сбои в таблицах баз данных.
499 Client Closed Request
Запрос закрыт клиентом — нестандартный код, используемый nginx в ситуациях, когда клиент закрыл соединение, пока nginx обрабатывал запрос.
5* класс кодов (ошибки на стороне сервера)
Эти коды указывают на ошибки со стороны серверов.
При использовании всех методов, кроме HEAD, сервер должен вернуть в теле сообщения гипертекстовое пояснение для пользователя. И его можно использовать в работе.
500 Internal Server Error
Внутренняя ошибка сервера — сервер столкнулся с неким условием, из‑за которого не может выполнить запрос.
Проверяйте, корректно ли указаны директивы в системных файлах (особенно htaccess) и нет ли ошибки прав доступа к файлам. Обратите внимание на ошибки внутри скриптов и их медленную работу.
501 Not Implemented
Не выполнено — код отдается, когда сам сервер не может идентифицировать метод запроса.
Сами вы эту ошибку не исправите. Устранить её может только сервер.
502 Bad Gateway
Ошибка шлюза — появляется, когда сервер, выступая в роли шлюза или прокси‑сервера, получил ответное сообщение от вышестоящего сервера о несоответствии протоколов.
Актуально исключительно для прокси и шлюзовых конфигураций.
503 Service Unavailable
Временно не доступен — сервер временно не имеет возможности обрабатывать запросы по техническим причинам (обслуживание, перегрузка и прочее).
В поле Retry‑After заголовка сервер укажет время, через которое можно повторить запрос.
504 Gateway Timeout
Тайм‑аут шлюза — сервер, выступая в роли шлюза или прокси‑сервера, не получил ответа от вышестоящего сервера в нужное время.
Исправить эту ошибку самостоятельно не получится. Здесь дело в прокси, часто — в веб‑сервере.
Первым делом просто обновите веб‑страницу. Если это не помогло, нужно почистить DNS‑кэш. Для этого нажмите горячие клавиши Windows+R и введите команду cmd (Control+пробел). В открывшемся окне укажите команду ipconfig / flushdns и подтвердите её нажатием Enter.
505 HTTP Version Not Supported
Сервер не поддерживает версию протокола — отсутствует поддержка текущей версии HTTP‑протокола. Нужно обеспечить клиента и сервер одинаковой версией.
506 Variant Also Negotiates
Неуспешные переговоры — с такой ошибкой сталкиваются, если сервер изначально настроен неправильно. По причине ошибочной конфигурации выбранный вариант указывает сам на себя, из‑за чего процесс и прерывается.
507 Insufficient Storage
Не хватает места для хранения — серверу недостаточно места в хранилище. Нужно либо расчистить место, либо увеличить доступное пространство.
508 Loop Detected
Обнаружен цикл — ошибка означает провал запроса и выполняемой операции в целом.
509 Bandwidth Limit Exceeded
Превышена пропускная способность — используется при чрезмерном потреблении трафика. Владельцу площадки следует обратиться к своему хостинг‑провайдеру.
510 Not Extended
Не продлён — ошибка говорит, что на сервере отсутствует нужное для клиента расширение. Чтобы исправить проблему, надо убрать часть неподдерживаемого расширения из запроса или добавить поддержку на сервер.
511 Network Authentication Required
Требуется аутентификация — ошибка генерируется сервером‑посредником, к примеру, сервером интернет‑провайдера, если нужно ввести пароль для получения доступа к сети через платную точку доступа.
Каждый раз, когда задача работает на отслеживаемом устройстве, целевой сервер возвращает коды статуса HTTP, чтобы указать состояние ответа с сервера.
Эти коды статуса HTTP, или коды сетевых ошибок,будут отображаться в результатах сеанса мониторинга, а также в уведомлениях. Эти коды статуса поддерживаются Управлением по присвоенным номерам Интернета (IANA), и самый актуальный список кодов можно найти здесь.
С помощью фильтров можно удалить результаты с определенными кодами состояний из ваших задач, оповещений и отчетов. Нажмите на справочные документы RFC в списке ниже для получения подробной информации о статусных кодах.
Wh
a
t является протоколом HTTP?
Каждый раз, когда пользователь посещает веб-сайт, он делает запрос от своего браузера/клиента на сервер, который отвечает запрошенными ресурсами . Все эти запросы следуют стандарту HTTP (Протокол передачи гипертекста). The HTTP протокол, который технически является частью слоя приложения в наборе Интернет-протокола, является лишь одним много протоколовs под набором IP. В этом году Протокол HTTP является основой Интернета, используемого для связи и передачи данных между клиентами и серверами. Некоторые другие, более распространенные интернет-протоколы вы многие сталкивались включают в себя следующее:
Протоколы уровня
применения
Teh приложение лаtникогда определяет протоколы и методы интерфейса, используемые клиентов и серверов. оно есть слой wздесь взаимодействие между человеком и компьютером происходит аd информация могут быть отправлены туда и обратно с сервера через клиента/браузер и интерпретируется и отображается для пользователей.
- DNS
: Протокол
DNS (Система доменных имен) преобразует доменные имена в читаемые человеком IP-адреса для браузера, чтобы ресурсы могли быть загружены.
- FTP
: Протокол FTP (Протоколпередачи файлов) используется для передачи файлов между браузером и сервером Wiтонкой компьютерной сети.
- SMTP
: Протокол SMTP(Простой протокол передачи почты) используетсядля отправки электронной почты nd receive между отправителями и получателями в сети.
- TLS /
SSL
: Протокол SSL(Безопасные розетки слой) был официально deprecated в 2015. TLS(Transport Layer Security) была введена вместо этого, чтобы обеспечить безопасный способ общения по сети.
- IMAP
: Протокол IMAP (Протокол доступа к интернет-сообщениям) используется для управлять и получать сообщения с сервера электронной почты. В отличие от SMTP, вы не можете использовать протокол IMAP для отправки сообщений электронной почты.
- POP
: Протокол POP (Протокол почтового отделения) похож на IMAP, но разница в том, что протокол POP позволяет пользователю получать сообщения с сервера электронной почты, но сообщение затем удаляется с сервера электронной почты. Протокол IMAP может синхронизировать сообщения на нескольких устройствах. Это действительно зависит от того, как вы хотите, чтобы пользователи получили доступ к своей электронной почте.
- SIP
: The SIP(Протокол инициированиясессии) протокол сигнальный протокол, который используется в голосе в режиме реального времени, видео и приложения для обмена сообщениями. SIP является протоколом, который используется для включения и де уловки VoIP (Voice Over InternetProtocol) Услуги. SIP также используется в сочетании с другими протоколами, такими как SDP (Протокол описания сессии), UDP, TCP и TLS для передачи данных сеансов и средств массовой информации.
Протоколы
транспортного слоя
Транспортный слой обрабатывает передачу данных,которая также включает в себя TCP и UDP протоколы,и обеспечение передачи и сбора данных правильно и оперативно.
- протокол tcp: Протокол TCP (Протокол транспортного контроля) используется для обеспечения безопасности передачи между клиентом и сервером и что вся коммуникация была обработана. Например когда сервер отправляет файл по запросу клиента, слой HTTP будет связываться с транспортным слоем для настройки и отправки запрошенный файл. Протокол TCP управляет процессом сборки и отправки (а иногда и повторной отправки, если это необходимо) пакетов данных и гарантирует, что все пакеты были отправить и доставлены.
- UDP
: Протокол UDP (Протокол пользовательских данных) позволяет приложениям отправлять сообщения, называемые datagrams, другим хостам в сети.
Протоколы
интернет-уровня
Интернет-слой, также называемый сетевой слой, поручено отправки и сборки сети packets наиболее эффективным способом использования сетевых адресов / IP-адреса для отправки пакетов к месту назначения.
- IP
: IP (Интернет-протокол) protocOL, наряду с протоколом TCP, представляет собой набор требований, которые определяют, как данные отправляются через Интернет.
- ICMP
: ICMP (Протокол сообщений управления Интернетом) представляет собой сетевой протокол, который позволяет сетевым устройствам, таким как маршрутизаторы,помогать диагностировать проблемы связи. Протокол ICMP не касается обмена данных,а его цель состоит в том, чтобы enуверен, достигают ли данные предполагаемого пункта назначения.
Протоколы слоя
ссылок
Слой связи t он группаметодов связи, которая управляет передачей данных между физическими устройствами и сетью.
- ARP
: Протокол ARP (Протокол разрешения адресов)/процедура отображения IP-адресов сети на адрес физического аппаратного устройства, иначе известного как mac-адрес.
- MAC
: Протокол MAC (Средний контроль доступа) дает аппаратным устройствам их уникальный идентификационный номер. Это дает возможность сетямct и общаться с устройствами.
- Wi-Fi
: Протокол Wi-Fi (Wireless Fidelity), который является одним из протоколов, на которые все мы полагаемся в повседневной жизни, представляет собой группу протоколов беспроводной сети, которая используется для подключения к доступу в Интернет и LANs (Местные сети района).
Что такое коды статуса и почему они важны?
Есть даже расширения из Протокол HTTP, который includes HTTPS (Гипертекст Передачи Протокол Безопасный) и WebDAV (веб-распределенных авторов и версий), которыемы будем обсуждать больше в http коды статуса ниже. Когда клиент делает запрос на сервер, коды статуса позволяют узнать, был ли запрос успешным, неудавшимся или чем-то другим. Коды статуса поддерживаются Управление по присвоенным номерам в Интернете, или IANA, и включает в себя коды статуса от Интернет инженерной целевой группы (IETF) и Интернет-общества (ISOC). В соответствии с определением IANA организация, tВот пять классификаций http статус трескиes:
1xx: Информационный – Запрос получен, продолжается процесс
2xx: Успех – Действие было успешно получено, понято, и принято
3xx: Перенаправление – Дальнейшие действия должны быть приняты для того, чтобы завершить запрос
4xx: Ошибка клиента – Запрос содержит плохой синтаксис или не может быть выполнен
5xx: Ошибка сервера – Сервер не выполнил явно действительный запрос
Физические лица
и инженеры
регулярно
предлагать новые коды статуса через Запросы на Comments (RFC) Нет, нет, нет., и IETF рассмотрит, принять, и уходить в отставку status Коды по мере необходимости.
Коды статуса HTTP Разъяснения
Приведенная ниже информация содержит обзор всех наиболее распространенных кодов статуса HTTP, а также коды статуса HTTP, которые большинство людей редко видят или даже не знают о том, что существуют. Как мы уже упоминали, многие коды ответов никогда не видели пользователями,так как они просматриваются только в сети.
Первая цифра кода статуса определяет класс; однако, вторая две цифры не играют никакой роли в дальнейшем определении кода статуса для определенного типа сообщения/ответа. В рамках этих классификационных групп может быть несколько кодов статусов, и некоторые группы имеют больше кодов статуса, чем другие. И хотя Есть официально более 60 уникальных кодов статуса, большинство людей будут регулярно только сталкиваются с горсткой или два с течением времени.
Большинство из этих кодов статуса интерпретируются и обрабатываются за кулисами. Вы также увидите, что существуют группы кодов, которые помечены как “Неподписанными”. Хотя большинство кодов статуса, которые мы видим сегодня, были стандартизированы и не менялись с течением времени, эти неподписавшиеся номера оставляют место для создания дополнительных кодов статуса по мере необходимости. Кроме того, несмотря на то, что некоторые из неподписанным пользовательских кодов ранее не были частью стандарта HTTP (Hypertext Transfer Protocol), есть компании, которые используют их в качестве индивидуальный ответ сервера для пользователей, что позволяет компаниям лучше устранения неполадок пользователи могут испытывать. Нажмите на ссылки справочного документа RFC в списке ниже для получения подробной информации о конкретном коде статуса HTTP.
Полный список и обзор кодов статуса HTTP
1
xx Статус-код
s
: Информационный
1xxкоды статуса HTTP-уровня говорят пользователям, что запрос, они иметь сделано было получено, но все еще обрабатывается. Коды статуса 1xx не обязательно означает, что есть проблема, это яs просто там, чтобы позволить вам что-то все еще находится в процессе завершения. включенный в этой группе всего лишь горстка 1xx коды, с которые пользователи могут столкнуться и должны быть в курсе.
100
: Продолжить
Status Code 100 Continue сообщает вам, что часть запроса была получена без каких-либо проблем. у этот момент все Хорошо, но по-прежнему в процессе. Если оставшейся части запрос не отклонен, служитьР отправит окончательный ответ после того, как запрос будет завершенЭд. Если заготовки HTTP были отклонены, это гарантирует, что клиент не отправить запрос на тело. Однако, если запрос делать не Contain заголовок поле, то браузер будет просто игнорировать resp onse. S ee RFC7231, раздел 6.2.1
для получения дополнительной информации.
101: Протоколы переключения
Там было много протоколов HTTP, созданных с скромного начала Интернета. Первая документированная версия протокола HTTP была HTTP 0.9. Текущая итерация HTTP 2.0 или HTTP/2. Код статуса 101 Протоколы переключения указывают на что сервер принимает запрос от клиента на переход на другой протокол HTTP через поле заголовка обновления. Когда браузер делает запрос на страницу, он может получить тем HTTP код статуса 101, а затем обновление заголовок, whiч Указывает разрыв переключается на другую версию HTTP. Наконец, тон предполагает, что сервер согласится переключать протоколы только тогда, когда это явыгодно, как обновление / переключение на новый протокол по сравнению со старым. See RFC7231, раздел 6.2.2 для получения
дополнительной информации.
102: Обработка
Статус c ода102 Обработка используется только с WebDAV (Web Распределенная авторство и версия). Большинство страниц только для чтения. WebDAV является продолжением HTTP протокол, который дает клиентам возможность t o редактироватьсодержимое удаленно и передавать файлы. Teh WebDAV протокол был создан, чтобы дать пользователям возможность коллабораратe на файлах с другими, любить Dropbox или Google Drive. Код статуса 102 являетсян промежуточный код ответа, сообщая клиенту, что сервер принял полный запрос, но не выполнил запрос. Этот код статуса HTTP отправляется только на сервере если ля запрос занимает более 20 секунд. видеть RFC2518, раздел 10.2 для получения
дополнительной информации.
103: Ранние подсказки
Коды статуса 10
3 Ранние подсказки в
настоящее время в оценке
/
экспериментальной фазы. Этот код статуса будет использоваться при предварительной загрузке внешнего контента/ресурсов. Протокол HTTP/2 позволяет подталкивать контент к ускорению доставки, чтобы веб-разработчики могли продвигать определенный контент в ожидании загрузки других внешних ресурсов. Это выгодно с точки зрения конечных пользователей, поскольку сводит к минимуму воспринимаемое время загрузки. Tего код ответа HTTP будет указывать в браузер, что сервер собирается отправить окончательный ответ,
наряду с заголовком поля, включенные в ответ.
S
ee
RFC8297, Раздел 2 для получения
дополнительной информации
104-199: Неподписанным
Коды статуса от 104 до 199 в настоящее время не подписаны.
2xx Код статуса: Успех
Коды статуса HTTP уровня 2xx указать, что запрос клиента с сервера был успешно получениобработан. В отличие от кодов статуса 4xx, коды статуса 2xx — это то, что вы хотите получить. Как 1xx коды статуса, 2xx коды статуса обрабатываются за кулисами и редко видели пользователи,если они используют разработчика или SEO инструменты, чтобы увидеть все ответы HTTP страницы.
200: ХОРОШО
Один из наиболее широко используемых кодов статуса HTTP, код статуса 200 OK используется, чтобы указать, что запрос был получен,обработан и был успешным. Однако, в зависимости от используемого метода запроса (GET, HEAD, POST, PUT, DELETE, OPTIONS, TRACE). Например, если запрос является запросом GET, ответ будет включать ресурс. Если это есть любой из других повторноквесты, ответ будет включать в себя результат действий. Это Статус 200 код один более 10 других кодов ответов это также кэшируемо, что означает, что он может быть сохранен и извлечены через клиента, чтобы не придется делать еще один запрос на сервер в будущее. See RFC7231, раздел 6.3.1 для получения дополнительной информации.
201: Создано
Созданный в 201 году код статуса похож на код статуса 200 OK, однако код статуса 201 означает, что запрос был успешно обработан, и онвернулся или создал ресурс или resources в процессе . A Код статуса 201 обычно используется для запросов PUT. Например, when используется запрос PUT,новый ресурссоздается на URL указаны в запросе. Если в запросе POST есть код статуса 201, это означает, что ресурс был создан в другой конечной точке/местоположении API. See RFC7231, раздел 6.3.2
для получения дополнительной информации.
202: Принято
Teh 202 принятый status код означает, что сервер имеет получил запрос на обработку, и это яs были приняты, но запрос имеет не Закончилось. Он также делает не означает, что запрос в конечном итоге будет принят, так как он будет зависеть от того, когда происходит фактическая обработка. Этот тип запроса обычно рассматривается в API где пакетный процесс работает один раз в день. с там есть нет способа для HTTP общаться после запрос удался или соединение пользователя было закрыто, API может отправить электронное письмо пользователю notifying им что этот процесс увенчался успехом. See RFC7231, Section 6.3.3 для получения дополнительной информации.
203: Неуточного информация
Код статуса не авторитетных информационных данных 203 обычно используется HTTP прокси или третья сторона. Прокси, сидящий между клиентом и сервером может изменить ответы до достижения клиента. Кому указывать что что-то изменилось во время процесс, код статуса 203 используется. Однако недостаток этого метода заключается в том, что оно яs не возможно узнать, что исходный код статуса был если прокси-сервер что-то изменил в ответе. Предлагаемый обходной путь заключается в том, чтобы использовать предупреждающий заголовок наряду с 214 статус код который используется Кому указываетна то, что произошло изменение или изменение вonse. Использование wзаголовок arning позволяет исходному коду статуса пройденный through. See RFC7231, S ection6.3.4 для получения
дополнительной информации.
204: Нет содержания
Код статуса 204 Нет контента Указывает что ответ был успешно доставлен сервером и выполнены и не дальнейшее content должен быть отправлен в тело ответа. Например, если запрос отправляется в форме на странице, как только репоnse отправляется, клиент/браузер не должен изменять представление, то есть форма должна не обновляться или направлять Пользователей к новому pagми. Нет дополнительное содержимое должно быть заменено или отображаться с точки зрения точки зрения пользователя. See RFC7231, S ection6.3.5 для получения
дополнительной информации.
205: Сброс содержимого
Как 204 No Content Status code, код статуса 205 Сброс Содержимое указывает на то, что сервер успешно отправил запрос и требует от агента пользователя обновить/сбросить представление на его илиiгинал состояние. Если мы используем пример формы на странице, один раз пользователь завершает и представитьс формой, клиент / браузер должен очистить форму обратно висходное состояние, чтобы пользователь может принять фуrtее действия. A 205 код статуса предполагает, что никакого дополнительного контента предоставляться не будет. See RFC7231, раздел 6.3.6 для получения
дополнительной информации.
206:
Частичное
содержание
A 206 Код статуса частичного содержимого может использоваться для различных запросов и, как правило, Указывает что сервер выполнила частичный запрос на ресурс. Например, если клиент ищет только часть, или диапазон, из ля специфический ресурс или страница. Еще один пример того, где Статус 206 код используется на видео. Клиент может загружать только видео по частям, чтобы не придется ждать видео буфера или загрузки, помогая избежать негативного пользовательского опыта, где пользователю придется ждать дольше перед воспроизведением видео. Это нормальная лучшая практика среди видео плеера HTTPs, чтобы избежать пропускной способности и предполагаемых проблем задержки. See RFC7233, раздел 4.1 для получения
дополнительной информации.
207: Мульти-Статус
Teh 207 Мульти-статус status код Предоставляет статус для нескольких независимых процессов и используется серверами WebDAV. Сообщение/ответ по умолчанию является текстовым/XML-сообщением. оно Указывает что было проведено несколько операций и что статус каждой операции можно просмотреть в корпусеонсе. Коды статуса могут варьироваться в зависимости от одной из пяти категорий. Коды ответов будут варьироваться в зависимости от количества подпросов. В отличие от других 200 скульптурs коды, код статуса 207 не подтвердить, что этот процесс был успешным. Клиент должен просмотреть тело каждого запроса, чтобы определить, если он был успешным или нет. See RFC4918, раздел 11.1 для получения
дополнительной информации.
208: Уже сообщено
Teh 208 Уже сообщено status код является еще одним кодом статуса, используемым в расширении WebDAV. любить тем 207 статус код, это позволяет клиенту/браузеру указывать на сервер, который ресурс уже обработан. Когда клиент запрашивает ресурсы, возможно, что ответ включает дублирующиеся ресурсы, что означало бы, что те же ресурсы будут отправлены несколько раз, что является излишним. Это 208 ответ на статус позволяет избежать возможности обработки и повторения тот же ответ. 208 Код статуса Ответы появится только в теле ответа и никогда не в качестве фактического ответа HTTP. See RFC5842, раздел 7.1 для получения
дополнительной информации.
209-225: Неподписанным
Коды статуса от 209 до 225 в настоящее время не подписаны.
226:
IM Используется
Используемый код статуса 226 IM (Instance Manipulations) используется для обозначения того, что сервер выполнил запрос GET на ресурс,ноответ является представлением одного или нескольких манипуляций экземпляра, которые были применены к текущему экземпляру. В протоколе HTTP есть расширение под названием Delta кодирования в HTTP, который поддерживается на стороне сервера. Если это implemented, клиент может запросить изменения в кэшированную версию, и сервер отправит изменения вместо повторнойотправки всего повторногоисточника снова. Чтобы реализовать эту функцию, запрос клиента/браузера должен укажите, какой тип чата поддерживается. Если сервер поддерживает эту функцию, он будет отвечать 226 код статуса и изменения. Если 200 код статуса отправляется обратно, что указывает на то, что функция не поддерживается. See RFC3229, раздел 10.4.1 для получения
дополнительной информации.
227-299: Неподписанным
Коды статуса от 227 до 299 в настоящее время не подписаны.
3xx: Перенаправление
Коды статуса 3xx используются в случаях перенаправления URL. Веб-сайты постоянно меняются и развиваются, так что могут быть времена, когда маркетеры должны направлять пользователей на обновленную или другую страницу. Перенаправления помогают облегчить пользователям возможность поиска и поддержания ваш рейтинг в поисковых системах. Действия перенаправления могут осуществляться браузером автоматически или могут потребовать дополнительного взаимодействия с пользователями. Коды статуса 3xx HTTP имеют жизненно важное значение для SEO (Оптимизация поисковых систем) и пользовательского опыта, а также рассказать поисковым системам, какой контент вы хотите, чтобы ползать и индексировать. яf не реализован должным образом, пользователи могут быть направлены в непреднамеренное место,что может привести к 4xx код статуса и может повлиять на SEO оценки качества.
300: Несколько вариантов
Код статуса 300 Multiple Choices указывает на то, что ресурсe переехали может перенаправить в несколько мест. В этом случае пользователь должны решить, какой ресурс использовать. Сервер может указывать предпочтительным выбором и , которые должны быть указанный в заголовке поле где агент пользователя может автоматически перенаправиться на предпочтительный выбор. В практическом использовании tего статусный код используется редко, так как нет стандартизированного способа выбора из нескольких ответов. See RFC7231, раздел 6.4.1 для получения дополнительной информации.
301: Перемещено постоянно
Код статуса 301 Moved Permanently используется для обозначения того, что целевой ресурс перемещен в постоянное местоположение. Код статуса 301 говорит браузеру/клиенту использовать это новое местоположение или URL в заголовке . Наряду с 301 status код, новый URL будет данный в ответ а также обновлять любые URL-адреса в предыдущий location(ы), наряду с обновлением до нового URL. See RFC7231, раздел 6.4.2 для получения дополнительной информации.
302: Найдено
Код статуса 302 Найдено указывает клиенту/браузеру, что ресурс, к который он получает доступ, временно расположенный в другом месте. В отличие от кода статуса 301, 302 код статуса указывает на временный ход,поэтому клиент не должен автоматически обновить его дюны на новое место, как опять же, это ясекунда должны быть временными. Пример того, где 302 статус код должен использоваться, если ар многократный URL-адреса, но они может быть подан в разных языках. Пользователь может прийти на определенный URL, но клиент может перенаправить их автоматически т оннадлежащей странице на основе их настройки браузера и использовать этот on последующих посещений. Это яс отметил, что в некоторых случаях браузеры могут изменить запрос от POST на GET. В случае, если это действие не впользув состоянии, 307 статус код должен быть использован. See RFC7231, раздел 6.4.3 для получения
дополнительной информации.
303: Смотрите другие
Код статуса 303 See Other указывает на то, что сервер будет перенаправлять клиент/браузер на другой ресурс. Ресурс будет указано в качестве URL поля заголовка. В отличие от кодов статуса 301 и 302, не означает, что ресурс имеет темпРили или постоянно двигаться, этоцель состоит в том, чтобы указать Url где ответ на specifядо запрос может быть основывать через запрос GET. 303 коды статуса должны не быть кэшированы, однако, ответ на последующий запрос может быть кэширован. Типичное использование 303 статус код будет обеспечивать пользователям do не случайно повторно представить формировать данные через запрос POST. Они должны быть направлены на новую страницу. Если нет, они могут неосознанно нажать Кнопка “Назад” всвоем браузере , который может попросить их повторно представить снова, что приводит к unнеобходимойнеобходимости duplicatэлектронной представлений. See RFC7231, раздел 6.4.4 для получения
дополнительной информации.
304: Не изменено
Код статуса 304 Не измененный отправляется в ответ на условный запрос GET или HEAD. Клиенты/браузеры могут отправлять условный запрос,например, If-Match
, If-None-Match
, If-Modified-Since
, If-Unmodified-Since
,или If-Range
, спрашивая, если конкретный ресурс был изменен с определенной даты/времени. этот есть сделано только в том случае, если клиент ранее получил доступ, скачал и сохранил ресурс. Если это было измененный с момента последнего доступа к этой конкретной дате/времени, сервер вернет код статуса 200 OK. Если он имеет не были изменены с этой даты/времени, 304 статус код отправляется в качестве ответа, указывающий что сохраненный ресурс должен быть обслужился, так как он не Был модифицированный с момента последнего доступа к нему. See RFC7232, раздел 4.1 для получения дополнительной информации.
305: Используйте прокси
305 Использование прокси-кода статуса isdeprecated код статуса, который больше не используется из-за соображений безопасности. оно был использован, чтобыя ndicate для клиента, что resource они были доступ должен быть доступ через прокси. Для получения дополнительной информации о коде статуса 305 Use Proxy см. RFC7231, раздел 6.4.5
306:
Неиспользованные
Как и код статуса 305, 306 Неиспользованный статус первоначально был известен как Switch Proxy. Teh 306 код статуса использовался в предыдущем спецификация. Его намерение состояло в том, чтобы использоваться в указание клиенту, что последующие requests на ресурс должны использовать прокси, который был указан. Это было расценено как проблема безопасности, поэтому она больше не используется. Для получения дополнительной информации о 306 Неиспользованный код статуса, см. RFC7231, раздел 6.4.6
307: Временное перенаправление
любить 302 Найдено перенаправить код статуса, tон 307 Временное перенаправление status код Указывает клиенту/браузеру, что ресурс или документ доступен по другомувременный URL и возвращает этот URL. Поскольку перенаправление является временным и может измениться, браузер/клиент должен продолжать доступ к текущему URL-адресу для последующий Запросы. Основное различие между 302 статус код и 307 статус код заключается в том, что 307 статус код не позволяет изменять запросы от ля Поместить запрос на Получить просьба, так что если клиент запросил запрос POST, он будет перенаправлен и инициировать запрос POST снова. See RFC7231, раздел 6.4.7
308: Постоянное перенаправление
Код статуса Постоянного перенаправления 308 — это кэшируемый код состояния (если не реализованы элементы управления кэшем), указывающий на то, что целевой ресурс теперь находится по постоянному URL-адресу иподмыкает equent запросы должны быть направлены на этот URL, а также. Кроме того, клиент должен обновлять любые старые закладки на новое место. Код статуса 308 очень похож на код статуса 301, однако, если код статуса 308 отправлен, client должен инициировать и отправить тот же запрос на целевое местоположение. A 301 код статуса не делаетt должны сделать это. Большинство браузеров/клиентов меняют запрос POST на GET request. See RFC7238, раздел 3 для получения
дополнительной информации.
309-399: Неподписанным
Коды статуса от 309 до 399 в настоящее время не подписаны.
4xx: Ошибка клиента
Классификация с большинством кодов статуса HTTP, Коды статуса 4xx HTTP не то, что вы хотите, чтобы ваши пользователи видели. Любой код статуса, который начинается с 4 означает, чтоя с проблемой с клиентом. Коды статуса 4xx обычно генерируются, если страница была удалена и не перенаправлена, или что-то неправильно введено в URL или ссылку. Если пользователи получают страшный код статуса 4xx, это означает, что я с проблемой с клиентом/браузером, получающим информацию с сервера. Эти являются ошибки, которые пользователи будут видеть всплывающие на экране и создать негативный пользовательскийопыт, что приводит к немного разочарования и их глядя в другом месте. Например, если поисковые системы сканируют ваш сайт и получают ошибку 404, это будет выявиться как ошибка в отчете. A несколько 404 ошибок штрафа и поисковые системы не обязательно рассматривать их как негативнуювещь, но 404, что перенаправляет на 404 может негативно влияют на ваш SEO. Мало того, что, если страница, о котором идет речь, используется для увеличения трафика или продаж, это может привести к потере потенциального дохода.
400: Плохой запрос
400 плохой запрос код состояния ошибки означает, что сервер не может обработать запрос из-за проблемы с клиентом. Это может быть из-за любого количества причин, таких как слишком большой файл, плохой синтаксис, недействительный URL, или какой-либодругой вопрос ca, используемый сторонним приложением, поэтому код статуса 400 иногда используется в качестве улова всех кодов статуса, даже если есть проблема на стороне сервера. Это может привести к устранению неполадок 400 статус код немного больше времени и трудно, однако, наряду с 400 status ошибка кода и информация заголовка, tон сервер может предоставить дополнительный ответ вдоль остроумияh его, который может быть отображен на тем пользователь, чтобы помочь отождествлять проблемы и облегчить процесс устранения неполадок и диагностики ошибки. See RFC7231, раздел 6.5.1 для получения дополнительной информации.
401: Несанкционированный
Несанкционированная ошибка 401 код статуса указывает на то, что запрос не включает в себя соответствующие учетные данныепроверки подлинности, authentication неудалось, или пользователь должен войти в систему. Клиенту требуется аутентификация с сервера. Термины, авторизованные и аутентифицированные, часто используются взаимозаменяемо, но они имеют в виду отдельные вещи. A код статуса 401 является strictly обеспокоены с аутентификацией. В тех случаях, когда вы хотели бы сообщить клиенту, что они не допускаются Совсем, то код статуса 403 должны быть реализованы. Aсо спецификацией, тем 401 статус код должен также включать WWW-Аутентикат заголовок с сервера ответ, указывающий клиенту, какая схема аутентификации или метод сервера требуютes. See RFC7235, раздел 3.1 для получения дополнительной информации.
402: Оплата требуется
Первоначально создатьd как часть способа, чтобы потенциальные будущие цифровые методыоплаты , 402 Оплата Необходимая ошибка статусный код официально зарезервирован для использования в будущем, но он использовал некоторые ограниченные,но редкие, ситуации. Для получения дополнительной информации о коде ошибки 402 Оплата требуется, см. RFC7231, раздел 6.5.2
403: Запрещено
403 Запретный код статуса ошибки указывает на то, что запрос от клиента был понят, но сервер не будет авторизоватьего, поэтому клиент неможет получить к нему доступ. Сервер может сделать известным причина его ж плохонесанкционировать запрос в ответ, который может быть связано с различными причинами, как неправильный пароль или имя пользователя. В отличие от 401 статус код, требующий проверки подлинности, 403 статус код может указывать что клиент действительно не имеет разрешения для доступа к этим ресурсам, поэтому аутентификация в данном случае есть не возможный. See RFC7231, раздел 6.5.3 для получения дополнительной информации.
404: Не найдено
Один из наиболее распространенных и печально известных кодов статуса, с которыми сталкиваются пользователями и разработчики, 404 Не найдено ошибка код статуса Указывает что ресурс Обязательно с сервера делает не существуют или есть not готовы предоставить его клиенту. A 404 статус код не будет указывать ли йми отсутствие предоставление ресурса временно или постоянно, но клиентможет сделатьсубтитры e quent запросы на доступ к нему. В тех случаях, когда известно, что ресурсы постоянно исчезли, код статуса 410 должен используется. 404 коды статуса, по умолчанию, также являются кэшируемыми, если другие элементы управления кэшем areinместо. See RFC7231, раздел 6.5.4 для получения
дополнительной информации.
405: Метод не допускается
Код статуса ошибки 405 не допускается указывает на то, что конкретный ресурс, запрошенный клиентом, не поддерживается сервера. Метод 405 не допускается любить 403 Длястатусный код, однако, 403 статус код Указывает что ресурс может быть доступеноно яs только то, что клиент делает не иметь необходимое разрешение для выполнения запроса. Наряду со статусом 405 Method Not Allowed сервер должен указывать тем аппроприяте и поддержанный методика для целевого ресурса. Для получения дополнительной информации о 405 Метод не допускается код ошибки, см. RFC7231, раздел 6.5.5
406: Неприемлемо
Как и код статуса ошибки 405 Method Not Allowed, код ошибки 406 Not Acceptable указывает на то, что нет поддержки для конкретного запроса. В этом случае тон 406 Неприемлемый код статуса указывает, что сервер понял запрос, но ответ не поддерживается или понимается клиентом. Клиент может запросить конкретные версии ресурса в заголовке, такие как A-IM или Принять язык, среди прочего, но если сервер делает не поддерживать его, он отвечает кодом статуса 406 Not Acceptable. Сервер может либо ответить со списком соответствующий ресурс идентификаторы, которые клиент может выбрать От. See RFC7231, раздел 6.5.6 для морми информация.
407: Требуется аутентификация прокси
Требуется проверка подлинности 407 прокси ошибка status код любить 401 Несанкционированный код статусаоднако в случае 407 статус код для того, чтобы использовать прокси, клиент должен быть сначала проверен. Прокси-сервер должен вернуть метод для проверки подлинности. Не так часто сегодня из-за роста VPN, прокси выступать в качестве посредников между пользователями/клиентами и Интернетом, позволяет пользователям получить доступ к ресурсам быстрее, так как содержание типично Кэшированные, и может тоже обеспечить уровень безопасности и анонимности для пользователей. Для получения дополнительной информации о коде ошибки 407 Прокси-аутентификации см.
408: Запрос тайм-аута
Код состояния ошибки тайм-аута 408 Запрос означает, что сервер не получил запрос от клиента в указанный срок. Задержка запроса от клиента может быть вызвана по целому ряду причин, таких как медленное или сломанное соединение. После того, как это время прошло, статус тайм-аута 408 Запрос отправляется сервером и пользователь/клиент может повторно подать запрос повторно. Для получения дополнительной информации о коде ошибки тайм-аута 408 Запрос см.
409: Конфликт
Конфликт 409 ошибка код статуса Указывает что запрос от клиента может not обрабатываются из-за конфликта с сервером. Запрос от клиента был в порядке, но там Были проблемы на стороне сервера, что предотвращает выполнение запроса. Примером этого может быть запрос на редактирование конкретного файла, удалитьd, или созданный пользователем, но эти функции не допускаются. Наряду с ответом 409 сервер должен вернуть инструкции о том, как пользователь может решить эту проблему или узнатьe, почему возникает проблемаg. See RFC7231, раздел 6.5.8 для получения
дополнительной информации.
410: Ушли в прошлое
Как и код статуса ошибки 404 Not Found, который мы рассмотрели ранее, the410 Gone status Code указывает на то, что ресурс, который запрашивает клиент, был удален и больше недоступен с сервера. нo дополнительная информация предоставляется с точки зрения перенаправления URL или места доступа к ресурсу. Он был удален на неопределенный срок. Для получения дополнительной информации о коде ошибки 410 Gone см.
411: Требуется длина
Код статуса требуемой ошибки 411 Length указывает на то, что сервер не разрешает запрос от клиента из-за предопределенного органа запроса content length. Запрос может быть повторен клиентом, если в последующем запросе ресурса указан действительный заголовок Content-Length. Для получения дополнительной информации о 411 Длина Требуемый код ошибки, см RFC7231, Раздел 6.5.10
412: Предпосылки не выполнены
Условные запросы на сервер допускаются в рамках протокола HTTP. Если право условия выполняются в запросе, запрос выполняется и обрабатывается сервером. Код статуса ошибки 412 Precondition Failed означает, что одно или несколько условий в заголовке запроса не удалось. Например, это может быть использовано в запросе GETs nda условный запрос Использованы Кому повторно включитересурс только в том случае, если этот ресурс гас изменилась. Для получения дополнительной информации о коде ошибки 412 Precondition Failed см.
413: Запрос сущность слишком велика
Это 413 Запрос Сущность Слишком большой ошибка код статуса Указывает что сервер wбольные не принять и обработать запрос due к запросу тело быть больше, чем сервер будет позволяют или могут процесс. Такие примеры включают загрузку файла, в котором файл превышает максимум размер загрузки установленный сервером или когда максимальное количество загрузок было превышено. В тех случаях, когдаe 413 Запрос слишком большой ошибки происходит, сервер может полностью закрыть соединение, чтобы предотвратить клиента от продолжает отправлять запрос. В некоторых случаях, оно ясекунда вероятно, сервер позволит клиенту повторить запрос, если этояс временным условием, и должны включать это сообщение обратно клиенту. ХоуевER, это яs возможно, что запрос может привести к тому, что у самого сервера закончились физические Диске. В этом случае ошибка 507 Insufficient Storage является ответом, клиент должен получить обратно. See RFC7231, раздел 6.5.11 для получения
дополнительной информации.
414: URI слишком долго
Не очень распространенный ответ сервера, код статуса 414 URI Too Long означает, что сервер отказал клиенту в запросе из-за URL-адрес длиннее, чем сервер может обрабатывать. братанwsers и поисковые системы действительно ставят ограничения на длину URL-адресов, частично, чтобы избежать DDoS-атак илиошибок кода, но путь URL или HTTP не имеют явные ограничения. Так что, если лиmit превышает то, что устанавливается сервером, 414 URI Слишком длинная ошибка будет происходить. Для получения дополнительной информации о 414 URI Слишком длинный код ошибки, см. RFC7231, Раздел 6.5.12
415: Неподдерживаемый тип мультимедиа
Код статуса неподдерживаемого типа мультимедиа 415 указывает на то, что сервер не может обрабатыватьтело запроса или часть телазапроса из-за неподдерживаемого формата мультимедиа. Даже если запрос от клиента поддерживается, ошибка 415 может быть возвращается, если в теле запроса нет неподдерживаемого содержимого. Код ошибки 415 Unsupported Media Type похож на код статуса 406 Not Acceptable. Разница в том, что 406 Неприемлемый код ошибки не из-за содержания в заголовке или кодирования, а, скорее, это из-за значения, установленного в заголовке HTTP. Обеспечение того, чтобы сервер может обрабатывать определенный формат вместе с отправкой запроса с правильной формой, позволит избежать 415 Неподдерживаемого кода статуса типа мультимедиа. See RFC7231, раздел 6.5.13 для получения
дополнительной информации.
416: Диапазон не удовлетворяется
Как уже упоминалось в коде статуса 206 Partial Request, клиенты/браузеры могут запросить частичный ответ обратно из служитьr, будь то is определенная часть файла или видео, например. Клиенты и серверы используют так называемые запросы диапазона выполнить эти запросы. Однако, если сервер не поддерживать этитипы запросов, он будет просто вернуть весь resource вместе с 200 OK ответ. Если сервер поддерживает запросы диапазона, thaт является где 416 Частичный запрос ошибка код статуса входит в картину и вернет то, что клиент просит. В ситуации, когда сервер поддерживает запросы диапазона, но сервер доуs не согласен с просьба получено, потому что это не подпадают под диапазон Или возможно, за ее пределами указанный диапазон, 416 Диапазон не satisfiable ошибка код статуса будет возвращен. See RFC7233, раздел 4.4 для получения дополнительной информации.
417: Ожидание не оправдалось
Клиенты могут использовать заголовок Expect,
чтобы указать, что он ожидает определенного поведения с сервера. Как описано в коде статуса 100 Continue, клиенты могут знать с сервером, примет ли он запрос. Если это произойдет, сервер ответит кодом статуса 100 Continue. Если нет, то tон 417 Ожидание не удалось ошибка код статуса Указывает тот сервер делать не понять ожидать заголовок или поддержать его, поэтому он можетне процесс client просьба. Для получения дополнительной информации о коде ошибки ожидания 417, см. RFC7231, раздел 6.5.14
418-42
0
: Неподписанным
Ошибка сtatus коды 418-421 в настоящее время не подписаны, однако, код статуса 418 Я Маленький чайник используется в некоторых случаях. Созданный как первоапрельская шутка, он получил некоторую тягу и иногда используется в качестве шутки или пасхальное яйцо и не используется для реальных повседневных целей. Большинство браузеров игнорировать его, как это яне официальный код статуса. Другой в этой категории является 420 Улучшение вашего спокойствия код статуса ошибки, который был представлено Twitter. оно is nкод ошибки который говорит клиентам что они areбудучи тарифом лимитированн, which ограничение на числезапросов они могут сделать в пределах определенного периода времени. С 1989года редактор RFC будет публиковать более юмористические RFCs. Википедия имеет полный изношенном
более юмористические RFCs апреля .
421: Неправильный запрос
Представлено с протоколом HTTP/2, тем 421 Неправильный запрос ошибка код статуса означает, что сервер received запрос, который был не предназначен для этого конкретного сервера и не может должным образом отреагировать. Это может произойти, если DNS (Система доменных имен) настроена на неправильный IP-адрес. Клиентов обязаны включают в себя Узла заголовок в запросе. Это также может произойти с сайтами, которые имеют один SSL сертификат из нескольких доменов. Это может быть вызванон проблема с хостинг-провайдером и / или конкретного браузера используется, так что это может потребовать много работы, чтобы действительно понять, где проблема заключается. Если сервер знает, что домен не настроен на request, он ответит с 421 Неправильный запрос ответ на ошибку. See RFC7540, раздел 9.1.2 для получения дополнительной информации.
422:
Необработаемое
образование
A 422 Необработанный сущность ошибка код статуса Указывает проблема с содержание синтаксис запроса. Это расположение запроса был понят серверомно тем поля в запросе недействительны или же не соответствуют тому, что ожидает сервер. любить 102 Обработка и 207 Мульти-Коды статуса статуса, 422 Необработанный сущность ошибка код часть протокола WebDAV и часто используется с веб-сервисами/API. Как правило, 400 Bad Request является рекомендуемой реакцией, но если WebDAV поддерживается, то tон 422 Необработанный сущность должны быть использованы. See RFC4918, раздел 11.2 для получения дополнительной информации.
423: Заблокирован
Как и код статуса ошибки 422 Unprocessable Entity, ошибка 423 Locked код статуса также является частью протокола WebDAV. Код статуса 423 Locked указывает на то, чтоe, ресурс, или непосредственно, например, не может быть отредактирован. Его цель состоит в том, чтобы избежать нескольких пользователей обновления файла, ресурса и т.д., одновременно. Эти ресурсы могут быть разблокированы для редактирования, wкурица необходима. Для получения дополнительной информации о 423 Заблокированный код ошибки, см. RFC4918, раздел 11.3
424: Неудачная зависимость
Другой код статуса, поддерживаемый WebDav протокол; 424 Неудачная зависимость Код статуса ошибки указывает запрос от клиента не удалось из-за зависимости от другого запроса, который также не удалось. WebDAV использует метод известный как PROPPATCH
для обновления определенных свойствресурсов e. Кому указать, был ли ресурс успешно обновлен или нет, WebDAV использует стандартные ответы на код статуса HTTP. Кроме того, код статуса неудавшейся зависимости 424 используется только в тех случаях, когда ответ в органе HTTP имеет 207 Multi-Stасус ответ. So, если PROPPATCH
используется и ресурс не обновляется, он отправит код статуса 4xx с указанием есть ошибка обновления ресурса, 424 Неудачный код ошибки зависимости также будет отправлен вместе с другими запросами, которые зависели от того, что обновление будет успешным, но не удалось . See RFC4918, раздел 11.4 для получения
дополнительной информации.
425: Слишком рано
Не распространенный код статуса HTTP, который используется сегодня, код ответа на ошибку 425 Too Early используется в ситуациях, когда клиент HTTP подключается к клиенту HTTPS. В ходе процесса может потребоваться много времени, чтобы установить связь между сервера и клиента. Этот процесс может создать проблему безопасности, поэтому сервер скажет клиенту повторить запрос до тех пор, пока безопасное соединение TLS (Transport Layer Security) не сделанный. В этом случае код статуса 425 Too Early будет возвращен. Для получения дополнительной информации о коде ошибки 425 Too Early см.
426: Требуется обновление
Код состояния ошибки 426 Upgrade Required указывает клиенту, что он должен использовать новый протокол для того, чтобы отправлять запросы на сервер. Например, клиент может использовать и старую версию HTTP, например HTTP/1.0, но сервер Требует HTTP2.0. Сервер не принимает запрос, но будет реагировать на client указывающий какие протоколы или протоколы являются приемлемыми. После обновления клиента до требуемый протокол (ы), сервер будет принимать запросы от клиента. Для получения дополнительной информации о коде ошибки 426 Upgrade Required см. RFC7231, раздел 6.5.15
427: Неподписанным
Ошибка сtatus код 427 в настоящее время не подписан.
428: Требуется предварительное условие
Код статуса требуемой ошибки 428 Precondition указывает клиенту, что запрос на сервер должен быть условным запросом. Как уже упоминалось в 304 Не измененный код статуса, клиент может отправить условный запрос на серверкак Если-матч, Если-Нет-матч, Если-изменено-Since, Если-неизмененные-Sinceили If-Range. Однако эти условные запросы не Обязательно. Если они требуются сервером, сервер Указывает это, отвечая с 428 Предварительный требуемый код ошибки. Это немного по аналогии с 412 Предварительный код ошибки, но 412 Предварительное условие не удалось код ошибки возвращается только в том случае, если клиент включил условный запрос в заголовок, делает не мatch состояние ресурса на сервере‘секунда сторона. Уведомляя пользователей о том, что запросы должны быть условными по своему характеру, это гарантирует, что пользователи работают с правильными файлами или ресурсами и помогает предотвратить пользователей от потенциально перезаписи изменений. See RFC6585, раздел 3 для получения дополнительной информации.
429: Слишком много запросов
Так же, как имя ошибки код указывает ,42 9Слишком многозапросов кодстатусаошибки означает, что ограничение скорости осуществляется, и что client перешел предел того, как много запросов он может сделать за определенное время. Наряду с 429 Слишком много запросов ошибка ответ, она должна быть указанный как долго ждать, прежде чем инициирующий новый запрос на сервер, но это не прежде Обязательно сделать это. Для получения дополнительной информации о коде ошибки Слишком много запросов см. RFC6585, раздел 4
430: Неподписанным
Код статуса ошибки 430 в настоящее время не подписан, однако, в свое время было предложено стать кодом ошибки 430 Would Block в протоколе HTTP/1.1. Цель состояла в том, чтобы служить ответом на то, что известный как организация конвейера. Это позволило клиентам отправлять несколько запросов, за подключение TCP, в то время как он ждал сервера, чтобы репоnd. ят никогда официально не сделал это в стандарт, как HTTP protocПР был обновлен до HTTP/2.0 и поддержка трубопроводов никогда не был широко принят.
431 Запрос хедерсов слишком большой
Код статуса 431 Request Headers Too Large указывает на то, что клиент отправил заголовок request, превышающий допустимый предел. Различные веб-серверы имеют различные допустимые ограничения размера, когда дело доходит до заготовок. Это может быть связано с тем, что индивидуальный запрос заголовка слишком велик или из-за всего комбинированного размер всех запросы заголовка. В большинстве случаев, это может быть легко исправить, как это яобычно вызвано отправкой слишком много печенья или файлы cookie, которые слишком велики по размеруфайла. Для получения дополнительной информации о 431 Запрос Хедерс Слишком большой код ошибки, см. RFC6585, Раздел 5
432-450
:
Неподписанным
Коды статуса ошибки от 432 до 450 в настоящее время не подписаны.
451:
Недоступен по юридическим причинам
Ошибка status код 451 недоступен по юридическим причинам Указывает сервер отказывается обслуживать запрошенный контент благодаря законный Причин а также должны включать причину ошибки в ответ на пользователя. Причины использования 451 недоступного из-за юридических причин кода статуса ошибки могут включать правительства, которые подвергают цензуре определенныйконтент, контент, нарушающий законы об авторском праве, такие как DMCA (Законы об авторском праве цифрового тысячелетия), или контент, который нарушает законы или судебные приказы. 403 Запрещено и 404 Не найдено ERRor коды статуса иногда используются вместо 451 код статуса ошибки, но 451 код статуса ошибки предоставляет больше информации или объяснений в wh y ошибка происходит. Пользователи, как правило, получили около йe 451 ошибка путем реализации VPN для доступа к содержимому. See RFC7725, раздел 3 для получения
дополнительной информации.
452-499: Неподписанным
Коды ошибок 452-499 в настоящее время не подписаны.
5xx: Ошибка сервера
Как и коды статуса 4xx, коды статуса 5xx указывают на ошибку,однако ошибка, о котором идет речь, вряд ли из-за плохого соединения или самого браузера. Коды статуса 5xx указывают там яс проблемой на уровне сервера и не может обрабатывать запрос от клиента. Наряду с ошибкой сервер должен ответить объяснением ошибки, будь то явременное или постоянное состояние,и как это можетбыть исправлено.
500: Ошибка внутреннего сервера
Код состояния ошибки внутреннего сервера 500 просто означает, что сервер столкнулся проблемы и не может обрабатывать запрос. типично, Код ошибки внутреннего сервера 500 используется больше как общий код ошибки сервера, если точная проблема непопадает ни в один из других кодов статуса 5xx Server Error Спецификации. Tон 500 Внутренний сервер Ошибка код, вероятно, наиболее часто используемых кодов классификации ошибок 5xx Server. Дополнительную информацию можно получить в разделе 6.6 RFC7231.
501
: Не
реализовано
A 501 не реализован коды статуса ошибки происходят, когда сервер делает не распознать метод запроса и, следовательно, не можетpport или обработать запрос. оно ясекунда любить 405 Метод не допускается код статуса ошибки клиентано 501 Не реализованный код статуса ошибки может указывать что метод запроса от клиента действителен, просто не поддерживается сервером. 405 Метод не допускается статус ошибки будет указывать что метод, называемый клиентом, не поддержанный и должны не Уже Использованы. видеть RFC7231, раздел 6.6.2 для получения дополнительной информации.
502
: Плохой
шлюз
Код статуса ошибки 502 Bad Gateway означает, что сервер действует прокси и получил ответ от сервера происхождения, который вернулся как недействительный. оно яs возможно это яs из-за перегруженного сервера и клиент может повторно подать запрос, но в большинстве случаев, оно ясекунда должный Кому проблема с веб-сервером Или CDN (Сеть распределения контента) сидя между клиентом и сервером и может нуждаться дополнительный устранение неполадок с хостинг-провайдером, чтобы понять, почему ошибка в настоящее время брошены. видеть RFC7231, раздел 6.6.3 для получения
дополнительной информации.
503
: Услуга
недоступна
Код статуса 503 Service Unavailable указывает на то, что сервер в настоящее время перегружен запросами или из ресурсов,внастоящее время inтехническое обслуживание, или, возможно, йв приложении они пытаются получить доступ не работает, и сервер не в состоянии завершить запрос из-за текущего состояния. Клиенты иногда видят сообщение вместе с кодом статуса недоступен для службы 503, говоря им, чтобы попробовать запрос еще раз позже. Тем не менее, может не дать окончательного объяснения того, когда и как долго может длитьсякод статуса the 503 Service Unavailable. Для получения информации см. RFC7231, раздел 6.6.4.
504: Тайм-аут шлюза
Как и код статуса ошибки 502 Bad Gateway, код состояния ошибки 504 Gateway Timeout используется, когда сервер действует как прокси, но будет отвечать 504 Gateway Timeout Код статуса ошибки если ответ отн сервер происхождения занимает слишком много времени, чтобы ответить. Код состояния ошибки 502 Bad Gateway должен использоваться в тех случаях, когда ответ был недействительным или не получено прокси-сервером Совсем. Сообщение вместе с 504 Gatмиспособ тайм-аута может указывать и рекомендовать что клиент пытается повторно запрос. видеть RFC7231, раздел 6.6.5 для получения дополнительной информации.
505: Версия HTTP не поддерживается
Код статуса ошибки 505 HTTP Не поддерживается означает, что сервер не поддерживает версию протокола HTTP, используемую в сообщении запроса,и, следовательно, неможет обрабатывать запроса. Наряду с версией 505 HTTP Не поддерживаемый код статусаошибки, ответ с сервера должен включать сообщение, указывающее, почему этот конкретный протокол HTTP не поддерживается и какие протоколы поддерживаются. Дополнительную информацию можно получить в разделе 6.6.6.6.
506: Вариант также переговоры
Вариант 506 Также переговоры является экспериментальным кодом статуса HTTP и не является частью стандарта сегодня. Вариант 506 Также переговоры указывает на то, что есть внутренняя проблема конфигурации с сервером из-за проблем с содержанием переговоров. Переговоры по контенту позволяют клиентам отправлять несколько принимают заготовки и сообщает серверу, какое конкретное представление ресурса будет браузера. Это может быть для выступающей до правильного языка, документ форме т, ит.д. . Несмотря на то, что 506 Variant также обсуждает код статуса ошибки в а экспериментальный статус и официально не является частью стандарта HTTP, используется в редких случаях. Некоторые пользователи Google Playстолкнулись с этой проблемой в прошлом при попытке загрузить несколько версий приложения, в результатечего ир-устройства постоянно пытаются загрузить приложение в процессе замкнутого цикла. Дополнительную информацию можно получить в разделе 8.1 RFC2295.
507: Недостаточное хранение
Код состояния ошибки сервера недостаточного хранения данных 507 также является частью протокола WebDAV. Код состояния ошибки 507 Недостаточное хранилище указывает на client t hat
запрос, например PUT или POST
запрос, был слишком большим по размеру файла. Это также может свидетельствовать о том, что сервер имеет временно закончились хранилища. Дополнительную информацию можно получить в разделе 11.5 RFC4981.
508: Обнаружена петля
Обнаружена петля 508 сервер Код статуса ошибки, как и код ошибки сервера 507 Insufficient Storage, является частью протокола WebDAV. В рамках протокола WebDAV оно ясекунда возможно, клиент может сделать запрос на сервер для целого каталога и создать цель некоторыхгде тот же каталог, что приводит к бесконечному циклу запроса/ответа. Код состояния ошибки 508 Loop Обнаруженный сервер Указывает что сервер Закончилась запрос клиентаконкретно Глубина: Вфаinity, потому что сервникогда Определены запрос как в результате чего яnfinite петля, неоднократно призывая обратно на себя. видеть RFC5842, раздел 7.2 для получения дополнительной информация.
509: Неподписанным
Код статуса ошибки 509 сервера в настоящее время не подписан.
510: Не продлен
Код статуса ошибки сервера 510 Not Extended в настоящее время находится в предлагаемом/экспериментальномстатусе и не является частью стандартной спецификации кода статуса HTTP. 510 Not Extended указывает клиенту, что запрос требует расширенного запроса HTTP. Если сервер отвечает кодом статуса ошибки сервера 510 Not Extended, он также должен включать в себя, как client должны remedy их запрос, но спецификация делает не явно государство тот. там‘S Дебате ли тего сhould подпадают под классификацию ошибок сервера 5xx, так как это может рассматриваться как ошибка клиента 4xx, но так как Так и есть формально не является частью стандарта, это яs не релевмуравей и редко используется для повседневного использования. видеть RFC2774, раздел 7 для получения дополнительной информации.
511: Требуется авторизация сети
511 Сеть Авторизация Требуется код статуса ошибки сервера, который требует от клиента, чтобы проверить подлинность, чтобы получить доступ к сети. Например, пользователи могут видеть это при попытке подключиться к общедоступной сети Wi-Fi в бизнесе и пользователи должны согласиться с их условиями, прежде чем получить доступ. Наряду с 511 Сеть Авторизация Требуется ответ на ошибку сервера, пользователи также должны быть направлены туда, где они могут войти в систему. Дополнительную информацию можно получить в разделе 6 RFC6585.
512-599: Неподписанным
Коды статуса ошибки сервера 512-599 в настоящее время не подписаны, но некоторые компании могут использовать любой из них в качестве пользовательских сообщений об ошибках сервера для клиентов.
Мониторинг
ответов на код
статуса HTTP
Чтобы увидеть список кодов статуса для конкретного URL из первых рук, вы можете проверить вкладку инструментов разработчика в вашем просмотреР. Наряду с метриками скорости загрузки страницы, вы также можете просматривать любые ответы сервера, а также все связанные коды статуса HTTP, чтобы гарантировать, что все на вашей странице загружается и перевод правильно.
Для более активного и автоматизированного подхода к мониторингупрофессиональные решения для мониторинга от Dotcom-Monitor могут быть уверены,что всякий раз, когда пользователь сталкивается с определенным кодом ошибкиHTTP, вы получаете уведомление от команд r сразу же сo они могут быстро исправить эту проблему. Вы также можете использовать Функция фильтров для удаления отдельные коды статуса HTTP из задач, оповещений и отчетов,поэтому вы игнорируете любые коды статуса HTTP, которые не имеют отношения к вашим конкретным потребностям.
Умные люди придумали коды, по которым можно определить, что произошло с HTTP-запросом. Успешен ли он, произошло ли перенаправление. Или же все закончилось ошибкой. Как раз об ошибках и будем говорить в этой статье. Вкратце расскажу, какие они бывают и с чем связаны.
А еще тут будет парочка забавных (и не очень) пикч и анимаций на тему описанных ошибок. Хоть какое-то развлечение.
Ошибки со стороны клиента (4xx)
Для начала перечислим коды ошибок на стороне клиента. Вина за их появление ложится на плечи обоих участников соединения.
400 Bad Request
Такой ответ от браузера можно получить в том случае, если сервер не смог правильно отреагировать на запрос со стороны пользователя. Часто код 400 возникает при попытке клиента получить доступ к серверу без соблюдения правил оформления синтаксиса протокола передачи гипертекста (HTTP). Повторный запрос не стоит отправлять до тех пор, пока не будет исправлена ошибка (или несколько из них).
401 Unauthorized
Код 401 возникает при попытке клиента получить доступ к серверу, используя неправильные данные для авторизации. По сути, используется, когда пользователь вводит неправильный логин и пароль на ресурсе, где требуется эта информация для входа. Читайте: Как исправить ошибку 401
402 Payment Required
Эта ошибка сообщает клиенту о том, что для успешного выполнения запроса ему необходимо оплатить доступ к серверу. Изначально код 402 должен был стать неким стандартом для цифровой валюты и оплаты контента в сети. Но не срослось. До сих пор нет единого решения по поводу того, как должны выглядеть платежи в сети. Также нет и единого решения по поводу того, как стоит использовать 402.
Все еще считается, что код существует с расчетом на будущее. Сейчас почти не используется и поддерживается не всеми браузерами.
403 Forbidden
Почти то же, что и 401. Сервер снова не разрешает к нему подключиться, хотя с запросом все в порядке. Просто нет доступа. Причем повторная авторизация с другими логином и паролем никак не помогут. Все вопросы к владельцам сервера (но не всегда). Инструкция по устранению ошибки.
Творчество на тему знаменитой киносаги
404 Not Found
Легендарная ошибка, ставшая популярным мемом. 404 оповещает клиента о том, что его запрос ведет в никуда. Код возникает, когда пользователь пытается попасть на страницу, которой не существует. Например, когда случайно ошибается при вводе ссылки и вводит ее с опечаткой. Или же пытается получить доступ к странице, которой на сайте уже нет.
В отличие от других кодов, страницу с 404 частенько кастомизируют, создавая для нее уникальный дизайн. Мало того, что это выглядит симпатичнее, так еще и полезнее для посетителей. Можно прямо на странице с ошибкой разъяснить, что произошло и как дальше действовать.
И таких вариаций тысячи. Каждый пытается добавить в оформление что-то свое.
405 Method Not Allowed
405 сообщает клиенту о том, что метод, используемый при запросе, не разрешен. В качестве примера можно привести попытку со стороны клиента ввести данные в форму с помощью GET, когда она работает только с POST. Ну и в таком же духе.
406 Not Acceptable
Ошибка 406 сообщает о том, что страница передает контент, который не может быть распознан клиентом. Возможно, проблема в методе сжатия или в формате страницы. Иногда сюда же приплетают неправильные настройки кодировки.
Этот код редко используют на практике, так как его появления можно избежать, предоставив пользователю информацию на сайте в том виде, который его браузер способен принять. Посетитель сайта по итогу получит не то, что ожидал, но хотя бы не ошибку.
407 Proxy Authentication Required
Этот код тоже похож на 401. Только на этот раз логин и пароль нужны не для основного сервера, а для прокси, который находится между клиентом и сервером. Обычно в теле ошибки содержится информация о том, как можно правильно пройти авторизацию и получить доступ к ресурсу.
408 Request Timeout
408 говорит нам о том, что сервер пожелал разорвать соединение с клиентом, потому что оно никак не используется. Происходит это в том случае, если сервер буквально устал ждать, пока наладится соединение с ним. Поэтому такую ошибку часто можно лицезреть после очень долгой и безуспешной загрузки какого-нибудь сайта.
Многие серверы не отправляют никаких сообщений, а просто прерывают соединение по той же причине. На запрос уходит больше времени, чем на то полагается.
В Мистере Роботе частенько называли серии в честь ошибок HTTP (весь четвертый сезон в нумерации 4хх). В честь 408, например, назвали восьмую серию четвертого сезона
409 Conflict
Сообщение о конфликте возникает, когда запрос со стороны клиента не соответствует тому, чего ожидает сервер. В качестве примера приводят проблемы при проверки версий, когда пользователь пытается с помощью метода PUT загрузить на сервер новый файл, но там уже имеется более новая версия того же файла. Конфликта версий можно легко избежать, загрузив корректную версию.
410 Gone
Своего рода аналог 404. Разница лишь в том, что 410 намекает на перманентность отсутствия страницы. Так что этот код стоит использовать, когда на 100% уверен, что страница ушла в небытие (ну или с текущего адреса) навсегда. В любом другом случае есть универсальный 404.
411 Length Required
411 оповещает пользователя о том, что сервер не желает принимать запрос со стороны клиента, потому что в нем не определен заголовок Content-Length. Да, это первый код в подборке, который смогут понять только люди, сведущие в настройке серверов. По-простому уложить сущность HTML-заголовков в этот материал не получится.
412 Precondition Failed
Еще один код, сообщающий о том, что сервер отклонил запрос пользователя и не разрешает доступ к выбранному ресурсу. Проблемы возникают при неправильной настройке работы методов, отличающихся от GET и HEAD.
413 Payload Too Large/Request Entity Too Large
Код 413 говорит нам, что запрос, который посылает клиент на сервер, слишком большой. Поэтому сервер отказывается его обрабатывать и разрывает соединение. Обычно это происходит при попытке загрузить на ресурс какой-то файл, превышающий ограничение, выставленное в настройках сервера. Соответственно, решается проблема изменением настроек сервера.
414 URI Too Long
Чем-то этот код похож на предыдущий. Здесь тоже идет речь о превышение лимита. Только теперь это касается не запроса со стороны клиента, а длины URI. То есть ссылки. Выходит, что адрес, используемый клиентом, больше, чем тот, что может обработать сервер. Как-то так.
Такая ошибка иногда выскакивает при попытке взломать ресурс. Сайт так реагирует на слишком частые попытки воспользоваться потенциальными дырами в безопасности.
415 Unsupported Media Type
Ошибка 415 возникает, когда клиент пытается загрузить на сервер данные в неподходящем формате. В таком случае сервер просто отказывается принимать посылаемые файлы и разрывает соединение. Как и в случае с 413.
416 Range Not Satisfiable
Подобный ответ можно ожидать, если клиент запрашивает у сервера определенные данные, но эти данные на сервере не соответствуют запросу. То есть, грубо говоря, вы просите у сервера какой-то набор данных с заранее заданным размером, а в итоге оказывается, что размер этих данных меньше, чем объем, указанный в запросе. Серверу ничего не остается, кроме как послать вас, ведь он не обучен поведению в таких ситуациях.
417 Expectation Failed
Такая ошибка высвечивается, когда ожидания сервера не совпадают с данными в запросе клиента. Сведения об ожиданиях прописываются в заголовке Expect заранее. Так что можно ознакомиться с ними, чтобы выяснить, как решить названную проблему.
418 I’m a teapot
Код 418 можно увидеть, если сервер откажется варить кофе, потому что он чайник. Это первоапрельская шутка. Естественно, 418 не используется нигде всерьез и просто существует как дань памяти программистам-юмористам, придумавшим это в 1998 году.
У Google получился такой симпатичный чайник
421 Misdirected Request
Появляется когда запрос клиента переправляется на сервер, который не может дать на него адекватный ответ. Например, если запрос был отправлен на ресурс, который вообще не настроен обрабатывать запросы извне.
Чтобы исправить проблему, можно попробовать переподключиться к ресурсу заново или попробовать другое соединение.
422 Unprocessable Entity
Код 422 говорит, что сервер вроде бы принял запрос, понял его, все хорошо, но из-за семантических ошибок корректно обработать не смог. Значит, где-то в запросе затаилась логическая ошибка, мешающая корректному взаимодействию клиента и сервера. Надо ее найти и исправить.
423 Locked
Обычно на этот код напарываются, когда запрашиваемый ресурс оказывается под защитой. Используемые клиентом методы блокируются на уровне сервера. Это делается, чтобы обезопасить данные, хранящиеся на защищенной странице. Без логина и пароля выудить информацию с такого сервера не получится.
424 Failed Dependency
424 сообщает о том, что для выполнения запроса со стороны клиента успешно должна завершиться еще одна или несколько параллельных операций. Если какая-то из них «провалится», то «помрет» все соединение сразу, и обработать запрос до конца не получится. Аналогичное происходит, если некорректно был обработан один из предыдущих запросов.
425 Too Early
Появляется в ответ на запрос, который может быть моментально запущен заново. Сервер не рискует и не берется за его обработку, чтобы не подставиться под так называемую «атаку повторного воспроизведения».
426 Upgrade Required
Тут нам прямо сообщают, что сервер не желает с нами общаться, пока мы не перейдем на более современный протокол. Наткнуться на такую ошибку очень тяжело, но в случае появления, скорее всего, будет достаточно установить браузер посвежее.
428 Precondition Required
428 выскакивает, если пользователь отправляет запрос на сервер, но получает некорректные или неактуальные данные. Так ресурс оповещает о необходимости внести в запрос информацию о предварительных условиях обработки данных. Только так он сможет гарантировать получение клиентом нужной информации.
429 Too Many Requests
Здесь все просто. Ошибка появляется, когда клиент отправляет на сервер слишком много запросов в короткий промежуток времени. Очень похоже на поведение взломщиков. По этой причине запрос моментально блокируется.
431 Request Header Fields Too Large
Из названия понятно, что ошибка с кодом 431 появляется из-за того, что в запросе клиента используются слишком длинные заголовки (неважно, один или несколько из них). Исправляется это с помощью сокращения заголовков и повторной отправки запроса. В теле ошибки обычно отображается краткая информация о том, как пользователь может решить эту проблему самостоятельно.
444 No Response
Этот код вам вряд ли удастся увидеть. Он отображается в лог-файлах, чтобы подтвердить, что сервер никак не отреагировал на запрос пользователя и прервал соединение.
449 Retry With
Код используется в расширениях компании Microsoft. Он сигнализирует о том, что запрос от клиента не может быть принят сервером. Причиной становятся неверно указанные параметры. Сама 449 ошибка говорит о необходимости скорректировать запрос и повторить его снова, подготовив к работе с сервером.
450 Blocked by Windows Parental Controls
450 код увидят дети, попавшие под действие системы «Родительский контроль» компании Microsoft. По сути, ошибка говорит о том, что с компьютера попытались зайти на заблокированный ресурс. Избежать этой ошибки можно изменением параметров родительского контроля.
451 Unavailable For Legal Reasons
Этот код сообщает клиенту, что он не может попасть на запрашиваемый ресурс из юридических соображений. Скорее всего, доступ был заблокирован из-за каких-нибудь государственных санкций, нового законодательства или цензуры со стороны властей. В общем, все вопросы к государству и провайдеру связи.
Читайте также
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Подписаться
Список ошибок на стороне сервера (5xx)
Теперь поговорим об ошибках, которые возникают где-то на сервере. Все они связаны с запросами, которые не удается обработать на том конце. Пользователь зачастую в их появлении не виноват.
500 Internal Server Error
Этот код возникает, когда сервер сталкивается с непредвиденными обстоятельствами. Такими, которые и сам не может пояснить. Как, собственно, и завершить запрос со стороны пользователя. По факту, эта ошибка говорит нам что-то вроде «Я не могу подобрать более подходящий код ошибки, поэтому лови 500 и делай с этим, что хочешь». Мы писали о нем чуть подробнее тут.
Дело не в тебе, дело во мне (С)
501 Not Implemented
501 говорит нам, что функциональность, необходимая для обработки запроса со стороны клиента, попросту не реализована на сервере. Он не сможет корректно обработать используемый метод.
Иногда в теле ошибки еще пишут что-то в духе «Приходите попозже, возможно, в будущем нужная функция появится».
502 Bad Getaway
Можно встретить в том случае, если запрашиваемый сервер выступает в роли шлюза или прокси. Возникает из-за несогласования протоколов между вышестоящим серверов и его шлюзом. Рассказываем о том, как ее исправить, в этой статье.
503 Service Unavailable
Появляется, когда сервер не может обработать запрос клиента по одной из двух технических причин:
- Слишком много пользователей в текущий момент пытаются отправить запросы, и у сервера не остается ресурсов, чтобы ответить кому-либо еще.
- На сервере ведутся технические работы, временно блокирующие его работу.
Обычно ошибка 503 носит временный характер, и для ее решения достаточно немного подождать.
504 Gateway Timeout
Ошибка похожа на 408. Здесь же прокси-сервер пытается выйти на контакт с вышестоящим сервером, но не успевает это сделать до истечения тайм-аута. Отсюда и ошибка.
505 HTTP Version Not Supported
Этот код похож на 426. Он тоже связан с неподходящей версией протокола HTTP. В этом случае нужно обеспечить и клиента, и сервер единой версией. Она, как правило, указывается в запросе со стороны пользователя.
506 Variant Also Negotiates
Обычно с такой ошибкой сталкиваются только в том случае, если сервер изначально настроен неправильно. То есть это не сиюминутная проблема, а что-то серьезное на уровне базовой конфигурации. Тут придется потрудиться разработчикам. Выявить проблему и разрешить ее.
507 Insufficient Storage
Код 507 встречается в тех ситуациях, когда серверу не хватает пространства в хранилище для обработки запроса со стороны клиента. Проблема решается освобождением места или расширением доступного пространства. Тогда сервер сможет без проблем обработать запрос пользователя.
508 Loop Detected
Таким кодом сервер отзовется в случае, если заметит бесконечный цикл в запросе клиента. Можно расценивать его как провал запроса и выполняемой операции в целом.
509 Bandwidth Limit Exceeded
Возникает, если сервер начинает потреблять больше трафика, чем ему позволено.
510 Not Extended
Появляется, если клиент посылает запрос на использование какого-либо расширения, отсутствующего на сервере. Чтобы исправить проблему, надо убрать декларирование неподдерживаемого расширения из запроса или добавить поддержку на сервер.
511 Network Authentication Required
511 код говорит о том, что перед тем как выйти в сеть, надо авторизоваться (ввести логин и пароль). Можно воспринимать это неким PPPoE подключением, когда от клиента требуются данные для авторизации.
Заключение
Закончили. Это все ошибки, которыми отзывается HTTP, если на стороне сервера или клиента что-то пошло не так. Наткнуться на большую их часть довольно тяжело. Особенно, если вы раньше только серфили в интернете, а не занимались разработкой сайтов. А тем, кто входит в эту стезю, полезно знать основные ошибки, так как, скорее всего, придется не раз их исправлять.
Коды ответов сервера (коды состояния запроса) в протоколе SIP, согласно RFC2543
Код ответа от сервера (код состояния запроса) состоит из трех цифр и показывает информацию об обработке запроса сервером или оконечным устройством. Рядом с любым кодом, передается поясняющая фраза, краткое текстовое описание, кода ответа. Код ответа необходим для серверов и оконечных устройств, при этом, они не смотрят поясняющие фразы. А поясняющие фразы необходимы лишь для конечных пользователей.
Первая цифра кода состояния запроса определяет класс ответа. Последние две цифры не имеют определенной роли в классификации. Протокол SIP/2.0 определяет 6 значение для первой цифры:
- 1xx: Информационные ответы (Informational) – запрос получен, запрос обрабатывается;
- 2xx: Успех выполнения запроса (Success) – запрос был получен, понят, принят в обработку;
- 3xx: Переадресация (Redirection) – для завершения запроса необходимо, выполнить следующие действия;
- 4xx: Ошибка Клиента (Client Error) – запрос имеет некорректный синтаксис(информацию) или запрос не может быть выполнен на данном сервере;
- 5xx: Ошибка Сервера (Server Error) – сервер не в состоянии выполнить корректный запрос;
- 6xx: Глобальная Ошибка (Global Failure) – запрос не может быть выполнен на любом сервере.
Далее рассмотрим часто встречающиеся коды состояния запросов и поясняющие фразы к ним, используемые в SIP/2.0. Поясняющие фразы- это рекомендация, пользователи могут изменить их, без воздействия на протокол SIP/2.0. Обратите внимание, что много кодов ответов взято из протокола HTTP/1.1. В SIP/2.0 добавлены коды в диапазоне с x80, так же, в отличие от HTTP/1.1, добавлен новый класс кодов 6xx.
Коды ответов SIP являются расширяемыми. SIP приложению не требуется понимать смысл всех зарегистрированных кодов ответа, хотя такое понимание желательно. Тем не менее, приложения ДОЛЖНЫ понимать класс любого кода ответа, как это указано в первой цифре, и обрабатывать любой нераспознанный ответ как эквивалент кода ответа x00 этого класса. Например, если клиент получает незарегистрированный код ответа 431, он может смело предположить, что было что-то не так в его запросе, и должен обработать ответ, как если бы был получен код 400 (Bad Request). В таких случаях агентам пользователя СЛЕДУЕТ представить пользователю тело сообщения, возвращаемого с ответом, так как в теле сообщения, вероятно, включена информация, которая поясняет нестандартный ответ.
Информационные ответы:
- “100” ; Trying – запрос обрабатывается
- “180” ; Ringing – вызываемы пользователь определен. Идет сигнал о входящем вызове
- “181” ; Call Is Being Forwarded – вызов переадресовывается к другому пользователю
- “182” ; Queued – вызываемый абонент недоступен, вызов поставлен в очередь
- “183” ; Session Progress – данный ответ используется для передачи описания медианных SDP
Успех выполнения запроса:
- “200” ; OK – успешное выполнение запроса
- “202” ; Accepted – запрос принят в обработку
Переадресация:
- “300” ; Multiple Choices – в ответе указаны несколько SIP адресов, где можно найти вызываемого пользователя
- “301” ; Moved Permanently – вызываемый абонент больше не находится по адресу, указанному в запросе
- “302” ; Moved Temporarily – вызываемый абонент временно не находится по адресу, указанному в запросе
- “305” ; Use Proxy – входящий вызов должен пройти через прокси-сервер
- “380” ; Alternative Service – запрошенная услуга недоступна, но есть альтернативные варианты
Ошибка Клиента:
- “400” ; Bad Request – некорректный запрос, запрос не понятен серверу
- “401” ; Unauthorized – ответ, что пользователь еще не авторизован на сервере, после этого ответа, посылается повторный запрос RIGISTER с логином и паролем
- “402” ; Payment Required – требуется оплата
- “403” ; Forbidden – абонент не зарегистрирован, не существует
- “404” ; Not Found – вызываемы абонент не найден на сервере
- “405” ; Method Not Allowed – метод не поддерживается сервером
- “406” ; Not Acceptable – пользователь недоступен
- “407” ; Proxy Authentication Required – необходима аутентификация на сервере
- “408” ; Request Timeout – время обработки запроса истекло
- “409” ; Conflict – запрос не может быть выполнен из-за конфликта с текущим состоянием сервера/клиента
- “410” ; Gone – запрошенный пользователь больше не доступен на сервере и нет адреса для перевода вызова
- “411” ; Length Required – сервер отказывается принимать запрос без определенного поля Content-Length
- “413” ; Request Entity Too Large – сервер отказывается обслуживать запрос, т.к. размер запроса слишком велик
- “414” ; Request-URI Too Large – сервер отказывается обслуживать запрос, потому что запрашиваемый URI больше, чем сервер может обработать.
- “415” ; Unsupported Media Type – сервер отказывается обработать запрос, потому что тело сообщения запроса находится в формате, который сервер не поддерживает. Сервер должен вернуть список допустимых форматов, используя Accept, Accept-Encoding и Accept-Language в поле заголовка.
- “420” ; Bad Extension – сервер не понял расширение протокола SIP
- “480” ; Temporarily not available – направление временно недоступно
- “481” ; Call Leg/Transaction Does Not Exist – этот ответ будет возвращен в двух случаях: сервер получил запрос BYE, который не соответствует любому существующему вызову или сервер получил запрос CANCEL, что не соответствует существующим транзакция.
- “482” ; Loop Detected – обнаружен замкнутый маршрут передачи запроса
- “483” ; Too Many Hops – Превышено число прохода прокси-серверов, чем указано в поле Max-Forwards
- “484” ; Address Incomplete – В запросе не полный адрес
- “485” ; Ambiguous – адрес вызываемого пользователя не однозначен
- “486” ; Busy Here – абонент занят
- “487” ; Request Terminated – запрос отменен, обычно приходит при отмене вызова
Ошибка Сервера:
- “500” ; Internal Server Error – внутренняя ошибка сервера
- “501” ; Not Implemented – сервер не поддерживает функциональные возможности, необходимые для выполнения запроса.
- “502” ; Bad Gateway – сервер, действуя в качестве шлюза или прокси-сервера, получил недопустимый ответ от подчиненного сервера, к которому он обратился для выполнения запроса.
- “503” ; Service Unavailable – сервер в настоящее время не в состоянии обработать запрос из-за временной перегрузки или технического обслуживания сервера.
- “504” ; Gateway Time-out – сервер, действуя в качестве шлюза, не получил своевременного ответа от сервера (например, сервер определения местоположения) к которому он обратился для выполнения запроса.
- “505” ; SIP Version not supported – сервер не поддерживает или отказывается поддерживать, версию протокола SIP, который был использован в сообщении запроса
Глобальная Ошибка:
- “600” ; Busy Everywhere – вызов дошел до вызываемого абонента, но вызываемый абонент занят и не желает принять вызов в настоящее время.
- “603” ; Decline – вызов дошел до вызываемого абонента, но вызываемый абонент занят и не желает принять вызов, не указывая причину отказа.
- “604” ; Does not exist anywhere – сервер имеет точную информацию о том, что пользователя, указанного в поле To не существует нигде. Поиск пользователя в другом месте не даст никаких результатов.
- “606” ; Not Acceptable – сервер установил соединение с абонентом, но отдельные параметры, такие как тип запрашиваемой информации, полоса пропускания, вид адресации не доступны
На рассмотрение в IETF поданы спецификации новых кодов состояния HTTP, которые более точно описывают некоторые типичные ситуации.
428 Precondition Required 429 Too Many Requests 431 Request Header Fields Too Large 511 Network Authentication Required
Код состояния 428 (precondition required) означает, что серверу требуются условия выполнения запроса. Это типичная ситуация, когда клиент получает данные по GET, модифицирует их и отправляет назад на сервер через PUT, но к тому времени они уже были модифицированы другим клиентом, из-за чего возникает конфликт. Требуя обусловленного запроса, сервер защищается от возникновения конфликта. При этом обязательно должны быть указаны условия для корректной отправки данных на сервер.
HTTP/1.1 428 Precondition Required
Content-Type: text/html
<html>
<head>
<title>Precondition Required</title>
</head>
<body>
<h1>Precondition Required</h1>
<p>This request is required to be conditional;
try using "If-Match".</p>
</body>
</html>
Код состояния 429 (too many requests) означает, что пользователь отправил слишком много запросов в заданный период времени. Ответ должен содержать объяснение нарушенного условия и может содержать заголовок Retry-After с указанием времени, которое нужно подождать перед повтором.
HTTP/1.1 429 Too Many Requests
Content-Type: text/html
Retry-After: 3600
<html>
<head>
<title>Too Many Requests</title>
</head>
<body>
<h1>Too many Requests</h1>
<p>I only allow 50 requests per hour to this Web site per
logged in user. Try again soon.</p>
</body>
</html>
Код состояния 431 (request header fields too large) используется тогда, когда сервер отказывает в обработке запроса из-за того, что один или несколько заголовков в сумме превышают норму. Во втором случае в ответе должно содержаться указание, какой именно заголовок вызвал проблему.
HTTP/1.1 431 Request Header Fields Too Large
Content-Type: text/html
<html>
<head>
<title>Request Header Fields Too Large</title>
</head>
<body>
<h1>Request Header Fields Too Large</h1>
<p>The "Example" header was too large.</p>
</body>
</html>
Код состояния 511 (network authentication required) означает, что нужно выполнить аутентификацию, при этом в ответе должна содержаться инструкция о том, как это сделать, например, с помощью HTML-формы по указанному адресу. Ошибку 511 возвращает не целевой сервер, а прокси, который не пускает пользователя в сеть (например, маршрутизатор в зоне платного Wi-Fi при неавторизованном доступе).
Например, пользователь отправляет HTTP-запрос по TCP на порт 80.
GET /index.htm HTTP/1.1
Host: www.example.com
Логин-сервер возвращает такой ответ.
HTTP/1.1 511 Network Authentication Required
Refresh: 0; url=https://login.example.net/
Content-Type: text/html
<html>
<head>
<title>Network Authentication Required</title>
</head>
<body>
<p>You need to <a href="https://login.example.net/">
authenticate with the local network</a> in order to get
access.</p>
</body>
</html>