HTTP Hypertext Transfer Protocol

Source: Internet
Author: User
Tags local time ranges rfc unsupported
<span id="Label3"></p>Hypertext Transfer Protocol (http,hypertext Transfer Protocol) is one of the most widely used network protocols on the Internet. All WWW documents must comply with this Standard. HTTP was originally designed to provide a way to publish and receive HTML Pages. 1960 American Ted Nelson conceived a way to process text messages through a computer called Hypertext (hypertext), which has become the foundation of the HTTP Hypertext Transfer Protocol standard Architecture. The Ted Nelson organization coordinated the World Wide Web Association (Wide) and the Internet Engineering Working Group (internet Engineering Task Force) to work together to study and eventually release a series of rfcs, of which the famous RFC 2616 defines the HTTP 1.1. Directory <ol> <ol> <li class="level1"><span class="index">1 <span class="text">Technical Architecture</span></span></li> <li class="level1"><span class="index">2 <span class="text">protocol features</span></span></li> <li class="level1"><span class="index">3 <span class="text">Protocol Basics</span></span></li> <li class="level2"><span class="index">? <span class="text">General header Fields</span></span></li> </ol> </ol> <ol> <ol> <li class="level2"><span class="index">? <span class="text">Request Message</span></span></li> <li class="level2"><span class="index">? <span class="text">Response Message</span></span></li> <li class="level2"><span class="index">? <span class="text">Entity Information</span></span></li> <li class="level1"><span class="index">4 <span class="text">mode of Operation</span></span></li> <li class="level1"><span class="index">5 <span class="text">Message Formats</span></span></li> </ol> </ol> <ol> <ol> <li class="level1"><span class="index">6 <span class="text">Working principle</span></span></li> <li class="level1"><span class="index">7 <span class="text">Status Messages</span></span></li> <li class="level1"><span class="index">8 <span class="text">Version History</span></span></li> </ol> </ol>Technical Architecture HTTP is a standard (TCP) for client and server-side requests and responses. The client is the end user and the server side is the Web Site. By using a Web browser, crawler, or other tool, the client initiates an HTTP request to the specified port on the server (the default port is 80). (we Call this client) called the user Agent. The answering server stores (some) resources, such as HTML files and Images. This answering server (we call It) is the source server (origin server). May exist between the user agent and the source server<span class="description"><span class="description">HTTP and several other network protocols</span></span>Multiple tiers, such as proxies, gateways, or tunnels (tunnels). Although the TCP/IP protocol is the most popular application on the internet, the HTTP protocol does not stipulate that it must be used and (based On) the layers it supports. In fact, HTTP can be implemented on any other Internet protocol, or on other networks. HTTP only assumes that (its underlying protocol provides) a reliable transmission, and any protocol that provides such assurances can be used by it. typically, a request is initiated by an HTTP client to establish a TCP connection to the Server-specified port (by default, Port 80). The HTTP server listens on that port for requests sent by the Client. Once the request is received, the server (to the Client) sends back a status line, such as "http/1.1 ok", and (in response) message, The message body may be the requested file, error message, or some other Information.<span class="description"><span class="description">Web page of the HTTP protocol</span></span>The reason HTTP uses TCP instead of UDP is that a Web page must transmit a lot of data, while the TCP protocol provides transport control, organizes the data sequentially, and corrects Errors. The resources requested through the HTTP or HTTPS protocol are identified by the Uniform Resource Identifier (Uniform Resource Identifiers) (or, more accurately, URLs). The Protocol feature HTTP protocol (hypertext Transfer Protocol, Hypertext Transfer Protocol) is a transport protocol used to transmit hypertext to a local browser from a www server. It can make the browser more efficient and reduce the network Transmission. It not only ensures that the computer transmits hypertext documents correctly and quickly, but also determines which part of the document is being transmitted, and which content is displayed first (such as text before graphics), and so On. HTTP is the Application-layer communication protocol between a client browser or another program and a Web Server. The hypertext information is stored on the Web server on the internet, and the client needs to transmit the hypertext information it wants to access over the HTTP Protocol. HTTP contains commands and transmission information that can be used not only for Web access, but also for communication between other internet/intranet application systems, enabling the integration of hypermedia access for a variety of application Resources. The website address that we enter in the address bar of the browser is called the URL (Uniform Resource Locator, Uniform Resource locator). Just like every household has a house address, each page has an Internet address. When you're in<span class="description"><span class="description">http function </span> </span>When you enter a URL in the Address box of the browser or click a hyperlink, the URL determines the address to be Browsed. The browser uses Hypertext Transfer Protocol (HTTP) to extract web page code from Web servers and translate them into beautiful web Pages. The protocol base HTTP (hypertext Transport Protocol) is an abbreviation for the Hypertext Transfer protocol, which is used to transmit data in WWW mode, refer to RFC2616 For more information on HTTP Protocol. The HTTP protocol uses the Request/response model. The client sends a request to the server that contains the requested method, URL, protocol version, and a MIME-LIKE message structure that contains the request modifier, customer information, and Content. The server responds with a status line that includes the version of the message protocol, success or error encoding plus the server information, entity Meta information, and possible entity Content. Typically HTTP messages include Client-to-server request messages and server-to-client response Messages. These two types of messages consist of a starting line, one or more header fields, a blank line that indicates the end of the head field, and an optional message Body. The header fields of HTTP include the general header, the request header, the response header, and the four parts of the entity Header. Each header field consists of a domain name, a colon (:), and a domain value of three Parts. Domain names are case-insensitive, you can add any number of whitespace before the domain value, and the header field can be expanded to multiple lines, at the beginning of each line, with at least one space or tab. The universal header domain contains header domains that both request and response messages support, and the generic header domain contains cache-control, Connection, Date, Pragma, transfer-encoding, Upgrade, Via. The expansion of the universal header domain requires both parties to support this extension, and if there is an unsupported universal header domain, it will generally be handled as the entity header Domain. The following is a brief introduction to several common header domains used in UPnP messages: the 1.cache-control header domain Cache-control Specifies the caching mechanism that requests and responses FOLLOW. Setting Cache-control in a request message or response message does not modify the caching process in another message processing process. The cache directives for the request include no-cache, no-store, max-age, max-stale, min-fresh, only-if-cached, and the instructions in the response message include public, private, no-cache, no-store, no-transform, must-revalidate, proxy-revalidate, max-age. The instructions in each message have the following meanings: public indicates that the response can be cached by any buffer. Private indicates that the entire or partial response to a single userCannot be shared with the Cache. This allows the server to simply describe when the user<span class="description"><span class="description">http structure </span> </span>Part of the response message that is not valid for another User's Request. No-cache indicates that a request or response message cannot be cached no-store is used to prevent important information from being inadvertently published. Sending in the request message will make the request and response messages do not use the Cache. Max-age indicates that the client can receive a response that is not longer than the specified time (in seconds). Min-fresh indicates that the client can receive a response that is less than the current time plus a specified time. Max-stale indicates that the client can receive a response message that exceeds the timeout period. If you specify a value for the Max-stale message, the client can receive a response message that exceeds the specified value for the timeout period. The HTTP keep-alivekeep-alive feature makes the Client-to-server connection persistent, and when a subsequent request to the server occurs, the keep-alive feature avoids establishing or re-establishing the Connection. Most Web servers on the market, including iplanet, iis, and apache, support HTTP Keep-alive. This feature is often useful for websites that provide static Content. however, There is another problem with heavier sites: while retaining open connections for customers has some benefits, it also affects performance because the resources that could have been freed during the processing pause are still occupied. When the Web server and application server are running on the same machine, the Keep-alive feature has a particularly significant impact on resource Utilization. The KeepAliveTime value controls how often TCP/IP attempts to verify that idle connections are Intact. If there is no activity during this time, the keep-active signal is Sent. If the network is working properly and the receiver is active, it responds. Consider reducing this value if you need to be sensitive to lost receivers, in other words, you need to discover the missing receivers Faster. If the number of idle connections that have been inactive for a long time is more frequent, and fewer receivers are missing, you may want to increase the value to reduce the OVERHEAD. By default, Windows sends messages that remain active if there is no activity in an idle connection for 7200000 milliseconds (2 hours). typically, 1800000 milliseconds is the preferred value, and half of the closed connections are detected within 30 Minutes. The KeepAliveInterval value defines the frequency at which TCP/IP repeats the keep-active signal if the response to the keep-active message is not received from the receiving Party. The connection is discarded when the continuous sending of a keep-active signal, but the number of times the response is not received exceeds the value of Tcpmaxdataretransmissions. If you expect a longer response time, you may need to increase the value to reduce the OVERHEAD. If you need to reduce the time spent verifying that the receiver has been lost, consider reducing the value or TCPMAXDAThe Taretransmissions Value. by default, Windows waits 1000 milliseconds (1 seconds) before resending messages that remain active without receiving a response. KeepAliveTime is set according to your needs, such as 10 minutes, note to convert into Ms. XXX stands for this interval worth the Size. 2.Date header field The Date Header field represents the time the message was sent, and the time description format was defined by rfc822. For example, Date:mon,31dec200104:25:57gmt. The time described by date represents the world standard, which translates into local time and needs to know the time zone in which the user is Located. The 3.Pragma header domain pragma header domain is used to contain implementation-specific instructions, most commonly Pragma:no-cache. In the http/1.1 protocol, it has the same meaning as Cache-control:no-cache. The first behavior of the request message request message is in the following format: Methodsprequest-urisphttp-versioncrlfmethod for Request-uri completed methods, This field is case-sensitive, including options, GET, HEAD, POST, PUT, DELETE, TRACE. The method get and head should be supported by all common web servers, and the implementation of all other methods is Optional. The GET method retrieves the information identified by the Request-uri. The head method also retrieves the information identified by the request-uri, but does not return the body of the message when the response is Available. The Post method can request that the server receive entity information contained in the request, and can be used to submit the form, sending messages to newsgroups, BBS, mail groups, and Databases. The SP represents a Space. Request-uri follows the URI format, where the word Cheweishing (*) indicates that the request is not used for a particular resource address, but rather for the server itself. Http-version represents the supported HTTP version, for example, http/1.1. The CRLF represents a newline carriage return character. The request header domain allows the client to pass an additional letter to the server about the request or about the client<span class="description"><span class="description">http schema </span> </span>Interest. The Request header field may contain the following fields Accept, accept-charset, accept-encoding, accept-language, Authorization, from, Host, if-modified-since, if-match, if-none-match, if-range, if-range, if-unmodified-since, max-forwards, proxy-authorization, Range, Referer, User-agent. Extensions to the request header domain are supported by both parties, and if an unsupported request header domain exists, it will generally be handled as the entity header Domain. Typical request message: Host:download.*******.deaccept: */*pragma:no-cachecache-control:no-cacheuser-agent:mozilla/4.04[en] ( win95;i; Nav) Range:bytes=554554-the first line in the previous example indicates that the HTTP client (possibly a browser, downloader) obtains the file under the specified URL through the Get Method. The brown portion represents the information for the request header field, and the green section represents the general header Section. The 1.Host header domain Host header domain Specifies the intenet host and port number of the requesting resource, and must represent the location of the originating server or gateway that requested the URL. The http/1.1 request must contain the host header domain or the system will return with a 400 status Code. 2.Referer header domain Referer header domains allow clients to specify the source resource address of the request uri, which allows the server to generate a fallback list that can be used to log in, optimize the cache, and so On. He also allows the abolition or wrong connection to be traced for maintenance purposes. If the requested URI does not have its own URI address, Referer cannot be sent. If you specify a partial URI address, this address should be a relative address. The 3.Range header field Range header field can request one or more child ranges of an Entity. For example, represents the first 500 bytes: bytes=0-499 represents the second 500 bytes: bytes=500-999 represents the last 500 Bytes: bytes=-500 represents the range after 500 bytes: bytes=500-first and last byte: bytes= 0-0,-1 specifies several ranges: bytes=500-600,601-999 but the server can ignore this request header, and if the unconditional get contains a range request header, The response is returned as a status code of 206 (partialcontent) instead of a (OK). 4.user-agent header FieldThe contents of the User-agent header domain contain the user information that made the Request. The first behavior of the response message response message is in the following format: http-versionspstatus-codespreason-phrasecrlfhttp-version represents the supported HTTP version, for example, http/1.1. Status-code is a result code of three Numbers. Reason-phrase provides a simple text description for Status-code. Status-code is mainly used for machine automatic identification, reason-phrase is mainly used to help users understand. The first number of Status-code defines the category of the response, and the latter two numbers do not have a role to classify. The first number may take 5 different values: 1xx: The information response class, which represents receiving the request and continues processing 2xx: processing the success response class, indicating that the action was successfully received, understood, and accepted 3xx: redirect Response class, in order to complete the specified action, must accept further processing 4xx: client error, The client request contains a syntax error or is not properly executed 5xx: the server does not correctly execute a correct request response header domain allows the server to pass additional information that cannot be placed on the status line, which primarily describes the Server's information and Request-uri further Information. The Response header field contains age, location, proxy-authenticate, public, retry-after, Server, Vary, Warning, and Www-authenticate. The expansion of the response header field is required for both sides of the communication, and if there is an unsupported response header field, It will generally be handled as the entity header Field. Typical response message: http/1.0200okdate:mon,31dec200104:25:57gmtserver:apache/1.3.14 (Unix) content-type:text/ Htmllast-modified:tue,17apr200106:46:28gmtetag: "a030f020ac7c01:1e9f" content-length:39725426content-range: bytes55******/40279980 the first line in the previous example represents an HTTP Service-side response to a get method. The brown part represents the Response header field information, The green part represents the general header section, and the red part represents the Entity header field Information. The 1.Location response Header location response header is used to redirect the recipient to a new URI Address. The 2.Server response Header server response header contains software information for the originating server that processed the Request. This field can contain multiple product identifiers and annotations, and the productIdentities are generally sorted by importance. Both the entity Information Request message and the response message can contain entity information, and entity information is generally composed of entity header fields and Entities. The Entity header field contains the original information about the entity, including allow, content-base, content-encoding, content-language, content-length, content-location, content-md5, content-range, content-type, Etag, Expires, last-modified, extension-header. Extension-header allows clients to define new entity headers, but these domains may not be recognized by the Recipient. An entity can be a coded stream of bytes encoded by content-encoding or content-type, whose length is defined by content-length or content-range. 1.content-type Entity Header Content-type Entity header is used to indicate the media type of the entity to the receiver, specifying the entity media type that the head method sends to the RECEIVER. Or the Get method sends the request media Type 2.content-range entity header content-range The body header is used to specify the insertion position of a part of the entire entity, and he also indicates the length of the entire Entity. When the server returns a partial response to the customer, it must describe the extent of the response coverage and the entire length of the Entity. General format: Content-range:bytes-unitspfirst-byte-pos-last-byte-pos/entity-legth for example, transfer the first 500 bytes in the form of a field: content-range: bytes0-499/1234 If an HTTP message contains this section (for example, a response to a range request or overlapping requests for a range of ranges), Content-range represents the range of delivery, Content-length represents the number of bytes actually Transferred. 3.last-modified Entity Header last-modified Entity header specifies the last revision time to save content on the Server. For example, the transfer header is in the form of a 500-byte secondary field: content-range:bytes0-499/1234 If an HTTP message contains this section (for example, a response to a range request or an overlapping request to a range of ranges), Content-range represents the range of the transfer, The content-length represents the number of bytes actually Transferred. Mode of operation in www, "customer" and "server" is a relative concept that exists only during a particular connection period, that is, in a certainThe client in the connection may act as a server in another Connection. The information exchange process of the Client/server mode based on the HTTP protocol, which is divided into four processes: establishing the connection, sending the request information, sending the response information, and closing the Connection. The HTTP protocol is based on the Request/response paradigm. After a client establishes a connection to the server, it sends a request to the server in the form of a Uniform Resource identifier, protocol version number, followed by MIME information including the request modifier, client information, and possible Content. After the server receives the request, it gives the corresponding response information in the form of a status line that includes the protocol version number of the information, a successful or incorrect code, followed by MIME information including server information, entity information, and possible Content.<span class="description"><span class="description">http mode of Operation </span> </span>In fact, it simply means that any server, in addition to HTML files, has an http-resident program that responds to user Requests. Your browser is an HTTP client that sends a request to the server, and when a start file is entered in the browser or a hyperlink is clicked, the browser sends an HTTP request to the server, which is sent to the URL specified by the IP address. The resident program receives the request and echoes the requested file after the necessary action is Taken. In this process, the data sent and received on the network has been divided into one or more packets (packet), each packet includes: the data to be transmitted, control information, that is, tell the network how to process the Packet. TCP/IP determines the format of each packet. If you do not tell you beforehand, you may not know that the information is divided into many small pieces for transmission and re-grouping. Many HTTP traffic is initialized by a user agent and includes a request to request resources on the source Server. The simplest scenario might be a separate connection between the user agent (UA) and the source server (O). When one or more mediations appear in the Request/response chain, the situation becomes more Complex. There are three mediations: proxy, gateway, and channel (tunnel). An agent accepts requests based on the absolute format of the uri, rewrites all or part of the message, and sends the formatted request to the server through the Uri's Identity. The gateway is a receiving agent that acts as the upper layer of some other servers and, if necessary, translates the request to the underlying server Protocol. A channel acts as a relay point between two connections that do not change the Message. The channel is often used when the communication needs to pass through an intermediary (for example, a firewall, etc.) or if the content of the message is not recognized by the Intermediary. Message format HTTP messages consist of requests from the client to the server and responses from the server to the Client. The request message format is as Follows: request line-general information header-request header-entity header-the message body request line starts with the method field, followed by the URL field and the HTTP protocol version field, and ends with CRLF. SP is a delimiter. In addition to the last CRLF sequence CF and LF are required, others can be not. For general information headers, the specific contents of the request header and the entity header can be referenced in the relevant Files. The response message format is as Follows: status line-general information header-response head-entity header-the message body Status code element consists of 3 digits that indicate whether the request is understood or is Satisfied. The cause analysis is a brief description of the status code of the original text, which is used to support automatic operation, and the reason analysis is used by the User. The client does not need to check or display the Syntax. For the general information header, the response header and entity header aspects of the specific content can refer to the relevant Files. How it works once an HTTP operation is called a transaction, its working process can be divided into four steps: first, the customerThe user and server need to establish a Connection. As soon as you click on a hyperlink, the HTTP work begins. After the connection is established, the client sends a request to the server in the form of a Uniform Resource Identifier (URL), a protocol version number, followed by MIME information including the request modifier, client information, and possible Content. After the server receives the request, it gives the corresponding response information in the form of a status line, including the protocol version number of the information, a successful or incorrect code, followed by MIME information including server information, entity information, and possible Content. The information returned by the client receiving server is displayed on the User's display via the browser, and the guest<span class="description"><span class="description">http Workflow Flowchart</span></span>Disconnected from the Server. If an error occurs in one of the steps above, the information that generates the error is returned to the client and is output by the Display. For the user, these processes are done by HTTP itself, the user just click with the mouse, waiting for information to display it. Many HTTP traffic is initialized by a user agent and includes a request to request resources on the source Server. The simplest scenario might be a separate connection between the user agent and the Server. On the internet, HTTP traffic typically occurs on top of a TCP/IP Connection. The default port is TCP 80, but the other ports are also available. however, This does not imply that the HTTP protocol can be completed on top of other protocols on the Internet or other networks. HTTP is only indicative of a reliable transmission. This process is like we call the order, we can call the merchant, tell him we need what specifications of goods, and then the merchant tell us what goods are in stock, what goods are out of stock. these, we are by telephone line by telephone contact (http is through tcp/ip), of course we can also by fax, as long as the merchant also has fax. Status messages <table class="table-view log-set-param"> <caption> 1xx: Information </caption> <tbody> <tr> <th>message</th> <th>Description</th> </tr> <tr> <td>Continue</td> <td>The server only receives partial requests, but once the server does not reject the request, the client should continue to send the remaining requests.</td> </tr> <tr> <td>101 Switching protocols</td> <td>Server conversion Protocol: The server translates the Client's request to a different Protocol.</td> </tr> </tbody> </table> <table class="table-view log-set-param"> <caption> 2xx: success </caption> <tbody> <tr> <th> message </th> <th> description </th> /tr> </tr> <tr> <td> OK </td> <td> request succeeded (followed by the answer document for Get and post Requests. The </td> </tr> <tr> <td> 201 Created </td> <td> request is created and the new resource is Created. </td> </tr> <tr> <td> 202 Accepted </td> <td> the request for processing was accepted, but the processing was not completed. </td> </tr> <tr> <td> 203 non-authoritative Information </td> <td> The document has returned normally, but some of the answer headers may be incorrect because a copy of the document is being Used. </td> </tr> <tr> <td> 204 No Content </td> <td> There are no new documents. The browser should continue to display the original Document. This status code is useful if the user refreshes the page on a regular basis and the servlet can determine that the User's document is new Enough. </td> </tr> <tr> <td> 205 Reset Content </td> <td> no new Document. But the browser should reset what it displays. Used to force the browser to clear the form Input. </td> </tr> <tr> <td> 206 Partial Content </td> <td> customer sends a GET request with a range header that the server has Completed. </td> </tr> </tbody> </table> <table class="table-view log-set-param"> <caption> 3xx: redirect </caption> <tbody> <tr> <th>message</th> <th>Description</th> </tr> <tr> <td>Multiple Choices</td> <td>Multiple Choices. A list of links. The user can select a link to reach the Destination. A maximum of five addresses are Allowed.</td> </tr> <tr> <td>301 Moved Permanently</td> <td>The requested page has been moved to a new url.</td> </tr> <tr> <td>302 Found</td> <td>The requested page has been temporarily transferred to the new Url.</td> </tr> <tr> <td>303 See other</td> <td>The requested page can be found under a different url.</td> </tr> <tr> <td>304 Not Modified</td> <td>The document was not modified as Expected. The client has a buffered document and issues a conditional request (typically providing a if-modified-since header indicating that the customer only wants to update the document than the specified date). The server tells the customer that the original buffered document can continue to be used.</td> </tr> <tr> <td>305 Use Proxy</td> <td>The document requested by the client should be extracted from the proxy server indicated by the location header.</td> </tr> <tr> <td>306 <em>Unused</em></td> <td>This code is used in the previous Version. It is no longer used, but the code is still Retained.</td> </tr> <tr> <td>307 Temporary Redirect</td> <td>The requested page has been temporarily moved to a new url.</td> </tr> </tbody> </table> <table class="table-view log-set-param"> <caption> 4xx: Client Error </caption> <tbody> <tr> <th>message</th> <th>Description</th> </tr> <tr> <td>Request</td> <td>The server failed to understand the Request.</td> </tr> <tr> <td>401 Unauthorized</td> <td>The requested page requires a user name and Password.</td> </tr> <tr> <td>401.1</td> <td>Login Failed.</td> </tr> <tr> <td>401.2</td> <td>The server configuration caused the login to Fail.</td> </tr> <tr> <td>401.3</td> <td>The ACL has not been authorized because of the resource Limitation.</td> </tr> <tr> <td>401.4</td> <td>Filter Authorization Failed.</td> </tr> <tr> <td>401.5</td> <td>ISAPI/CGI Application Authorization Failed.</td> </tr> <tr> <td>401.7</td> <td>Access is denied by the URL authorization policy on the Web server. This error code is specific to IIS 6.0.</td> </tr> <tr> <td>402 Payment Required</td> <td>This code is not yet Available.</td> </tr> <tr> <td>403 Forbidden</td> <td>Access to the requested page is Forbidden.</td> </tr> <tr> <td>403.1</td> <td>Execution access is Forbidden.</td> </tr> <tr> <td>403.2</td> <td>Read access is Forbidden.</td> </tr> <tr> <td>403.3</td> <td>Write access is Forbidden.</td> </tr> <tr> <td>403.4</td> <td>Requires SSL.</td> </tr> <tr> <td>403.5</td> <td>Requires SSL 128.</td> </tr> <tr> <td>403.6</td> <td>The IP address is Rejected.</td> </tr> <tr> <td>403.7</td> <td>Requires a client Certificate.</td> </tr> <tr> <td>403.8</td> <td>Site access is Denied.</td> </tr> <tr> <td>403.9</td> <td>Excessive number of Users.</td> </tr> <tr> <td>403.10</td> <td>The configuration is not valid.</td> </tr> <tr> <td>403.11</td> <td>Password Changes.</td> </tr> <tr> <td>403.12</td> <td>Access to the mapping table is Denied.</td> </tr> <tr> <td>403.13</td> <td>The client certificate was Revoked.</td> </tr> <tr> <td>403.14</td> <td>Reject Directory List.</td> </tr> <tr> <td>403.15</td> <td>Client Access Permission Exceeded.</td> </tr> <tr> <td>403.16</td> <td>The client certificate is not trusted or invalid.</td> </tr> <tr> <td>403.17</td> <td>The client certificate has expired or is not yet valid.</td> </tr> <tr> <td>403.18</td> <td>The requested URL cannot be executed in the current application Pool. This error code is specific to IIS 6.0.</td> </tr> <tr> <td>403.19</td> <td>You cannot execute CGI for clients in this application Pool. This error code is specific to IIS 6.0.</td> </tr> <tr> <td>403.20</td> <td>Passport Login Failed. This error code is specific to IIS 6.0.</td> </tr> <tr> <td>404 Not Found</td> <td>The server was unable to find the requested Page.</td> </tr> <tr> <td>404.0</td> <td>(none) – No files or directories found.</td> </tr> <tr> <td>404.1</td> <td>The Web site cannot be accessed on the requested Port.</td> </tr> <tr> <td>404.2</td> <td>The WEB service extended lockdown policy blocks this Request.</td> </tr> <tr> <td>404.3</td> <td>The MIME mapping policy blocks this Request.</td> </tr> <tr> <td>405 Method not allowed</td> <td>The method specified in the request is not Allowed.</td> </tr> <tr> <td>406 Not acceptable</td> <td>The server-generated response cannot be accepted by the Client.</td> </tr> <tr> <td>407 Proxy Authentication Required</td> <td>The user must first authenticate with a proxy server so that the request is Processed.</td> </tr> <tr> <td>408 Request Timeout</td> <td>The request exceeded the Server's wait Time.</td> </tr> <tr> <td>409 Conflict</td> <td>The request could not be completed because of a conflict.</td> </tr> <tr> <td>410 Gone</td> <td>The requested page is not available.</td> </tr> <tr> <td>411 Length Required</td> <td>"content-length" is not Defined. If there is no such content, the server will not accept the Request.</td> </tr> <tr> <td>412 Precondition Failed</td> <td>The prerequisites in the request were evaluated by the server as Failed.</td> </tr> <tr> <td>413 Request Entity Too Large</td> <td>The server does not accept the request because the requested entity is too large.</td> </tr> <tr> <td>414 Request-url Too Long</td> <td>The server will not accept the request because the URL is too long. This occurs when the POST request is converted to a GET request with very long query Information.</td> </tr> <tr> <td>415 Unsupported Media Type</td> <td>The server will not accept the request because the media type is not Supported.</td> </tr> <tr> <td>416 Requested Range not satisfiable</td> <td>The server does not meet the range header specified by the customer in the Request.</td> </tr> <tr> <td>417 Expectation Failed</td> <td>Execution Failed.</td> </tr> <tr> <td>423</td> <td>The Locked Error.</td> </tr> </tbody> </table> <table class="table-view log-set-param" style="width: 99%;"> <caption> 5xx: Server Error </caption> <tbody> <tr> <th>message</th> <th>Description</th> </tr> <tr> <td align="left" valign="center" width="0">Internal Server Error</td> <td align="left" valign="center" width="0">The request was not Completed. The server encountered unpredictable Conditions.</td> </tr> <tr> <td align="left" valign="center" width="0">500.12</td> <td align="left" valign="center" width="0">The application is busy restarting on the Web server.</td> </tr> <tr> <td align="left" valign="center" width="0">500.13</td> <td align="left" valign="center" width="0">The WEB server is too busy.</td> </tr> <tr> <td align="left" valign="center" width="0">500.15</td> <td align="left" valign="center" width="0">Direct request Global.asa is not Allowed.</td> </tr> <tr> <td align="left" valign="center" width="0">500.16</td> <td align="left" valign="center" width="0">The UNC authorization credentials are Incorrect. This error code is specific to IIS 6.0.</td> </tr> <tr> <td align="left" valign="center" width="0">500.18</td> <td align="left" valign="center" width="0">The URL authorization store cannot be Opened. This error code is specific to IIS 6.0.</td> </tr> <tr> <td align="left" valign="center" width="0">500.100</td> <td align="left" valign="center" width="0">Internal ASP Error.</td> </tr> <tr> <td align="left" valign="center" width="0">501 Not implemented</td> <td align="left" valign="center" width="0">The request was not Completed. The requested functionality is not supported by the Server.</td> </tr> <tr> <td align="left" valign="center" width="0">502 Bad Gateway</td> <td align="left" valign="center" width="0">The request was not Completed. The server received an invalid response from the upstream Server.</td> </tr> <tr> <td align="left" valign="center" width="0">502.1</td> <td align="left" valign="center" width="0">The CGI application timed Out.</td> </tr> <tr> <td align="left" valign="center" width="0">502.2</td> <td align="left" valign="center" width="0">Error in CGI Application.</td> </tr> <tr> <td align="left" valign="center" width="0">503 Service Unavailable</td> <td align="left" valign="center" width="0">The request was not Completed. The server is temporarily overloaded or in a machine.</td> </tr> <tr> <td align="left" valign="center" width="0">504 Gateway Timeout</td> <td align="left" valign="center" width="0">The Gateway timed Out.</td> </tr> <tr> <td align="left" valign="center" width="0">505 HTTP Version not supported</td> <td align="left" valign="center" width="0">The server does not support the HTTP protocol version indicated in the Request.</td> </tr> </tbody> </table>Version history Hypertext Transfer Protocol has evolved many versions, most of which are backwards compatible. The HTTP is described in RFC 2145<span class="description"><span class="description">Configuring the HTTP pass</span></span>The usage of the version number. The client tells the server at the beginning of the request that it takes the protocol version number, while the latter uses the same or earlier protocol version in the Response. 0.9 is Obsolete. Only GET one request method is accepted, No version number is specified in the communication, and the request header is not Supported. Because this version does not support the POST method, clients cannot pass too much information to the Server. Http/1.0 This is the first HTTP protocol version that specifies the version number in the newsletter and is still widely used, especially in proxy servers. http/1.1 the current Version. Persistent connections are adopted by default and work well with proxy Servers. It also supports the simultaneous sending of multiple requests in a piped manner to reduce line load and increase transmission Speed. http/1.1 compared to the http/1.0 protocol is mainly reflected in: 1 cache processing 2 bandwidth optimization and network connection using 3 Error Notification management 4 messages sent in the Network 5 Internet Address Maintenance 6 Security and integrity<span class="title"><span class="title">more Atlas</span> of the term book</span>Entry picture<span class="number"><span class="number">(9)</span></span> <dl class="lemma-reference collapse nslog-area log-set-param" data-nslog-type="2"> <dl class="lemma-reference collapse nslog-area log-set-param" data-nslog-type="2"> <dt class="reference-title"> Resources </dt> <dd class="reference-list-wrap"> <ul class="reference-list"> <li id="reference-[1]-9472-wrap" class="reference-item "><span class="index">1. Various types of HTTP request status (status) and their meanings quick check<span class="linkout"> </span> list XMLHTTP status</span></li> </ul> </dd> </dl> </dl><p><p>HTTP Hypertext Transfer Protocol</p></p></span>

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.