Changeset 622 for draft-ietf-httpbis/latest
- Timestamp:
- 26/07/09 11:18:24 (13 years ago)
- Location:
- draft-ietf-httpbis/latest
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/p1-messaging.html
r609 r622 471 471 <tr> 472 472 <td class="header left"></td> 473 <td class="header right">July 13, 2009</td>473 <td class="header right">July 26, 2009</td> 474 474 </tr> 475 475 </table> … … 532 532 <li class="tocline1">2.1.1 <a href="#http.uri">http URI scheme</a></li> 533 533 <li class="tocline1">2.1.2 <a href="#https.uri">https URI scheme</a></li> 534 <li class="tocline1">2.1.3 <a href="#uri.comparison"> URIComparison</a></li>534 <li class="tocline1">2.1.3 <a href="#uri.comparison">http and https URI Normalization and Comparison</a></li> 535 535 <li class="tocline1">2.1.4 <a href="#scheme.aliases">Scheme aliases considered harmful</a></li> 536 536 </ul> … … 689 689 cross-purposes, we cannot require that such changes be observable beyond the scope of a single response. 690 690 </p> 691 <p id="rfc.section.1.p.5">This document is Part 1 of the seven-part specification of HTTP, defining the protocol referred to as "HTTP/1.1" and obsoleting <a href="#RFC2616" id="rfc.xref.RFC2616.1"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2616]</cite></a>. Part 1 describes the architectural elements that are used or referred to in HTTP and defines the URI schemes specific to692 HTTP-based resources, overall network operation, connection management, andHTTP message framing and forwarding requirements.691 <p id="rfc.section.1.p.5">This document is Part 1 of the seven-part specification of HTTP, defining the protocol referred to as "HTTP/1.1" and obsoleting <a href="#RFC2616" id="rfc.xref.RFC2616.1"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2616]</cite></a>. Part 1 describes the architectural elements that are used or referred to in HTTP, defines the "http" and "https" URI schemes, 692 describes overall network operation and connection management, and defines HTTP message framing and forwarding requirements. 693 693 Our goal is to define all of the mechanisms necessary for HTTP message handling that are independent of message semantics, 694 694 thereby defining the complete set of requirements for message parsers and message-forwarding intermediaries. … … 801 801 <a href="#abnf.dependencies" class="smpl">Warning</a> = <Warning, defined in <a href="#Part6" id="rfc.xref.Part6.3"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.warning" title="Warning">Section 3.6</a>> 802 802 </pre><h1 id="rfc.section.2"><a href="#rfc.section.2">2.</a> <a id="architecture" href="#architecture">HTTP architecture</a></h1> 803 <p id="rfc.section.2.p.1">HTTP was created with a specific architecture in mind, the World Wide Web, and has evolved over time to support the scalability804 needs of a worldwide hypertext system. Much of that architecture is reflected in the terminology and syntax productions used805 to define HTTP.806 < /p>803 <p id="rfc.section.2.p.1">HTTP was created for the World Wide Web architecture and has evolved over time to support the scalability needs of a worldwide 804 hypertext system. Much of that architecture is reflected in the terminology and syntax productions used to define HTTP. 805 </p> 806 <div id="rfc.iref.r.1"></div> 807 807 <h2 id="rfc.section.2.1"><a href="#rfc.section.2.1">2.1</a> <a id="uri" href="#uri">Uniform Resource Identifiers</a></h2> 808 <p id="rfc.section.2.1.p.1">Uniform Resource Identifiers (URIs) <a href="#RFC3986" id="rfc.xref.RFC3986.2"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a> are used throughout HTTP as the means for identifying resources. URI references are used to target requests, redirect responses,808 <p id="rfc.section.2.1.p.1">Uniform Resource Identifiers (URIs) <a href="#RFC3986" id="rfc.xref.RFC3986.2"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a> are used throughout HTTP as the means for identifying resources. URI references are used to target requests, indicate redirects, 809 809 and define relationships. HTTP does not limit what a resource may be; it merely defines an interface that can be used to interact 810 810 with a resource via HTTP. More information on the scope of URIs and resources can be found in <a href="#RFC3986" id="rfc.xref.RFC3986.3"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>. … … 834 834 <div id="rfc.iref.h.1"></div> 835 835 <div id="rfc.iref.u.1"></div> 836 <p id="rfc.section.2.1.1.p.1">The "http" scheme is used to locate network resources via the HTTP protocol.</p> 836 <p id="rfc.section.2.1.1.p.1">The "http" URI scheme is hereby defined for the purpose of minting identifiers according to their association with the hierarchical 837 namespace governed by a potential HTTP origin server listening for TCP connections on a given port. The HTTP server is identified 838 via the generic syntax's <a href="#uri" class="smpl">authority</a> component, which includes a host identifier and optional TCP port, and the remainder of the URI is considered to be identifying 839 data corresponding to a resource for which that server might provide an HTTP interface. 840 </p> 837 841 <div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.30"></span> <a href="#http.uri" class="smpl">http-URI</a> = "http:" "//" <a href="#uri" class="smpl">authority</a> <a href="#uri" class="smpl">path-abempty</a> [ "?" <a href="#uri" class="smpl">query</a> ] 838 </pre><p id="rfc.section.2.1.1.p.3">If the port is empty or not given, port 80 is assumed. The semantics are that the identified resource is located at the server 839 listening for TCP connections on that port of that host, and the request-target for the resource is path-absolute (<a href="#request-target" title="request-target">Section 5.1.2</a>). The use of IP addresses in URLs <em class="bcp14">SHOULD</em> be avoided whenever possible (see <a href="#RFC1900" id="rfc.xref.RFC1900.1"><cite title="Renumbering Needs Work">[RFC1900]</cite></a>). If the path-absolute is not present in the URL, it <em class="bcp14">MUST</em> be given as "/" when used as a request-target for a resource (<a href="#request-target" title="request-target">Section 5.1.2</a>). If a proxy receives a host name which is not a fully qualified domain name, it <em class="bcp14">MAY</em> add its domain to the host name it received. If a proxy receives a fully qualified domain name, the proxy <em class="bcp14">MUST NOT</em> change the host name. 840 </p> 842 </pre><p id="rfc.section.2.1.1.p.3">The host identifier within an <a href="#uri" class="smpl">authority</a> component is defined in <a href="#RFC3986" id="rfc.xref.RFC3986.16"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-3.2.2">Section 3.2.2</a>. If host is provided as an IP literal or IPv4 address, then the HTTP server is any listener on the indicated TCP port at 843 that IP address. If host is a registered name, then that name is considered an indirect identifier and the recipient might 844 use a name resolution service, such as DNS, to find the address of a listener for that host. The host <em class="bcp14">MUST NOT</em> be empty; if an "http" URI is received with an empty host, then it <em class="bcp14">MUST</em> be rejected as invalid. If the port subcomponent is empty or not given, then TCP port 80 is assumed (the default reserved 845 port for WWW services). 846 </p> 847 <p id="rfc.section.2.1.1.p.4">Regardless of the form of host identifier, access to that host is not implied by the mere presence of its name or address. 848 The host may or may not exist and, even when it does exist, may or may not be running an HTTP server or listening to the indicated 849 port. The "http" URI scheme makes use of the delegated nature of Internet names and addresses to establish a naming authority 850 (whatever entity has the ability to place an HTTP server at that Internet name or address) and allows that authority to determine 851 which names are valid and how they might be used. 852 </p> 853 <p id="rfc.section.2.1.1.p.5">When an "http" URI is used within a context that calls for access to the indicated resource, a client <em class="bcp14">MAY</em> attempt access by resolving the host to an IP address, establishing a TCP connection to that address on the indicated port, 854 and sending an HTTP request message to the server containing the URI's identifying data as described in <a href="#request" title="Request">Section 5</a>. If the server responds to that request with a non-interim HTTP response message, as described in <a href="#response" title="Response">Section 6</a>, then that response is considered an authoritative answer to the client's request. 855 </p> 856 <p id="rfc.section.2.1.1.p.6">Although HTTP is independent of the transport protocol, the "http" scheme is specific to TCP-based services because the name 857 delegation process depends on TCP for establishing authority. An HTTP service based on some other underlying connection protocol 858 would presumably be identified using a different URI scheme, just as the "https" scheme (below) is used for servers that require 859 an SSL/TLS transport layer on a connection. Other protocols may also be used to provide access to "http" identified resources 860 --- it is only the authoritative interface used for mapping the namespace that is specific to TCP. 861 </p> 862 <h3 id="rfc.section.2.1.2"><a href="#rfc.section.2.1.2">2.1.2</a> <a id="https.uri" href="#https.uri">https URI scheme</a></h3> 841 863 <div id="rfc.iref.h.2"></div> 842 864 <div id="rfc.iref.u.2"></div> 843 <h3 id="rfc.section.2.1.2"><a href="#rfc.section.2.1.2">2.1.2</a> <a id="https.uri" href="#https.uri">https URI scheme</a></h3> 844 <p id="rfc.section.2.1.2.p.1"> <span class="comment" id="rfc.comment.1">[<a href="#rfc.comment.1" class="smpl">rfc.comment.1</a>: TBD: Define and explain purpose of https scheme.]</span> 845 </p> 846 <div class="note"> 847 <p> <b>Note:</b> the "https" scheme is defined in <a href="#RFC2818" id="rfc.xref.RFC2818.1"><cite title="HTTP Over TLS">[RFC2818]</cite></a>. 848 </p> 849 </div> 850 <h3 id="rfc.section.2.1.3"><a href="#rfc.section.2.1.3">2.1.3</a> <a id="uri.comparison" href="#uri.comparison">URI Comparison</a></h3> 851 <p id="rfc.section.2.1.3.p.1">When comparing two URIs to decide if they match or not, a client <em class="bcp14">SHOULD</em> use a case-sensitive octet-by-octet comparison of the entire URIs, with these exceptions: 852 </p> 853 <ul> 854 <li>A port that is empty or not given is equivalent to the default port for that URI-reference;</li> 855 <li>Comparisons of host names <em class="bcp14">MUST</em> be case-insensitive; 856 </li> 857 <li>Comparisons of scheme names <em class="bcp14">MUST</em> be case-insensitive; 858 </li> 859 <li>An empty path-absolute is equivalent to a path-absolute of "/".</li> 860 <li>Characters other than those in the "reserved" set are equivalent to their percent-encoded octets (see <a href="#RFC3986" id="rfc.xref.RFC3986.16"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-2.1">Section 2.1</a>). 861 </li> 862 </ul> 863 <p id="rfc.section.2.1.3.p.2">For example, the following three URIs are equivalent:</p> 864 <div id="rfc.figure.u.14"></div><pre class="text"> http://example.com:80/~smith/home.html 865 <p id="rfc.section.2.1.2.p.1">The "https" URI scheme is hereby defined for the purpose of minting identifiers according to their association with the hierarchical 866 namespace governed by a potential HTTP origin server listening for SSL/TLS-secured connections on a given TCP port. The host 867 and port are determined in the same way as for the "http" scheme, except that a default TCP port of 443 is assumed if the 868 port subcomponent is empty or not given. 869 </p> 870 <div id="rfc.figure.u.14"></div><pre class="inline"><span id="rfc.iref.g.31"></span> <a href="#https.uri" class="smpl">https-URI</a> = "https:" "//" <a href="#uri" class="smpl">authority</a> <a href="#uri" class="smpl">path-abempty</a> [ "?" <a href="#uri" class="smpl">query</a> ] 871 </pre><p id="rfc.section.2.1.2.p.3">The primary difference between the "http" and "https" schemes is that interaction with the latter is required to be secured 872 for privacy through the use of strong encryption. The URI cannot be sent in a request until the connection is secure. Likewise, 873 the default for caching is that each response that would be considered "public" under the "http" scheme is instead treated 874 as "private" and thus not eligible for shared caching. 875 </p> 876 <p id="rfc.section.2.1.2.p.4">The process for authoritative access to an "https" identified resource is defined in <a href="#RFC2818" id="rfc.xref.RFC2818.1"><cite title="HTTP Over TLS">[RFC2818]</cite></a>. 877 </p> 878 <h3 id="rfc.section.2.1.3"><a href="#rfc.section.2.1.3">2.1.3</a> <a id="uri.comparison" href="#uri.comparison">http and https URI Normalization and Comparison</a></h3> 879 <p id="rfc.section.2.1.3.p.1">Since the "http" and "https" schemes conform to the URI generic syntax, such URIs are normalized and compared according to 880 the algorithm defined in <a href="#RFC3986" id="rfc.xref.RFC3986.17"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-6">Section 6</a>, using the defaults described above for each scheme. 881 </p> 882 <p id="rfc.section.2.1.3.p.2">If the port is equal to the default port for a scheme, the normal form is to elide the port subcomponent. Likewise, an empty 883 path component is equivalent to an absolute path of "/", so the normal form is to provide a path of "/" instead. The scheme 884 and host are case-insensitive and normally provided in lowercase; all other components are compared in a case-sensitive manner. 885 Characters other than those in the "reserved" set are equivalent to their percent-encoded octets (see <a href="#RFC3986" id="rfc.xref.RFC3986.18"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-2.1">Section 2.1</a>): the normal form is to not encode them. 886 </p> 887 <p id="rfc.section.2.1.3.p.3">For example, the following three URIs are equivalent:</p> 888 <div id="rfc.figure.u.15"></div><pre class="text"> http://example.com:80/~smith/home.html 865 889 http://EXAMPLE.com/%7Esmith/home.html 866 890 http://EXAMPLE.com:/%7esmith/home.html 867 </pre><h3 id="rfc.section.2.1.4"><a href="#rfc.section.2.1.4">2.1.4</a> <a id="scheme.aliases" href="#scheme.aliases">Scheme aliases considered harmful</a></h3> 891 </pre><p id="rfc.section.2.1.3.p.5"> <span class="comment" id="rfc.comment.1">[<a href="#rfc.comment.1" class="smpl">rfc.comment.1</a>: [[This paragraph does not belong here. --Roy]]]</span> If path-abempty is the empty string (i.e., there is no slash "/" path separator following the authority), then the "http" 892 URI <em class="bcp14">MUST</em> be given as "/" when used as a request-target (<a href="#request-target" title="request-target">Section 5.1.2</a>). If a proxy receives a host name which is not a fully qualified domain name, it <em class="bcp14">MAY</em> add its domain to the host name it received. If a proxy receives a fully qualified domain name, the proxy <em class="bcp14">MUST NOT</em> change the host name. 893 </p> 894 <h3 id="rfc.section.2.1.4"><a href="#rfc.section.2.1.4">2.1.4</a> <a id="scheme.aliases" href="#scheme.aliases">Scheme aliases considered harmful</a></h3> 895 <p id="rfc.section.2.1.4.p.1"> <span class="comment" id="rfc.comment.2">[<a href="#rfc.comment.2" class="smpl">rfc.comment.2</a>: TBS: describe why aliases like webcal are harmful.]</span> 896 </p> 868 897 <h2 id="rfc.section.2.2"><a href="#rfc.section.2.2">2.2</a> <a id="intro.overall.operation" href="#intro.overall.operation">Overall Operation</a></h2> 869 898 <p id="rfc.section.2.2.p.1">HTTP is a request/response protocol. A client sends a request to the server in the form of a request method, URI, and protocol 870 899 version, followed by a MIME-like message containing request modifiers, client information, and possible body content over 871 900 a connection with a server. The server responds with a status line, including the message's protocol version and a success 872 or error code, followed by a MIME-like message containing server information, entity metainformation, and possible entity-body 873 content. 874 </p> 875 <p id="rfc.section.2.2.p.2">Most HTTP communication is initiated by a user agent and consists of a request to be applied to a resource on some origin 876 server. In the simplest case, this may be accomplished via a single connection (v) between the user agent (UA) and the origin 877 server (O). 878 </p> 879 <div id="rfc.figure.u.15"></div><pre class="drawing"> request chain ------------------------> 901 or error code, followed by a MIME-like message containing server information, entity metadata, and possible entity-body content. 902 </p> 903 <p id="rfc.section.2.2.p.2">Most HTTP communication is initiated by a user agent and consists of a request to be applied to a resource via the HTTP interface 904 provided by some origin server. In the simplest case, this may be accomplished via a single connection (v) between the user 905 agent (UA) and the origin server (O). 906 </p> 907 <div id="rfc.figure.u.16"></div><pre class="drawing"> request chain ------------------------> 880 908 UA -------------------v------------------- O 881 909 <----------------------- response chain … … 888 916 cannot understand the contents of the messages. 889 917 </p> 890 <div id="rfc.figure.u.1 6"></div><pre class="drawing"> request chain -------------------------------------->918 <div id="rfc.figure.u.17"></div><pre class="drawing"> request chain --------------------------------------> 891 919 UA -----v----- A -----v----- B -----v----- C -----v----- O 892 920 <------------------------------------- response chain … … 903 931 O (via C) for a request which has not been cached by UA or A. 904 932 </p> 905 <div id="rfc.figure.u.1 7"></div><pre class="drawing"> request chain ---------->933 <div id="rfc.figure.u.18"></div><pre class="drawing"> request chain ----------> 906 934 UA -----v----- A -----v----- B - - - - - - C - - - - - - O 907 935 <--------- response chain … … 926 954 </p> 927 955 <h2 id="rfc.section.2.3"><a href="#rfc.section.2.3">2.3</a> <a id="http.proxy" href="#http.proxy">Use of HTTP for proxy communication</a></h2> 928 <p id="rfc.section.2.3.p.1"> <span class="comment" id="rfc.comment. 2">[<a href="#rfc.comment.2" class="smpl">rfc.comment.2</a>: TBD: Configured to use HTTP to proxy HTTP or other protocols.]</span>956 <p id="rfc.section.2.3.p.1"> <span class="comment" id="rfc.comment.3">[<a href="#rfc.comment.3" class="smpl">rfc.comment.3</a>: TBD: Configured to use HTTP to proxy HTTP or other protocols.]</span> 929 957 </p> 930 958 <h2 id="rfc.section.2.4"><a href="#rfc.section.2.4">2.4</a> <a id="http.intercept" href="#http.intercept">Interception of HTTP for access control</a></h2> 931 <p id="rfc.section.2.4.p.1"> <span class="comment" id="rfc.comment. 3">[<a href="#rfc.comment.3" class="smpl">rfc.comment.3</a>: TBD: Interception of HTTP traffic for initiating access control.]</span>959 <p id="rfc.section.2.4.p.1"> <span class="comment" id="rfc.comment.4">[<a href="#rfc.comment.4" class="smpl">rfc.comment.4</a>: TBD: Interception of HTTP traffic for initiating access control.]</span> 932 960 </p> 933 961 <h2 id="rfc.section.2.5"><a href="#rfc.section.2.5">2.5</a> <a id="http.others" href="#http.others">Use of HTTP by other protocols</a></h2> 934 <p id="rfc.section.2.5.p.1"> <span class="comment" id="rfc.comment. 4">[<a href="#rfc.comment.4" class="smpl">rfc.comment.4</a>: TBD: Profiles of HTTP defined by other protocol. Extensions of HTTP like WebDAV.]</span>962 <p id="rfc.section.2.5.p.1"> <span class="comment" id="rfc.comment.5">[<a href="#rfc.comment.5" class="smpl">rfc.comment.5</a>: TBD: Profiles of HTTP defined by other protocol. Extensions of HTTP like WebDAV.]</span> 935 963 </p> 936 964 <h2 id="rfc.section.2.6"><a href="#rfc.section.2.6">2.6</a> <a id="http.media" href="#http.media">Use of HTTP by media type specification</a></h2> 937 <p id="rfc.section.2.6.p.1"> <span class="comment" id="rfc.comment. 5">[<a href="#rfc.comment.5" class="smpl">rfc.comment.5</a>: TBD: Instructions on composing HTTP requests via hypertext formats.]</span>965 <p id="rfc.section.2.6.p.1"> <span class="comment" id="rfc.comment.6">[<a href="#rfc.comment.6" class="smpl">rfc.comment.6</a>: TBD: Instructions on composing HTTP requests via hypertext formats.]</span> 938 966 </p> 939 967 <h1 id="rfc.section.3"><a href="#rfc.section.3">3.</a> <a id="protocol.parameters" href="#protocol.parameters">Protocol Parameters</a></h1> … … 948 976 </p> 949 977 <p id="rfc.section.3.1.p.2">The version of an HTTP message is indicated by an HTTP-Version field in the first line of the message. HTTP-Version is case-sensitive.</p> 950 <div id="rfc.figure.u.1 8"></div><pre class="inline"><span id="rfc.iref.g.31"></span><span id="rfc.iref.g.32"></span> <a href="#http.version" class="smpl">HTTP-Version</a> = <a href="#http.version" class="smpl">HTTP-Prot-Name</a> "/" 1*<a href="#core.rules" class="smpl">DIGIT</a> "." 1*<a href="#core.rules" class="smpl">DIGIT</a>978 <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g.32"></span><span id="rfc.iref.g.33"></span> <a href="#http.version" class="smpl">HTTP-Version</a> = <a href="#http.version" class="smpl">HTTP-Prot-Name</a> "/" 1*<a href="#core.rules" class="smpl">DIGIT</a> "." 1*<a href="#core.rules" class="smpl">DIGIT</a> 951 979 <a href="#http.version" class="smpl">HTTP-Prot-Name</a> = %x48.54.54.50 ; "HTTP", case-sensitive 952 980 </pre><p id="rfc.section.3.1.p.4">Note that the major and minor numbers <em class="bcp14">MUST</em> be treated as separate integers and that each <em class="bcp14">MAY</em> be incremented higher than a single digit. Thus, HTTP/2.4 is a lower version than HTTP/2.13, which in turn is lower than HTTP/12.3. … … 970 998 <h2 id="rfc.section.3.2"><a href="#rfc.section.3.2">3.2</a> <a id="date.time.formats.full.date" href="#date.time.formats.full.date">Date/Time Formats: Full Date</a></h2> 971 999 <p id="rfc.section.3.2.p.1">HTTP applications have historically allowed three different formats for the representation of date/time stamps:</p> 972 <div id="rfc.figure.u. 19"></div><pre class="text"> Sun, 06 Nov 1994 08:49:37 GMT ; RFC 11231000 <div id="rfc.figure.u.20"></div><pre class="text"> Sun, 06 Nov 1994 08:49:37 GMT ; RFC 1123 973 1001 Sunday, 06-Nov-94 08:49:37 GMT ; obsolete RFC 850 format 974 1002 Sun Nov 6 08:49:37 1994 ; ANSI C's asctime() format … … 980 1008 time zone, and <em class="bcp14">MUST</em> be assumed when reading the asctime format. HTTP-date is case sensitive and <em class="bcp14">MUST NOT</em> include additional whitespace beyond that specifically included as SP in the grammar. 981 1009 </p> 982 <div id="rfc.figure.u.2 0"></div><pre class="inline"><span id="rfc.iref.g.33"></span> <a href="#date.time.formats.full.date" class="smpl">HTTP-date</a> = <a href="#preferred.date.format" class="smpl">rfc1123-date</a> / <a href="#obsolete.date.formats" class="smpl">obs-date</a>1010 <div id="rfc.figure.u.21"></div><pre class="inline"><span id="rfc.iref.g.34"></span> <a href="#date.time.formats.full.date" class="smpl">HTTP-date</a> = <a href="#preferred.date.format" class="smpl">rfc1123-date</a> / <a href="#obsolete.date.formats" class="smpl">obs-date</a> 983 1011 </pre><div id="preferred.date.format"> 984 1012 <p id="rfc.section.3.2.p.6"> Preferred format:</p> 985 1013 </div> 986 <div id="rfc.figure.u.2 1"></div><pre class="inline"><span id="rfc.iref.g.34"></span><span id="rfc.iref.g.35"></span><span id="rfc.iref.g.36"></span><span id="rfc.iref.g.37"></span><span id="rfc.iref.g.38"></span><span id="rfc.iref.g.39"></span><span id="rfc.iref.g.40"></span><span id="rfc.iref.g.41"></span><span id="rfc.iref.g.42"></span><span id="rfc.iref.g.43"></span><span id="rfc.iref.g.44"></span><span id="rfc.iref.g.45"></span> <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#core.rules" class="smpl">SP</a> date1 <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a>1014 <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.35"></span><span id="rfc.iref.g.36"></span><span id="rfc.iref.g.37"></span><span id="rfc.iref.g.38"></span><span id="rfc.iref.g.39"></span><span id="rfc.iref.g.40"></span><span id="rfc.iref.g.41"></span><span id="rfc.iref.g.42"></span><span id="rfc.iref.g.43"></span><span id="rfc.iref.g.44"></span><span id="rfc.iref.g.45"></span><span id="rfc.iref.g.46"></span> <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#core.rules" class="smpl">SP</a> date1 <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a> 987 1015 988 1016 <a href="#preferred.date.format" class="smpl">day-name</a> = %x4D.6F.6E ; "Mon", case-sensitive … … 1025 1053 <p id="rfc.section.3.2.p.9"> Obsolete formats:</p> 1026 1054 </div> 1027 <div id="rfc.figure.u.2 2"></div><pre class="inline"><span id="rfc.iref.g.46"></span> <a href="#obsolete.date.formats" class="smpl">obs-date</a> = <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> / <a href="#obsolete.date.formats" class="smpl">asctime-date</a>1028 </pre><div id="rfc.figure.u.2 3"></div><pre class="inline"><span id="rfc.iref.g.47"></span> <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> = <a href="#obsolete.date.formats" class="smpl">day-name-l</a> "," <a href="#core.rules" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date2</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a>1055 <div id="rfc.figure.u.23"></div><pre class="inline"><span id="rfc.iref.g.47"></span> <a href="#obsolete.date.formats" class="smpl">obs-date</a> = <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> / <a href="#obsolete.date.formats" class="smpl">asctime-date</a> 1056 </pre><div id="rfc.figure.u.24"></div><pre class="inline"><span id="rfc.iref.g.48"></span> <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> = <a href="#obsolete.date.formats" class="smpl">day-name-l</a> "," <a href="#core.rules" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date2</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a> 1029 1057 <a href="#obsolete.date.formats" class="smpl">date2</a> = <a href="#preferred.date.format" class="smpl">day</a> "-" <a href="#preferred.date.format" class="smpl">month</a> "-" 2<a href="#core.rules" class="smpl">DIGIT</a> 1030 1058 ; day-month-year (e.g., 02-Jun-82) … … 1037 1065 / %x53.61.74.75.72.64.61.79 ; "Saturday", case-sensitive 1038 1066 / %x53.75.6E.64.61.79 ; "Sunday", case-sensitive 1039 </pre><div id="rfc.figure.u.2 4"></div><pre class="inline"><span id="rfc.iref.g.48"></span> <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> <a href="#core.rules" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date3</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a>1067 </pre><div id="rfc.figure.u.25"></div><pre class="inline"><span id="rfc.iref.g.49"></span> <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> <a href="#core.rules" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date3</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#core.rules" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a> 1040 1068 <a href="#obsolete.date.formats" class="smpl">date3</a> = <a href="#preferred.date.format" class="smpl">month</a> <a href="#core.rules" class="smpl">SP</a> ( 2<a href="#core.rules" class="smpl">DIGIT</a> / ( <a href="#core.rules" class="smpl">SP</a> 1<a href="#core.rules" class="smpl">DIGIT</a> )) 1041 1069 ; month day (e.g., Jun 2) … … 1055 1083 is a property of the message, not of the original entity. 1056 1084 </p> 1057 <div id="rfc.figure.u.2 5"></div><pre class="inline"><span id="rfc.iref.g.49"></span><span id="rfc.iref.g.50"></span> <a href="#transfer.codings" class="smpl">transfer-coding</a> = "chunked" / <a href="#transfer.codings" class="smpl">transfer-extension</a>1085 <div id="rfc.figure.u.26"></div><pre class="inline"><span id="rfc.iref.g.50"></span><span id="rfc.iref.g.51"></span> <a href="#transfer.codings" class="smpl">transfer-coding</a> = "chunked" / <a href="#transfer.codings" class="smpl">transfer-extension</a> 1058 1086 <a href="#transfer.codings" class="smpl">transfer-extension</a> = <a href="#rule.token.separators" class="smpl">token</a> *( <a href="#rule.whitespace" class="smpl">OWS</a> ";" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#rule.parameter" class="smpl">transfer-parameter</a> ) 1059 1087 </pre><div id="rule.parameter"> 1060 1088 <p id="rfc.section.3.3.p.3"> Parameters are in the form of attribute/value pairs.</p> 1061 1089 </div> 1062 <div id="rfc.figure.u.2 6"></div><pre class="inline"><span id="rfc.iref.g.51"></span><span id="rfc.iref.g.52"></span><span id="rfc.iref.g.53"></span><span id="rfc.iref.g.54"></span><span id="rfc.iref.g.55"></span> <a href="#rule.parameter" class="smpl">transfer-parameter</a> = <a href="#rule.parameter" class="smpl">attribute</a> <a href="#rule.whitespace" class="smpl">BWS</a> "=" <a href="#rule.whitespace" class="smpl">BWS</a> <a href="#rule.parameter" class="smpl">value</a>1090 <div id="rfc.figure.u.27"></div><pre class="inline"><span id="rfc.iref.g.52"></span><span id="rfc.iref.g.53"></span><span id="rfc.iref.g.54"></span><span id="rfc.iref.g.55"></span><span id="rfc.iref.g.56"></span> <a href="#rule.parameter" class="smpl">transfer-parameter</a> = <a href="#rule.parameter" class="smpl">attribute</a> <a href="#rule.whitespace" class="smpl">BWS</a> "=" <a href="#rule.whitespace" class="smpl">BWS</a> <a href="#rule.parameter" class="smpl">value</a> 1063 1091 <a href="#rule.parameter" class="smpl">attribute</a> = <a href="#rule.token.separators" class="smpl">token</a> 1064 1092 <a href="#rule.parameter" class="smpl">value</a> = <a href="#rule.token.separators" class="smpl">token</a> / <a href="#rule.quoted-string" class="smpl">quoted-string</a> … … 1085 1113 necessary for the recipient to verify that it has received the full message. 1086 1114 </p> 1087 <div id="rfc.figure.u.2 7"></div><pre class="inline"><span id="rfc.iref.g.56"></span><span id="rfc.iref.g.57"></span><span id="rfc.iref.g.58"></span><span id="rfc.iref.g.59"></span><span id="rfc.iref.g.60"></span><span id="rfc.iref.g.61"></span><span id="rfc.iref.g.62"></span><span id="rfc.iref.g.63"></span><span id="rfc.iref.g.64"></span> <a href="#chunked.transfer.encoding" class="smpl">Chunked-Body</a> = *<a href="#chunked.transfer.encoding" class="smpl">chunk</a>1115 <div id="rfc.figure.u.28"></div><pre class="inline"><span id="rfc.iref.g.57"></span><span id="rfc.iref.g.58"></span><span id="rfc.iref.g.59"></span><span id="rfc.iref.g.60"></span><span id="rfc.iref.g.61"></span><span id="rfc.iref.g.62"></span><span id="rfc.iref.g.63"></span><span id="rfc.iref.g.64"></span><span id="rfc.iref.g.65"></span> <a href="#chunked.transfer.encoding" class="smpl">Chunked-Body</a> = *<a href="#chunked.transfer.encoding" class="smpl">chunk</a> 1088 1116 <a href="#chunked.transfer.encoding" class="smpl">last-chunk</a> 1089 1117 <a href="#chunked.transfer.encoding" class="smpl">trailer-part</a> … … 1123 1151 </p> 1124 1152 <p id="rfc.section.3.3.1.p.7">A process for decoding the "chunked" transfer-coding can be represented in pseudo-code as:</p> 1125 <div id="rfc.figure.u.2 8"></div><pre class="text"> length := 01153 <div id="rfc.figure.u.29"></div><pre class="text"> length := 0 1126 1154 read chunk-size, chunk-ext (if any) and CRLF 1127 1155 while (chunk-size > 0) { … … 1145 1173 By convention, the products are listed in order of their significance for identifying the application. 1146 1174 </p> 1147 <div id="rfc.figure.u. 29"></div><pre class="inline"><span id="rfc.iref.g.65"></span><span id="rfc.iref.g.66"></span> <a href="#product.tokens" class="smpl">product</a> = <a href="#rule.token.separators" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>]1175 <div id="rfc.figure.u.30"></div><pre class="inline"><span id="rfc.iref.g.66"></span><span id="rfc.iref.g.67"></span> <a href="#product.tokens" class="smpl">product</a> = <a href="#rule.token.separators" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>] 1148 1176 <a href="#product.tokens" class="smpl">product-version</a> = <a href="#rule.token.separators" class="smpl">token</a> 1149 1177 </pre><p id="rfc.section.3.4.p.3">Examples:</p> 1150 <div id="rfc.figure.u.3 0"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b31178 <div id="rfc.figure.u.31"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b3 1151 1179 Server: Apache/0.8.4 1152 1180 </pre><p id="rfc.section.3.4.p.5">Product tokens <em class="bcp14">SHOULD</em> be short and to the point. They <em class="bcp14">MUST NOT</em> be used for advertising or other non-essential information. Although any token character <em class="bcp14">MAY</em> appear in a product-version, this token <em class="bcp14">SHOULD</em> only be used for a version identifier (i.e., successive versions of the same product <em class="bcp14">SHOULD</em> only differ in the product-version portion of the product value). … … 1157 1185 a quality value of 0, then content with this parameter is `not acceptable' for the client. HTTP/1.1 applications <em class="bcp14">MUST NOT</em> generate more than three digits after the decimal point. User configuration of these values <em class="bcp14">SHOULD</em> also be limited in this fashion. 1158 1186 </p> 1159 <div id="rfc.figure.u.3 1"></div><pre class="inline"><span id="rfc.iref.g.67"></span> <a href="#quality.values" class="smpl">qvalue</a> = ( "0" [ "." 0*3<a href="#core.rules" class="smpl">DIGIT</a> ] )1187 <div id="rfc.figure.u.32"></div><pre class="inline"><span id="rfc.iref.g.68"></span> <a href="#quality.values" class="smpl">qvalue</a> = ( "0" [ "." 0*3<a href="#core.rules" class="smpl">DIGIT</a> ] ) 1160 1188 / ( "1" [ "." 0*3("0") ] ) 1161 1189 </pre><div class="note"> … … 1166 1194 <h2 id="rfc.section.4.1"><a href="#rfc.section.4.1">4.1</a> <a id="message.types" href="#message.types">Message Types</a></h2> 1167 1195 <p id="rfc.section.4.1.p.1">HTTP messages consist of requests from client to server and responses from server to client.</p> 1168 <div id="rfc.figure.u.3 2"></div><pre class="inline"><span id="rfc.iref.g.68"></span> <a href="#message.types" class="smpl">HTTP-message</a> = <a href="#request" class="smpl">Request</a> / <a href="#response" class="smpl">Response</a> ; HTTP/1.1 messages1196 <div id="rfc.figure.u.33"></div><pre class="inline"><span id="rfc.iref.g.69"></span> <a href="#message.types" class="smpl">HTTP-message</a> = <a href="#request" class="smpl">Request</a> / <a href="#response" class="smpl">Response</a> ; HTTP/1.1 messages 1169 1197 </pre><p id="rfc.section.4.1.p.3">Request (<a href="#request" title="Request">Section 5</a>) and Response (<a href="#response" title="Response">Section 6</a>) messages use the generic message format of <a href="#RFC5322" id="rfc.xref.RFC5322.3"><cite title="Internet Message Format">[RFC5322]</cite></a> for transferring entities (the payload of the message). Both types of message consist of a start-line, zero or more header 1170 1198 fields (also known as "headers"), an empty line (i.e., a line with nothing preceding the CRLF) indicating the end of the header 1171 1199 fields, and possibly a message-body. 1172 1200 </p> 1173 <div id="rfc.figure.u.3 3"></div><pre class="inline"><span id="rfc.iref.g.69"></span><span id="rfc.iref.g.70"></span> <a href="#message.types" class="smpl">generic-message</a> = <a href="#message.types" class="smpl">start-line</a>1201 <div id="rfc.figure.u.34"></div><pre class="inline"><span id="rfc.iref.g.70"></span><span id="rfc.iref.g.71"></span> <a href="#message.types" class="smpl">generic-message</a> = <a href="#message.types" class="smpl">start-line</a> 1174 1202 *( <a href="#message.headers" class="smpl">message-header</a> <a href="#core.rules" class="smpl">CRLF</a> ) 1175 1203 <a href="#core.rules" class="smpl">CRLF</a> … … 1190 1218 case-insensitive. 1191 1219 </p> 1192 <div id="rfc.figure.u.3 4"></div><pre class="inline"><span id="rfc.iref.g.71"></span><span id="rfc.iref.g.72"></span><span id="rfc.iref.g.73"></span><span id="rfc.iref.g.74"></span> <a href="#message.headers" class="smpl">message-header</a> = <a href="#message.headers" class="smpl">field-name</a> ":" OWS [ <a href="#message.headers" class="smpl">field-value</a> ] OWS1220 <div id="rfc.figure.u.35"></div><pre class="inline"><span id="rfc.iref.g.72"></span><span id="rfc.iref.g.73"></span><span id="rfc.iref.g.74"></span><span id="rfc.iref.g.75"></span> <a href="#message.headers" class="smpl">message-header</a> = <a href="#message.headers" class="smpl">field-name</a> ":" OWS [ <a href="#message.headers" class="smpl">field-value</a> ] OWS 1193 1221 <a href="#message.headers" class="smpl">field-name</a> = <a href="#rule.token.separators" class="smpl">token</a> 1194 1222 <a href="#message.headers" class="smpl">field-value</a> = *( <a href="#message.headers" class="smpl">field-content</a> / <a href="#rule.whitespace" class="smpl">OWS</a> ) … … 1215 1243 </p> 1216 1244 </div> 1217 <div id="rfc.figure.u.3 5"></div><pre class="inline"><span id="rfc.iref.g.75"></span><span id="rfc.iref.g.76"></span> <a href="#rule.comment" class="smpl">comment</a> = "(" *( <a href="#rule.comment" class="smpl">ctext</a> / <a href="#rule.quoted-pair" class="smpl">quoted-pair</a> / <a href="#rule.comment" class="smpl">comment</a> ) ")"1245 <div id="rfc.figure.u.36"></div><pre class="inline"><span id="rfc.iref.g.76"></span><span id="rfc.iref.g.77"></span> <a href="#rule.comment" class="smpl">comment</a> = "(" *( <a href="#rule.comment" class="smpl">ctext</a> / <a href="#rule.quoted-pair" class="smpl">quoted-pair</a> / <a href="#rule.comment" class="smpl">comment</a> ) ")" 1218 1246 <a href="#rule.comment" class="smpl">ctext</a> = <a href="#rule.whitespace" class="smpl">OWS</a> / %x21-27 / %x2A-5B / %x5D-7E / <a href="#rule.quoted-string" class="smpl">obs-text</a> 1219 1247 ; <a href="#rule.whitespace" class="smpl">OWS</a> / <<a href="#core.rules" class="smpl">VCHAR</a> except "(", ")", and "\"> / <a href="#rule.quoted-string" class="smpl">obs-text</a> … … 1238 1266 header field (<a href="#header.transfer-encoding" id="rfc.xref.header.transfer-encoding.2" title="Transfer-Encoding">Section 8.7</a>). 1239 1267 </p> 1240 <div id="rfc.figure.u.3 6"></div><pre class="inline"><span id="rfc.iref.g.77"></span> <a href="#message.body" class="smpl">message-body</a> = <a href="#abnf.dependencies" class="smpl">entity-body</a>1268 <div id="rfc.figure.u.37"></div><pre class="inline"><span id="rfc.iref.g.78"></span> <a href="#message.body" class="smpl">message-body</a> = <a href="#abnf.dependencies" class="smpl">entity-body</a> 1241 1269 / <entity-body encoded as per <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a>> 1242 1270 </pre><p id="rfc.section.4.3.p.3">Transfer-Encoding <em class="bcp14">MUST</em> be used to indicate any transfer-codings applied by an application to ensure safe and proper transfer of the message. Transfer-Encoding … … 1305 1333 to the entity being transferred. These header fields apply only to the message being transmitted. 1306 1334 </p> 1307 <div id="rfc.figure.u.3 7"></div><pre class="inline"><span id="rfc.iref.g.78"></span> <a href="#general.header.fields" class="smpl">general-header</a> = <a href="#abnf.dependencies" class="smpl">Cache-Control</a> ; <a href="#Part6" id="rfc.xref.Part6.5"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 3.2</a>1335 <div id="rfc.figure.u.38"></div><pre class="inline"><span id="rfc.iref.g.79"></span> <a href="#general.header.fields" class="smpl">general-header</a> = <a href="#abnf.dependencies" class="smpl">Cache-Control</a> ; <a href="#Part6" id="rfc.xref.Part6.5"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 3.2</a> 1308 1336 / <a href="#header.connection" class="smpl">Connection</a> ; <a href="#header.connection" id="rfc.xref.header.connection.1" title="Connection">Section 8.1</a> 1309 1337 / <a href="#header.date" class="smpl">Date</a> ; <a href="#header.date" id="rfc.xref.header.date.1" title="Date">Section 8.3</a> … … 1322 1350 resource, the identifier of the resource, and the protocol version in use. 1323 1351 </p> 1324 <div id="rfc.figure.u.3 8"></div><pre class="inline"><span id="rfc.iref.g.79"></span> <a href="#request" class="smpl">Request</a> = <a href="#request-line" class="smpl">Request-Line</a> ; <a href="#request-line" title="Request-Line">Section 5.1</a>1352 <div id="rfc.figure.u.39"></div><pre class="inline"><span id="rfc.iref.g.80"></span> <a href="#request" class="smpl">Request</a> = <a href="#request-line" class="smpl">Request-Line</a> ; <a href="#request-line" title="Request-Line">Section 5.1</a> 1325 1353 *(( <a href="#general.header.fields" class="smpl">general-header</a> ; <a href="#general.header.fields" title="General Header Fields">Section 4.5</a> 1326 1354 / <a href="#abnf.dependencies" class="smpl">request-header</a> ; <a href="#Part2" id="rfc.xref.Part2.3"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>, <a href="p2-semantics.html#request.header.fields" title="Request Header Fields">Section 3</a> … … 1332 1360 The elements are separated by SP characters. No CR or LF is allowed except in the final CRLF sequence. 1333 1361 </p> 1334 <div id="rfc.figure.u. 39"></div><pre class="inline"><span id="rfc.iref.g.80"></span> <a href="#request-line" class="smpl">Request-Line</a> = <a href="#method" class="smpl">Method</a> <a href="#core.rules" class="smpl">SP</a> <a href="#request-target" class="smpl">request-target</a> <a href="#core.rules" class="smpl">SP</a> <a href="#http.version" class="smpl">HTTP-Version</a> <a href="#core.rules" class="smpl">CRLF</a>1362 <div id="rfc.figure.u.40"></div><pre class="inline"><span id="rfc.iref.g.81"></span> <a href="#request-line" class="smpl">Request-Line</a> = <a href="#method" class="smpl">Method</a> <a href="#core.rules" class="smpl">SP</a> <a href="#request-target" class="smpl">request-target</a> <a href="#core.rules" class="smpl">SP</a> <a href="#http.version" class="smpl">HTTP-Version</a> <a href="#core.rules" class="smpl">CRLF</a> 1335 1363 </pre><h3 id="rfc.section.5.1.1"><a href="#rfc.section.5.1.1">5.1.1</a> <a id="method" href="#method">Method</a></h3> 1336 1364 <p id="rfc.section.5.1.1.p.1">The Method token indicates the method to be performed on the resource identified by the request-target. The method is case-sensitive.</p> 1337 <div id="rfc.figure.u.4 0"></div><pre class="inline"><span id="rfc.iref.g.81"></span><span id="rfc.iref.g.82"></span> <a href="#method" class="smpl">Method</a> = <a href="#rule.token.separators" class="smpl">token</a>1365 <div id="rfc.figure.u.41"></div><pre class="inline"><span id="rfc.iref.g.82"></span><span id="rfc.iref.g.83"></span> <a href="#method" class="smpl">Method</a> = <a href="#rule.token.separators" class="smpl">token</a> 1338 1366 </pre><h3 id="rfc.section.5.1.2"><a href="#rfc.section.5.1.2">5.1.2</a> <a id="request-target" href="#request-target">request-target</a></h3> 1339 1367 <p id="rfc.section.5.1.2.p.1">The request-target identifies the resource upon which to apply the request.</p> 1340 <div id="rfc.figure.u.4 1"></div><pre class="inline"><span id="rfc.iref.g.83"></span> <a href="#request-target" class="smpl">request-target</a> = "*"1368 <div id="rfc.figure.u.42"></div><pre class="inline"><span id="rfc.iref.g.84"></span> <a href="#request-target" class="smpl">request-target</a> = "*" 1341 1369 / <a href="#uri" class="smpl">absolute-URI</a> 1342 1370 / ( <a href="#uri" class="smpl">path-absolute</a> [ "?" <a href="#uri" class="smpl">query</a> ] ) … … 1346 1374 apply to a resource. One example would be 1347 1375 </p> 1348 <div id="rfc.figure.u.4 2"></div><pre class="text"> OPTIONS * HTTP/1.11376 <div id="rfc.figure.u.43"></div><pre class="text"> OPTIONS * HTTP/1.1 1349 1377 </pre><p id="rfc.section.5.1.2.p.5">The absolute-URI form is <em class="bcp14">REQUIRED</em> when the request is being made to a proxy. The proxy is requested to forward the request or service it from a valid cache, 1350 1378 and return the response. Note that the proxy <em class="bcp14">MAY</em> forward the request on to another proxy or directly to the server specified by the absolute-URI. In order to avoid request … … 1352 1380 Request-Line would be: 1353 1381 </p> 1354 <div id="rfc.figure.u.4 3"></div><pre class="text"> GET http://www.example.org/pub/WWW/TheProject.html HTTP/1.11382 <div id="rfc.figure.u.44"></div><pre class="text"> GET http://www.example.org/pub/WWW/TheProject.html HTTP/1.1 1355 1383 </pre><p id="rfc.section.5.1.2.p.7">To allow for transition to absolute-URIs in all requests in future versions of HTTP, all HTTP/1.1 servers <em class="bcp14">MUST</em> accept the absolute-URI form in requests, even though HTTP/1.1 clients will only generate them in requests to proxies. 1356 1384 </p> … … 1361 1389 server would create a TCP connection to port 80 of the host "www.example.org" and send the lines: 1362 1390 </p> 1363 <div id="rfc.figure.u.4 4"></div><pre class="text"> GET /pub/WWW/TheProject.html HTTP/1.11391 <div id="rfc.figure.u.45"></div><pre class="text"> GET /pub/WWW/TheProject.html HTTP/1.1 1364 1392 Host: www.example.org 1365 1393 </pre><p id="rfc.section.5.1.2.p.11">followed by the remainder of the Request. Note that the absolute path cannot be empty; if none is present in the original … … 1369 1397 asterisk form of request-target, then the last proxy on the request chain <em class="bcp14">MUST</em> forward the request with "*" as the final request-target. 1370 1398 </p> 1371 <div id="rfc.figure.u.4 5"></div>1399 <div id="rfc.figure.u.46"></div> 1372 1400 <p>For example, the request</p><pre class="text"> OPTIONS http://www.example.org:8001 HTTP/1.1 1373 </pre><div id="rfc.figure.u.4 6"></div>1401 </pre><div id="rfc.figure.u.47"></div> 1374 1402 <p>would be forwarded by the proxy as</p><pre class="text"> OPTIONS * HTTP/1.1 1375 1403 Host: www.example.org:8001 1376 1404 </pre> <p>after connecting to port 8001 of host "www.example.org".</p> 1377 <p id="rfc.section.5.1.2.p.15">The request-target is transmitted in the format specified in <a href="#http.uri" title="http URI scheme">Section 2.1.1</a>. If the request-target is percent-encoded (<a href="#RFC3986" id="rfc.xref.RFC3986.1 7"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-2.1">Section 2.1</a>), the origin server <em class="bcp14">MUST</em> decode the request-target in order to properly interpret the request. Servers <em class="bcp14">SHOULD</em> respond to invalid request-targets with an appropriate status code.1405 <p id="rfc.section.5.1.2.p.15">The request-target is transmitted in the format specified in <a href="#http.uri" title="http URI scheme">Section 2.1.1</a>. If the request-target is percent-encoded (<a href="#RFC3986" id="rfc.xref.RFC3986.19"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-2.1">Section 2.1</a>), the origin server <em class="bcp14">MUST</em> decode the request-target in order to properly interpret the request. Servers <em class="bcp14">SHOULD</em> respond to invalid request-targets with an appropriate status code. 1378 1406 </p> 1379 1407 <p id="rfc.section.5.1.2.p.16">A transparent proxy <em class="bcp14">MUST NOT</em> rewrite the "path-absolute" part of the received request-target when forwarding it to the next inbound server, except as noted … … 1414 1442 <h1 id="rfc.section.6"><a href="#rfc.section.6">6.</a> <a id="response" href="#response">Response</a></h1> 1415 1443 <p id="rfc.section.6.p.1">After receiving and interpreting a request message, a server responds with an HTTP response message.</p> 1416 <div id="rfc.figure.u.4 7"></div><pre class="inline"><span id="rfc.iref.g.84"></span> <a href="#response" class="smpl">Response</a> = <a href="#status-line" class="smpl">Status-Line</a> ; <a href="#status-line" title="Status-Line">Section 6.1</a>1444 <div id="rfc.figure.u.48"></div><pre class="inline"><span id="rfc.iref.g.85"></span> <a href="#response" class="smpl">Response</a> = <a href="#status-line" class="smpl">Status-Line</a> ; <a href="#status-line" title="Status-Line">Section 6.1</a> 1417 1445 *(( <a href="#general.header.fields" class="smpl">general-header</a> ; <a href="#general.header.fields" title="General Header Fields">Section 4.5</a> 1418 1446 / <a href="#abnf.dependencies" class="smpl">response-header</a> ; <a href="#Part2" id="rfc.xref.Part2.6"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>, <a href="p2-semantics.html#response.header.fields" title="Response Header Fields">Section 5</a> … … 1425 1453 CRLF sequence. 1426 1454 </p> 1427 <div id="rfc.figure.u.4 8"></div><pre class="inline"><span id="rfc.iref.g.85"></span> <a href="#status-line" class="smpl">Status-Line</a> = <a href="#http.version" class="smpl">HTTP-Version</a> <a href="#core.rules" class="smpl">SP</a> <a href="#status.code.and.reason.phrase" class="smpl">Status-Code</a> <a href="#core.rules" class="smpl">SP</a> <a href="#status.code.and.reason.phrase" class="smpl">Reason-Phrase</a> <a href="#core.rules" class="smpl">CRLF</a>1455 <div id="rfc.figure.u.49"></div><pre class="inline"><span id="rfc.iref.g.86"></span> <a href="#status-line" class="smpl">Status-Line</a> = <a href="#http.version" class="smpl">HTTP-Version</a> <a href="#core.rules" class="smpl">SP</a> <a href="#status.code.and.reason.phrase" class="smpl">Status-Code</a> <a href="#core.rules" class="smpl">SP</a> <a href="#status.code.and.reason.phrase" class="smpl">Reason-Phrase</a> <a href="#core.rules" class="smpl">CRLF</a> 1428 1456 </pre><h3 id="rfc.section.6.1.1"><a href="#rfc.section.6.1.1">6.1.1</a> <a id="status.code.and.reason.phrase" href="#status.code.and.reason.phrase">Status Code and Reason Phrase</a></h3> 1429 1457 <p id="rfc.section.6.1.1.p.1">The Status-Code element is a 3-digit integer result code of the attempt to understand and satisfy the request. These codes … … 1442 1470 <li>5xx: Server Error - The server failed to fulfill an apparently valid request</li> 1443 1471 </ul> 1444 <div id="rfc.figure.u. 49"></div><pre class="inline"><span id="rfc.iref.g.86"></span><span id="rfc.iref.g.87"></span><span id="rfc.iref.g.88"></span> <a href="#status.code.and.reason.phrase" class="smpl">Status-Code</a> = 3<a href="#core.rules" class="smpl">DIGIT</a>1472 <div id="rfc.figure.u.50"></div><pre class="inline"><span id="rfc.iref.g.87"></span><span id="rfc.iref.g.88"></span><span id="rfc.iref.g.89"></span> <a href="#status.code.and.reason.phrase" class="smpl">Status-Code</a> = 3<a href="#core.rules" class="smpl">DIGIT</a> 1445 1473 <a href="#status.code.and.reason.phrase" class="smpl">Reason-Phrase</a> = *( <a href="#core.rules" class="smpl">WSP</a> / <a href="#core.rules" class="smpl">VCHAR</a> / <a href="#rule.quoted-string" class="smpl">obs-text</a> ) 1446 1474 </pre><h1 id="rfc.section.7"><a href="#rfc.section.7">7.</a> <a id="connections" href="#connections">Connections</a></h1> … … 1634 1662 </p> 1635 1663 <p id="rfc.section.8.1.p.2">The Connection header's value has the following grammar:</p> 1636 <div id="rfc.figure.u.5 0"></div><pre class="inline"><span id="rfc.iref.g.89"></span><span id="rfc.iref.g.90"></span><span id="rfc.iref.g.91"></span> <a href="#header.connection" class="smpl">Connection</a> = "Connection" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.connection" class="smpl">Connection-v</a>1664 <div id="rfc.figure.u.51"></div><pre class="inline"><span id="rfc.iref.g.90"></span><span id="rfc.iref.g.91"></span><span id="rfc.iref.g.92"></span> <a href="#header.connection" class="smpl">Connection</a> = "Connection" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.connection" class="smpl">Connection-v</a> 1637 1665 <a href="#header.connection" class="smpl">Connection-v</a> = 1#<a href="#header.connection" class="smpl">connection-token</a> 1638 1666 <a href="#header.connection" class="smpl">connection-token</a> = <a href="#rule.token.separators" class="smpl">token</a> … … 1647 1675 of the response. For example, 1648 1676 </p> 1649 <div id="rfc.figure.u.5 1"></div><pre class="text"> Connection: close1677 <div id="rfc.figure.u.52"></div><pre class="text"> Connection: close 1650 1678 </pre><p id="rfc.section.8.1.p.8">in either the request or the response header fields indicates that the connection <em class="bcp14">SHOULD NOT</em> be considered `persistent' (<a href="#persistent.connections" title="Persistent Connections">Section 7.1</a>) after the current request/response is complete. 1651 1679 </p> … … 1663 1691 or, in the case of the HEAD method, the size of the entity-body that would have been sent had the request been a GET. 1664 1692 </p> 1665 <div id="rfc.figure.u.5 2"></div><pre class="inline"><span id="rfc.iref.g.92"></span><span id="rfc.iref.g.93"></span> <a href="#header.content-length" class="smpl">Content-Length</a> = "Content-Length" ":" <a href="#rule.whitespace" class="smpl">OWS</a> 1*<a href="#header.content-length" class="smpl">Content-Length-v</a>1693 <div id="rfc.figure.u.53"></div><pre class="inline"><span id="rfc.iref.g.93"></span><span id="rfc.iref.g.94"></span> <a href="#header.content-length" class="smpl">Content-Length</a> = "Content-Length" ":" <a href="#rule.whitespace" class="smpl">OWS</a> 1*<a href="#header.content-length" class="smpl">Content-Length-v</a> 1666 1694 <a href="#header.content-length" class="smpl">Content-Length-v</a> = 1*<a href="#core.rules" class="smpl">DIGIT</a> 1667 1695 </pre><p id="rfc.section.8.2.p.3">An example is</p> 1668 <div id="rfc.figure.u.5 3"></div><pre class="text"> Content-Length: 34951696 <div id="rfc.figure.u.54"></div><pre class="text"> Content-Length: 3495 1669 1697 </pre><p id="rfc.section.8.2.p.5">Applications <em class="bcp14">SHOULD</em> use this field to indicate the transfer-length of the message-body, unless this is prohibited by the rules in <a href="#message.length" title="Message Length">Section 4.4</a>. 1670 1698 </p> … … 1681 1709 as orig-date in <a href="http://tools.ietf.org/html/rfc5322#section-3.6.1">Section 3.6.1</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.5"><cite title="Internet Message Format">[RFC5322]</cite></a>. The field value is an HTTP-date, as described in <a href="#date.time.formats.full.date" title="Date/Time Formats: Full Date">Section 3.2</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format. 1682 1710 </p> 1683 <div id="rfc.figure.u.5 4"></div><pre class="inline"><span id="rfc.iref.g.94"></span><span id="rfc.iref.g.95"></span> <a href="#header.date" class="smpl">Date</a> = "Date" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.date" class="smpl">Date-v</a>1711 <div id="rfc.figure.u.55"></div><pre class="inline"><span id="rfc.iref.g.95"></span><span id="rfc.iref.g.96"></span> <a href="#header.date" class="smpl">Date</a> = "Date" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.date" class="smpl">Date-v</a> 1684 1712 <a href="#header.date" class="smpl">Date-v</a> = <a href="#date.time.formats.full.date" class="smpl">HTTP-date</a> 1685 1713 </pre><p id="rfc.section.8.3.p.3">An example is</p> 1686 <div id="rfc.figure.u.5 5"></div><pre class="text"> Date: Tue, 15 Nov 1994 08:12:31 GMT1714 <div id="rfc.figure.u.56"></div><pre class="text"> Date: Tue, 15 Nov 1994 08:12:31 GMT 1687 1715 </pre><p id="rfc.section.8.3.p.5">Origin servers <em class="bcp14">MUST</em> include a Date header field in all responses, except in these cases: 1688 1716 </p> … … 1720 1748 a single IP address. 1721 1749 </p> 1722 <div id="rfc.figure.u.5 6"></div><pre class="inline"><span id="rfc.iref.g.96"></span><span id="rfc.iref.g.97"></span> <a href="#header.host" class="smpl">Host</a> = "Host" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.host" class="smpl">Host-v</a>1750 <div id="rfc.figure.u.57"></div><pre class="inline"><span id="rfc.iref.g.97"></span><span id="rfc.iref.g.98"></span> <a href="#header.host" class="smpl">Host</a> = "Host" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.host" class="smpl">Host-v</a> 1723 1751 <a href="#header.host" class="smpl">Host-v</a> = <a href="#uri" class="smpl">uri-host</a> [ ":" <a href="#uri" class="smpl">port</a> ] ; <a href="#http.uri" title="http URI scheme">Section 2.1.1</a> 1724 1752 </pre><p id="rfc.section.8.4.p.3">A "host" without any trailing port information implies the default port for the service requested (e.g., "80" for an HTTP 1725 1753 URL). For example, a request on the origin server for <http://www.example.org/pub/WWW/> would properly include: 1726 1754 </p> 1727 <div id="rfc.figure.u.5 7"></div><pre class="text"> GET /pub/WWW/ HTTP/1.11755 <div id="rfc.figure.u.58"></div><pre class="text"> GET /pub/WWW/ HTTP/1.1 1728 1756 Host: www.example.org 1729 1757 </pre><p id="rfc.section.8.4.p.5">A client <em class="bcp14">MUST</em> include a Host header field in all HTTP/1.1 request messages. If the requested URI does not include an Internet host name … … 1740 1768 and/or a comma-separated list of extension transfer-coding names with optional accept parameters (as described in <a href="#transfer.codings" title="Transfer Codings">Section 3.3</a>). 1741 1769 </p> 1742 <div id="rfc.figure.u.5 8"></div><pre class="inline"><span id="rfc.iref.g.98"></span><span id="rfc.iref.g.99"></span><span id="rfc.iref.g.100"></span><span id="rfc.iref.g.101"></span><span id="rfc.iref.g.102"></span> <a href="#header.te" class="smpl">TE</a> = "TE" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.te" class="smpl">TE-v</a>1770 <div id="rfc.figure.u.59"></div><pre class="inline"><span id="rfc.iref.g.99"></span><span id="rfc.iref.g.100"></span><span id="rfc.iref.g.101"></span><span id="rfc.iref.g.102"></span><span id="rfc.iref.g.103"></span> <a href="#header.te" class="smpl">TE</a> = "TE" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.te" class="smpl">TE-v</a> 1743 1771 <a href="#header.te" class="smpl">TE-v</a> = #<a href="#header.te" class="smpl">t-codings</a> 1744 1772 <a href="#header.te" class="smpl">t-codings</a> = "trailers" / ( <a href="#transfer.codings" class="smpl">transfer-extension</a> [ <a href="#header.te" class="smpl">te-params</a> ] ) … … 1749 1777 </p> 1750 1778 <p id="rfc.section.8.5.p.4">Examples of its use are:</p> 1751 <div id="rfc.figure.u. 59"></div><pre class="text"> TE: deflate1779 <div id="rfc.figure.u.60"></div><pre class="text"> TE: deflate 1752 1780 TE: 1753 1781 TE: trailers, deflate;q=0.5 … … 1786 1814 chunked transfer-coding. 1787 1815 </p> 1788 <div id="rfc.figure.u.6 0"></div><pre class="inline"><span id="rfc.iref.g.103"></span><span id="rfc.iref.g.104"></span> <a href="#header.trailer" class="smpl">Trailer</a> = "Trailer" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.trailer" class="smpl">Trailer-v</a>1816 <div id="rfc.figure.u.61"></div><pre class="inline"><span id="rfc.iref.g.104"></span><span id="rfc.iref.g.105"></span> <a href="#header.trailer" class="smpl">Trailer</a> = "Trailer" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.trailer" class="smpl">Trailer-v</a> 1789 1817 <a href="#header.trailer" class="smpl">Trailer-v</a> = 1#<a href="#message.headers" class="smpl">field-name</a> 1790 1818 </pre><p id="rfc.section.8.6.p.3">An HTTP/1.1 message <em class="bcp14">SHOULD</em> include a Trailer header field in a message using chunked transfer-coding with a non-empty trailer. Doing so allows the recipient … … 1807 1835 transfer-coding is a property of the message, not of the entity. 1808 1836 </p> 1809 <div id="rfc.figure.u.6 1"></div><pre class="inline"><span id="rfc.iref.g.105"></span><span id="rfc.iref.g.106"></span> <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a> = "Transfer-Encoding" ":" <a href="#rule.whitespace" class="smpl">OWS</a>1837 <div id="rfc.figure.u.62"></div><pre class="inline"><span id="rfc.iref.g.106"></span><span id="rfc.iref.g.107"></span> <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a> = "Transfer-Encoding" ":" <a href="#rule.whitespace" class="smpl">OWS</a> 1810 1838 <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding-v</a> 1811 1839 <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding-v</a> = 1#<a href="#transfer.codings" class="smpl">transfer-coding</a> 1812 1840 </pre><p id="rfc.section.8.7.p.3">Transfer-codings are defined in <a href="#transfer.codings" title="Transfer Codings">Section 3.3</a>. An example is: 1813 1841 </p> 1814 <div id="rfc.figure.u.6 2"></div><pre class="text"> Transfer-Encoding: chunked1842 <div id="rfc.figure.u.63"></div><pre class="text"> Transfer-Encoding: chunked 1815 1843 </pre><p id="rfc.section.8.7.p.5">If multiple encodings have been applied to an entity, the transfer-codings <em class="bcp14">MUST</em> be listed in the order in which they were applied. Additional information about the encoding parameters <em class="bcp14">MAY</em> be provided by other entity-header fields not defined by this specification. 1816 1844 </p> … … 1822 1850 to use if the server finds it appropriate to switch protocols. The server <em class="bcp14">MUST</em> use the Upgrade header field within a 101 (Switching Protocols) response to indicate which protocol(s) are being switched. 1823 1851 </p> 1824 <div id="rfc.figure.u.6 3"></div><pre class="inline"><span id="rfc.iref.g.107"></span><span id="rfc.iref.g.108"></span> <a href="#header.upgrade" class="smpl">Upgrade</a> = "Upgrade" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.upgrade" class="smpl">Upgrade-v</a>1852 <div id="rfc.figure.u.64"></div><pre class="inline"><span id="rfc.iref.g.108"></span><span id="rfc.iref.g.109"></span> <a href="#header.upgrade" class="smpl">Upgrade</a> = "Upgrade" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.upgrade" class="smpl">Upgrade-v</a> 1825 1853 <a href="#header.upgrade" class="smpl">Upgrade-v</a> = 1#<a href="#product.tokens" class="smpl">product</a> 1826 1854 </pre><p id="rfc.section.8.8.p.3">For example,</p> 1827 <div id="rfc.figure.u.6 4"></div><pre class="text"> Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x111855 <div id="rfc.figure.u.65"></div><pre class="text"> Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11 1828 1856 </pre><p id="rfc.section.8.8.p.5">The Upgrade header field is intended to provide a simple mechanism for transition from HTTP/1.1 to some other, incompatible 1829 1857 protocol. It does so by allowing the client to advertise its desire to use another protocol, such as a later version of HTTP … … 1854 1882 of all senders along the request/response chain. 1855 1883 </p> 1856 <div id="rfc.figure.u.6 5"></div><pre class="inline"><span id="rfc.iref.g.109"></span><span id="rfc.iref.g.110"></span><span id="rfc.iref.g.111"></span><span id="rfc.iref.g.112"></span><span id="rfc.iref.g.113"></span><span id="rfc.iref.g.114"></span><span id="rfc.iref.g.115"></span> <a href="#header.via" class="smpl">Via</a> = "Via" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.via" class="smpl">Via-v</a>1884 <div id="rfc.figure.u.66"></div><pre class="inline"><span id="rfc.iref.g.110"></span><span id="rfc.iref.g.111"></span><span id="rfc.iref.g.112"></span><span id="rfc.iref.g.113"></span><span id="rfc.iref.g.114"></span><span id="rfc.iref.g.115"></span><span id="rfc.iref.g.116"></span> <a href="#header.via" class="smpl">Via</a> = "Via" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.via" class="smpl">Via-v</a> 1857 1885 <a href="#header.via" class="smpl">Via-v</a> = 1#( <a href="#header.via" class="smpl">received-protocol</a> <a href="#rule.whitespace" class="smpl">RWS</a> <a href="#header.via" class="smpl">received-by</a> 1858 1886 [ <a href="#rule.whitespace" class="smpl">RWS</a> <a href="#rule.comment" class="smpl">comment</a> ] ) … … 1879 1907 server at www.example.com. The request received by www.example.com would then have the following Via header field: 1880 1908 </p> 1881 <div id="rfc.figure.u.6 6"></div><pre class="text"> Via: 1.0 fred, 1.1 p.example.net (Apache/1.1)1909 <div id="rfc.figure.u.67"></div><pre class="text"> Via: 1.0 fred, 1.1 p.example.net (Apache/1.1) 1882 1910 </pre><p id="rfc.section.8.9.p.9">Proxies and gateways used as a portal through a network firewall <em class="bcp14">SHOULD NOT</em>, by default, forward the names and ports of hosts within the firewall region. This information <em class="bcp14">SHOULD</em> only be propagated if explicitly enabled. If not enabled, the received-by host of any host behind the firewall <em class="bcp14">SHOULD</em> be replaced by an appropriate pseudonym for that host. 1883 1911 </p> … … 1885 1913 For example, 1886 1914 </p> 1887 <div id="rfc.figure.u.6 7"></div><pre class="text"> Via: 1.0 ricky, 1.1 ethel, 1.1 fred, 1.0 lucy1915 <div id="rfc.figure.u.68"></div><pre class="text"> Via: 1.0 ricky, 1.1 ethel, 1.1 fred, 1.0 lucy 1888 1916 </pre><p id="rfc.section.8.9.p.12">could be collapsed to</p> 1889 <div id="rfc.figure.u.6 8"></div><pre class="text"> Via: 1.0 ricky, 1.1 mertz, 1.0 lucy1917 <div id="rfc.figure.u.69"></div><pre class="text"> Via: 1.0 ricky, 1.1 mertz, 1.0 lucy 1890 1918 </pre><p id="rfc.section.8.9.p.14">Applications <em class="bcp14">SHOULD NOT</em> combine multiple entries unless they are all under the same organizational control and the hosts have already been replaced 1891 1919 by pseudonyms. Applications <em class="bcp14">MUST NOT</em> combine entries which have different received-protocol values. … … 2130 2158 </p> 2131 2159 <p id="rfc.section.10.4.p.4">If HTTP clients do not observe this rule, they could be spoofed when a previously-accessed server's IP address changes. As 2132 network renumbering is expected to become increasingly common <a href="#RFC1900" id="rfc.xref.RFC1900. 2"><cite title="Renumbering Needs Work">[RFC1900]</cite></a>, the possibility of this form of attack will grow. Observing this requirement thus reduces this potential security vulnerability.2160 network renumbering is expected to become increasingly common <a href="#RFC1900" id="rfc.xref.RFC1900.1"><cite title="Renumbering Needs Work">[RFC1900]</cite></a>, the possibility of this form of attack will grow. Observing this requirement thus reduces this potential security vulnerability. 2133 2161 </p> 2134 2162 <p id="rfc.section.10.4.p.5">This requirement also improves the load-balancing behavior of clients for replicated servers using the same DNS name and reduces … … 2535 2563 </p> 2536 2564 <dl class="empty"> 2537 <dd>The information transferred as the payload of a request or response. An entity consists of meta information in the form of2538 entity-headerfields and content in the form of an entity-body, as described in <a href="p3-payload.html#entity" title="Entity">Section 3</a> of <a href="#Part3" id="rfc.xref.Part3.13"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>.2565 <dd>The information transferred as the payload of a request or response. An entity consists of metadata in the form of entity-header 2566 fields and content in the form of an entity-body, as described in <a href="p3-payload.html#entity" title="Entity">Section 3</a> of <a href="#Part3" id="rfc.xref.Part3.13"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>. 2539 2567 </dd> 2540 2568 </dl> 2541 <p id="rfc.section.C.p.8"> <span id="rfc.iref.g.11 6"></span> <dfn>gateway</dfn>2569 <p id="rfc.section.C.p.8"> <span id="rfc.iref.g.117"></span> <dfn>gateway</dfn> 2542 2570 </p> 2543 2571 <dl class="empty"> … … 2575 2603 </dd> 2576 2604 </dl> 2577 <p id="rfc.section.C.p.13"> <span id="rfc.iref.r. 1"></span> <dfn>request</dfn>2605 <p id="rfc.section.C.p.13"> <span id="rfc.iref.r.2"></span> <dfn>request</dfn> 2578 2606 </p> 2579 2607 <dl class="empty"> … … 2581 2609 </dd> 2582 2610 </dl> 2583 <p id="rfc.section.C.p.14"> <span id="rfc.iref.r.2"></span> <dfn>resource</dfn> 2584 </p> 2585 <dl class="empty"> 2586 <dd>A network data object or service that can be identified by a URI, as defined in <a href="#uri" title="Uniform Resource Identifiers">Section 2.1</a>. Resources may be available in multiple representations (e.g. multiple languages, data formats, size, and resolutions) or 2587 vary in other ways. 2588 </dd> 2589 </dl> 2590 <p id="rfc.section.C.p.15"> <span id="rfc.iref.r.3"></span> <dfn>response</dfn> 2611 <p id="rfc.section.C.p.14"> <span id="rfc.iref.r.3"></span> <dfn>response</dfn> 2591 2612 </p> 2592 2613 <dl class="empty"> … … 2594 2615 </dd> 2595 2616 </dl> 2596 <p id="rfc.section.C.p.1 6"> <span id="rfc.iref.r.4"></span> <dfn>representation</dfn>2617 <p id="rfc.section.C.p.15"> <span id="rfc.iref.r.4"></span> <dfn>representation</dfn> 2597 2618 </p> 2598 2619 <dl class="empty"> … … 2600 2621 </dd> 2601 2622 </dl> 2602 <p id="rfc.section.C.p.1 7"> <span id="rfc.iref.s.1"></span> <dfn>server</dfn>2623 <p id="rfc.section.C.p.16"> <span id="rfc.iref.s.1"></span> <dfn>server</dfn> 2603 2624 </p> 2604 2625 <dl class="empty"> … … 2609 2630 </dd> 2610 2631 </dl> 2611 <p id="rfc.section.C.p.1 8"> <span id="rfc.iref.t.4"></span> <dfn>tunnel</dfn>2632 <p id="rfc.section.C.p.17"> <span id="rfc.iref.t.4"></span> <dfn>tunnel</dfn> 2612 2633 </p> 2613 2634 <dl class="empty"> … … 2617 2638 </dd> 2618 2639 </dl> 2619 <p id="rfc.section.C.p.1 9"> <span id="rfc.iref.u.4"></span> <span id="rfc.iref.d.2"></span> <dfn>upstream</dfn>/<dfn>downstream</dfn>2640 <p id="rfc.section.C.p.18"> <span id="rfc.iref.u.4"></span> <span id="rfc.iref.d.2"></span> <dfn>upstream</dfn>/<dfn>downstream</dfn> 2620 2641 </p> 2621 2642 <dl class="empty"> 2622 2643 <dd>Upstream and downstream describe the flow of a message: all messages flow from upstream to downstream.</dd> 2623 2644 </dl> 2624 <p id="rfc.section.C.p. 20"> <span id="rfc.iref.u.5"></span> <dfn>user agent</dfn>2645 <p id="rfc.section.C.p.19"> <span id="rfc.iref.u.5"></span> <dfn>user agent</dfn> 2625 2646 </p> 2626 2647 <dl class="empty"> … … 2629 2650 </dd> 2630 2651 </dl> 2631 <p id="rfc.section.C.p.2 1"> <span id="rfc.iref.v.2"></span> <dfn>variant</dfn>2652 <p id="rfc.section.C.p.20"> <span id="rfc.iref.v.2"></span> <dfn>variant</dfn> 2632 2653 </p> 2633 2654 <dl class="empty"> … … 2637 2658 </dl> 2638 2659 <h1 id="rfc.section.D"><a href="#rfc.section.D">D.</a> <a id="collected.abnf" href="#collected.abnf">Collected ABNF</a></h1> 2639 <div id="rfc.figure.u. 69"></div> <pre class="inline"><a href="#rule.whitespace" class="smpl">BWS</a> = OWS2660 <div id="rfc.figure.u.70"></div> <pre class="inline"><a href="#rule.whitespace" class="smpl">BWS</a> = OWS 2640 2661 2641 2662 <a href="#abnf.dependencies" class="smpl">Cache-Control</a> = <Cache-Control, defined in [Part6], Section 3.4> … … 2748 2769 <a href="#preferred.date.format" class="smpl">hour</a> = 2DIGIT 2749 2770 <a href="#http.uri" class="smpl">http-URI</a> = "http://" authority path-abempty [ "?" query ] 2771 <a href="#https.uri" class="smpl">https-URI</a> = "https://" authority path-abempty [ "?" query ] 2750 2772 2751 2773 <a href="#chunked.transfer.encoding" class="smpl">last-chunk</a> = 1*"0" *WSP [ chunk-ext ] CRLF … … 2821 2843 2822 2844 <a href="#preferred.date.format" class="smpl">year</a> = 4DIGIT 2823 </pre> <div id="rfc.figure.u.7 0"></div>2845 </pre> <div id="rfc.figure.u.71"></div> 2824 2846 <p>ABNF diagnostics:</p><pre class="inline">; Chunked-Body defined but not used 2825 2847 ; Content-Length defined but not used … … 2832 2854 ; generic-message defined but not used 2833 2855 ; http-URI defined but not used 2856 ; https-URI defined but not used 2834 2857 ; partial-URI defined but not used 2835 2858 </pre><h1 id="rfc.section.E"><a href="#rfc.section.E">E.</a> <a id="change.log" href="#change.log">Change Log (to be removed by RFC Editor before publication)</a></h1> … … 3055 3078 </li> 3056 3079 <li class="indline0"><a id="rfc.index.G" href="#rfc.index.G"><b>G</b></a><ul class="ind"> 3057 <li class="indline1">gateway <a class="iref" href="#rfc.iref.g.11 6">C</a></li>3080 <li class="indline1">gateway <a class="iref" href="#rfc.iref.g.117">C</a></li> 3058 3081 <li class="indline1"><tt>Grammar</tt> 3059 3082 <ul class="ind"> 3060 3083 <li class="indline1"><tt>absolute-URI</tt> <a class="iref" href="#rfc.iref.g.24"><b>2.1</b></a></li> 3061 3084 <li class="indline1">ALPHA <a class="iref" href="#rfc.iref.g.1"><b>1.2</b></a></li> 3062 <li class="indline1"><tt>asctime-date</tt> <a class="iref" href="#rfc.iref.g.4 8"><b>3.2</b></a></li>3063 <li class="indline1"><tt>attribute</tt> <a class="iref" href="#rfc.iref.g.5 2"><b>3.3</b></a></li>3085 <li class="indline1"><tt>asctime-date</tt> <a class="iref" href="#rfc.iref.g.49"><b>3.2</b></a></li> 3086 <li class="indline1"><tt>attribute</tt> <a class="iref" href="#rfc.iref.g.53"><b>3.3</b></a></li> 3064 3087 <li class="indline1"><tt>authority</tt> <a class="iref" href="#rfc.iref.g.25"><b>2.1</b></a></li> 3065 3088 <li class="indline1"><tt>BWS</tt> <a class="iref" href="#rfc.iref.g.15"><b>1.2.2</b></a></li> 3066 <li class="indline1"><tt>chunk</tt> <a class="iref" href="#rfc.iref.g.5 7"><b>3.3.1</b></a></li>3067 <li class="indline1"><tt>chunk-data</tt> <a class="iref" href="#rfc.iref.g.6 3"><b>3.3.1</b></a></li>3068 <li class="indline1"><tt>chunk-ext</tt> <a class="iref" href="#rfc.iref.g.6 0"><b>3.3.1</b></a></li>3069 <li class="indline1"><tt>chunk-ext-name</tt> <a class="iref" href="#rfc.iref.g.6 1"><b>3.3.1</b></a></li>3070 <li class="indline1"><tt>chunk-ext-val</tt> <a class="iref" href="#rfc.iref.g.6 2"><b>3.3.1</b></a></li>3071 <li class="indline1"><tt>chunk-size</tt> <a class="iref" href="#rfc.iref.g.5 8"><b>3.3.1</b></a></li>3072 <li class="indline1"><tt>Chunked-Body</tt> <a class="iref" href="#rfc.iref.g.5 6"><b>3.3.1</b></a></li>3073 <li class="indline1"><tt>comment</tt> <a class="iref" href="#rfc.iref.g.7 5"><b>4.2</b></a></li>3074 <li class="indline1"><tt>Connection</tt> <a class="iref" href="#rfc.iref.g. 89"><b>8.1</b></a></li>3075 <li class="indline1"><tt>connection-token</tt> <a class="iref" href="#rfc.iref.g.9 1"><b>8.1</b></a></li>3076 <li class="indline1"><tt>Connection-v</tt> <a class="iref" href="#rfc.iref.g.9 0"><b>8.1</b></a></li>3077 <li class="indline1"><tt>Content-Length</tt> <a class="iref" href="#rfc.iref.g.9 2"><b>8.2</b></a></li>3078 <li class="indline1"><tt>Content-Length-v</tt> <a class="iref" href="#rfc.iref.g.9 3"><b>8.2</b></a></li>3089 <li class="indline1"><tt>chunk</tt> <a class="iref" href="#rfc.iref.g.58"><b>3.3.1</b></a></li> 3090 <li class="indline1"><tt>chunk-data</tt> <a class="iref" href="#rfc.iref.g.64"><b>3.3.1</b></a></li> 3091 <li class="indline1"><tt>chunk-ext</tt> <a class="iref" href="#rfc.iref.g.61"><b>3.3.1</b></a></li> 3092 <li class="indline1"><tt>chunk-ext-name</tt> <a class="iref" href="#rfc.iref.g.62"><b>3.3.1</b></a></li> 3093 <li class="indline1"><tt>chunk-ext-val</tt> <a class="iref" href="#rfc.iref.g.63"><b>3.3.1</b></a></li> 3094 <li class="indline1"><tt>chunk-size</tt> <a class="iref" href="#rfc.iref.g.59"><b>3.3.1</b></a></li> 3095 <li class="indline1"><tt>Chunked-Body</tt> <a class="iref" href="#rfc.iref.g.57"><b>3.3.1</b></a></li> 3096 <li class="indline1"><tt>comment</tt> <a class="iref" href="#rfc.iref.g.76"><b>4.2</b></a></li> 3097 <li class="indline1"><tt>Connection</tt> <a class="iref" href="#rfc.iref.g.90"><b>8.1</b></a></li> 3098 <li class="indline1"><tt>connection-token</tt> <a class="iref" href="#rfc.iref.g.92"><b>8.1</b></a></li> 3099 <li class="indline1"><tt>Connection-v</tt> <a class="iref" href="#rfc.iref.g.91"><b>8.1</b></a></li> 3100 <li class="indline1"><tt>Content-Length</tt> <a class="iref" href="#rfc.iref.g.93"><b>8.2</b></a></li> 3101 <li class="indline1"><tt>Content-Length-v</tt> <a class="iref" href="#rfc.iref.g.94"><b>8.2</b></a></li> 3079 3102 <li class="indline1">CR <a class="iref" href="#rfc.iref.g.2"><b>1.2</b></a></li> 3080 3103 <li class="indline1">CRLF <a class="iref" href="#rfc.iref.g.3"><b>1.2</b></a></li> 3081 <li class="indline1"><tt>ctext</tt> <a class="iref" href="#rfc.iref.g.7 6"><b>4.2</b></a></li>3104 <li class="indline1"><tt>ctext</tt> <a class="iref" href="#rfc.iref.g.77"><b>4.2</b></a></li> 3082 3105 <li class="indline1">CTL <a class="iref" href="#rfc.iref.g.4"><b>1.2</b></a></li> 3083 <li class="indline1"><tt>Date</tt> <a class="iref" href="#rfc.iref.g.9 4"><b>8.3</b></a></li>3084 <li class="indline1"><tt>Date-v</tt> <a class="iref" href="#rfc.iref.g.9 5"><b>8.3</b></a></li>3085 <li class="indline1"><tt>date1</tt> <a class="iref" href="#rfc.iref.g.3 5"><b>3.2</b></a></li>3086 <li class="indline1"><tt>date2</tt> <a class="iref" href="#rfc.iref.g.5 4"><b>3.3</b></a></li>3087 <li class="indline1"><tt>date3</tt> <a class="iref" href="#rfc.iref.g.5 5"><b>3.3</b></a></li>3088 <li class="indline1"><tt>day</tt> <a class="iref" href="#rfc.iref.g.4 2"><b>3.2</b></a></li>3089 <li class="indline1"><tt>day-name</tt> <a class="iref" href="#rfc.iref.g.4 0"><b>3.2</b></a></li>3090 <li class="indline1"><tt>day-name-l</tt> <a class="iref" href="#rfc.iref.g.4 1"><b>3.2</b></a></li>3106 <li class="indline1"><tt>Date</tt> <a class="iref" href="#rfc.iref.g.95"><b>8.3</b></a></li> 3107 <li class="indline1"><tt>Date-v</tt> <a class="iref" href="#rfc.iref.g.96"><b>8.3</b></a></li> 3108 <li class="indline1"><tt>date1</tt> <a class="iref" href="#rfc.iref.g.36"><b>3.2</b></a></li> 3109 <li class="indline1"><tt>date2</tt> <a class="iref" href="#rfc.iref.g.55"><b>3.3</b></a></li> 3110 <li class="indline1"><tt>date3</tt> <a class="iref" href="#rfc.iref.g.56"><b>3.3</b></a></li> 3111 <li class="indline1"><tt>day</tt> <a class="iref" href="#rfc.iref.g.43"><b>3.2</b></a></li> 3112 <li class="indline1"><tt>day-name</tt> <a class="iref" href="#rfc.iref.g.41"><b>3.2</b></a></li> 3113 <li class="indline1"><tt>day-name-l</tt> <a class="iref" href="#rfc.iref.g.42"><b>3.2</b></a></li> 3091 3114 <li class="indline1">DIGIT <a class="iref" href="#rfc.iref.g.5"><b>1.2</b></a></li> 3092 3115 <li class="indline1">DQUOTE <a class="iref" href="#rfc.iref.g.6"><b>1.2</b></a></li> 3093 <li class="indline1"><tt>extension-code</tt> <a class="iref" href="#rfc.iref.g.8 7"><b>6.1.1</b></a></li>3094 <li class="indline1"><tt>extension-method</tt> <a class="iref" href="#rfc.iref.g.8 2"><b>5.1.1</b></a></li>3095 <li class="indline1"><tt>field-content</tt> <a class="iref" href="#rfc.iref.g.7 4"><b>4.2</b></a></li>3096 <li class="indline1"><tt>field-name</tt> <a class="iref" href="#rfc.iref.g.7 2"><b>4.2</b></a></li>3097 <li class="indline1"><tt>field-value</tt> <a class="iref" href="#rfc.iref.g.7 3"><b>4.2</b></a></li>3098 <li class="indline1"><tt>general-header</tt> <a class="iref" href="#rfc.iref.g.7 8"><b>4.5</b></a></li>3099 <li class="indline1"><tt>generic-message</tt> <a class="iref" href="#rfc.iref.g. 69"><b>4.1</b></a></li>3100 <li class="indline1"><tt>GMT</tt> <a class="iref" href="#rfc.iref.g.4 5"><b>3.2</b></a></li>3116 <li class="indline1"><tt>extension-code</tt> <a class="iref" href="#rfc.iref.g.88"><b>6.1.1</b></a></li> 3117 <li class="indline1"><tt>extension-method</tt> <a class="iref" href="#rfc.iref.g.83"><b>5.1.1</b></a></li> 3118 <li class="indline1"><tt>field-content</tt> <a class="iref" href="#rfc.iref.g.75"><b>4.2</b></a></li> 3119 <li class="indline1"><tt>field-name</tt> <a class="iref" href="#rfc.iref.g.73"><b>4.2</b></a></li> 3120 <li class="indline1"><tt>field-value</tt> <a class="iref" href="#rfc.iref.g.74"><b>4.2</b></a></li> 3121 <li class="indline1"><tt>general-header</tt> <a class="iref" href="#rfc.iref.g.79"><b>4.5</b></a></li> 3122 <li class="indline1"><tt>generic-message</tt> <a class="iref" href="#rfc.iref.g.70"><b>4.1</b></a></li> 3123 <li class="indline1"><tt>GMT</tt> <a class="iref" href="#rfc.iref.g.46"><b>3.2</b></a></li> 3101 3124 <li class="indline1">HEXDIG <a class="iref" href="#rfc.iref.g.7"><b>1.2</b></a></li> 3102 <li class="indline1"><tt>Host</tt> <a class="iref" href="#rfc.iref.g.9 6"><b>8.4</b></a></li>3103 <li class="indline1"><tt>Host-v</tt> <a class="iref" href="#rfc.iref.g.9 7"><b>8.4</b></a></li>3104 <li class="indline1"><tt>hour</tt> <a class="iref" href="#rfc.iref.g.3 7"><b>3.2</b></a></li>3105 <li class="indline1"><tt>HTTP-date</tt> <a class="iref" href="#rfc.iref.g.3 3"><b>3.2</b></a></li>3106 <li class="indline1"><tt>HTTP-message</tt> <a class="iref" href="#rfc.iref.g.6 8"><b>4.1</b></a></li>3107 <li class="indline1"><tt>HTTP-Prot-Name</tt> <a class="iref" href="#rfc.iref.g.3 2"><b>3.1</b></a></li>3125 <li class="indline1"><tt>Host</tt> <a class="iref" href="#rfc.iref.g.97"><b>8.4</b></a></li> 3126 <li class="indline1"><tt>Host-v</tt> <a class="iref" href="#rfc.iref.g.98"><b>8.4</b></a></li> 3127 <li class="indline1"><tt>hour</tt> <a class="iref" href="#rfc.iref.g.38"><b>3.2</b></a></li> 3128 <li class="indline1"><tt>HTTP-date</tt> <a class="iref" href="#rfc.iref.g.34"><b>3.2</b></a></li> 3129 <li class="indline1"><tt>HTTP-message</tt> <a class="iref" href="#rfc.iref.g.69"><b>4.1</b></a></li> 3130 <li class="indline1"><tt>HTTP-Prot-Name</tt> <a class="iref" href="#rfc.iref.g.33"><b>3.1</b></a></li> 3108 3131 <li class="indline1"><tt>http-URI</tt> <a class="iref" href="#rfc.iref.g.30"><b>2.1.1</b></a></li> 3109 <li class="indline1"><tt>HTTP-Version</tt> <a class="iref" href="#rfc.iref.g.31"><b>3.1</b></a></li> 3110 <li class="indline1"><tt>last-chunk</tt> <a class="iref" href="#rfc.iref.g.59"><b>3.3.1</b></a></li> 3132 <li class="indline1"><tt>HTTP-Version</tt> <a class="iref" href="#rfc.iref.g.32"><b>3.1</b></a></li> 3133 <li class="indline1"><tt>https-URI</tt> <a class="iref" href="#rfc.iref.g.31"><b>2.1.2</b></a></li> 3134 <li class="indline1"><tt>last-chunk</tt> <a class="iref" href="#rfc.iref.g.60"><b>3.3.1</b></a></li> 3111 3135 <li class="indline1">LF <a class="iref" href="#rfc.iref.g.8"><b>1.2</b></a></li> 3112 <li class="indline1"><tt>message-body</tt> <a class="iref" href="#rfc.iref.g.7 7"><b>4.3</b></a></li>3113 <li class="indline1"><tt>message-header</tt> <a class="iref" href="#rfc.iref.g.7 1"><b>4.2</b></a></li>3114 <li class="indline1"><tt>Method</tt> <a class="iref" href="#rfc.iref.g.8 1"><b>5.1.1</b></a></li>3115 <li class="indline1"><tt>minute</tt> <a class="iref" href="#rfc.iref.g.3 8"><b>3.2</b></a></li>3116 <li class="indline1"><tt>month</tt> <a class="iref" href="#rfc.iref.g.4 3"><b>3.2</b></a></li>3117 <li class="indline1"><tt>obs-date</tt> <a class="iref" href="#rfc.iref.g.4 6"><b>3.2</b></a></li>3136 <li class="indline1"><tt>message-body</tt> <a class="iref" href="#rfc.iref.g.78"><b>4.3</b></a></li> 3137 <li class="indline1"><tt>message-header</tt> <a class="iref" href="#rfc.iref.g.72"><b>4.2</b></a></li> 3138 <li class="indline1"><tt>Method</tt> <a class="iref" href="#rfc.iref.g.82"><b>5.1.1</b></a></li> 3139 <li class="indline1"><tt>minute</tt> <a class="iref" href="#rfc.iref.g.39"><b>3.2</b></a></li> 3140 <li class="indline1"><tt>month</tt> <a class="iref" href="#rfc.iref.g.44"><b>3.2</b></a></li> 3141 <li class="indline1"><tt>obs-date</tt> <a class="iref" href="#rfc.iref.g.47"><b>3.2</b></a></li> 3118 3142 <li class="indline1"><tt>obs-text</tt> <a class="iref" href="#rfc.iref.g.20"><b>1.2.2</b></a></li> 3119 3143 <li class="indline1">OCTET <a class="iref" href="#rfc.iref.g.9"><b>1.2</b></a></li> … … 3121 3145 <li class="indline1"><tt>path-absolute</tt> <a class="iref" href="#rfc.iref.g.26"><b>2.1</b></a></li> 3122 3146 <li class="indline1"><tt>port</tt> <a class="iref" href="#rfc.iref.g.27"><b>2.1</b></a></li> 3123 <li class="indline1"><tt>product</tt> <a class="iref" href="#rfc.iref.g.6 5"><b>3.4</b></a></li>3124 <li class="indline1"><tt>product-version</tt> <a class="iref" href="#rfc.iref.g.6 6"><b>3.4</b></a></li>3125 <li class="indline1"><tt>protocol-name</tt> <a class="iref" href="#rfc.iref.g.11 2"><b>8.9</b></a></li>3126 <li class="indline1"><tt>protocol-version</tt> <a class="iref" href="#rfc.iref.g.11 3"><b>8.9</b></a></li>3127 <li class="indline1"><tt>pseudonym</tt> <a class="iref" href="#rfc.iref.g.11 5"><b>8.9</b></a></li>3147 <li class="indline1"><tt>product</tt> <a class="iref" href="#rfc.iref.g.66"><b>3.4</b></a></li> 3148 <li class="indline1"><tt>product-version</tt> <a class="iref" href="#rfc.iref.g.67"><b>3.4</b></a></li> 3149 <li class="indline1"><tt>protocol-name</tt> <a class="iref" href="#rfc.iref.g.113"><b>8.9</b></a></li> 3150 <li class="indline1"><tt>protocol-version</tt> <a class="iref" href="#rfc.iref.g.114"><b>8.9</b></a></li> 3151 <li class="indline1"><tt>pseudonym</tt> <a class="iref" href="#rfc.iref.g.116"><b>8.9</b></a></li> 3128 3152 <li class="indline1"><tt>qdtext</tt> <a class="iref" href="#rfc.iref.g.19"><b>1.2.2</b></a></li> 3129 3153 <li class="indline1"><tt>query</tt> <a class="iref" href="#rfc.iref.g.28"><b>2.1</b></a></li> … … 3131 3155 <li class="indline1"><tt>quoted-string</tt> <a class="iref" href="#rfc.iref.g.18"><b>1.2.2</b></a></li> 3132 3156 <li class="indline1"><tt>quoted-text</tt> <a class="iref" href="#rfc.iref.g.21"><b>1.2.2</b></a></li> 3133 <li class="indline1"><tt>qvalue</tt> <a class="iref" href="#rfc.iref.g.6 7"><b>3.5</b></a></li>3134 <li class="indline1"><tt>Reason-Phrase</tt> <a class="iref" href="#rfc.iref.g.8 8"><b>6.1.1</b></a></li>3135 <li class="indline1"><tt>received-by</tt> <a class="iref" href="#rfc.iref.g.11 4"><b>8.9</b></a></li>3136 <li class="indline1"><tt>received-protocol</tt> <a class="iref" href="#rfc.iref.g.11 1"><b>8.9</b></a></li>3137 <li class="indline1"><tt>Request</tt> <a class="iref" href="#rfc.iref.g. 79"><b>5</b></a></li>3138 <li class="indline1"><tt>Request-Line</tt> <a class="iref" href="#rfc.iref.g.8 0"><b>5.1</b></a></li>3139 <li class="indline1"><tt>request-target</tt> <a class="iref" href="#rfc.iref.g.8 3"><b>5.1.2</b></a></li>3140 <li class="indline1"><tt>Response</tt> <a class="iref" href="#rfc.iref.g.8 4"><b>6</b></a></li>3141 <li class="indline1"><tt>rfc1123-date</tt> <a class="iref" href="#rfc.iref.g.3 4"><b>3.2</b></a></li>3142 <li class="indline1"><tt>rfc850-date</tt> <a class="iref" href="#rfc.iref.g.4 7"><b>3.2</b></a></li>3157 <li class="indline1"><tt>qvalue</tt> <a class="iref" href="#rfc.iref.g.68"><b>3.5</b></a></li> 3158 <li class="indline1"><tt>Reason-Phrase</tt> <a class="iref" href="#rfc.iref.g.89"><b>6.1.1</b></a></li> 3159 <li class="indline1"><tt>received-by</tt> <a class="iref" href="#rfc.iref.g.115"><b>8.9</b></a></li> 3160 <li class="indline1"><tt>received-protocol</tt> <a class="iref" href="#rfc.iref.g.112"><b>8.9</b></a></li> 3161 <li class="indline1"><tt>Request</tt> <a class="iref" href="#rfc.iref.g.80"><b>5</b></a></li> 3162 <li class="indline1"><tt>Request-Line</tt> <a class="iref" href="#rfc.iref.g.81"><b>5.1</b></a></li> 3163 <li class="indline1"><tt>request-target</tt> <a class="iref" href="#rfc.iref.g.84"><b>5.1.2</b></a></li> 3164 <li class="indline1"><tt>Response</tt> <a class="iref" href="#rfc.iref.g.85"><b>6</b></a></li> 3165 <li class="indline1"><tt>rfc1123-date</tt> <a class="iref" href="#rfc.iref.g.35"><b>3.2</b></a></li> 3166 <li class="indline1"><tt>rfc850-date</tt> <a class="iref" href="#rfc.iref.g.48"><b>3.2</b></a></li> 3143 3167 <li class="indline1"><tt>RWS</tt> <a class="iref" href="#rfc.iref.g.14"><b>1.2.2</b></a></li> 3144 <li class="indline1"><tt>second</tt> <a class="iref" href="#rfc.iref.g. 39"><b>3.2</b></a></li>3168 <li class="indline1"><tt>second</tt> <a class="iref" href="#rfc.iref.g.40"><b>3.2</b></a></li> 3145 3169 <li class="indline1">SP <a class="iref" href="#rfc.iref.g.10"><b>1.2</b></a></li> 3146 <li class="indline1"><tt>start-line</tt> <a class="iref" href="#rfc.iref.g.7 0"><b>4.1</b></a></li>3147 <li class="indline1"><tt>Status-Code</tt> <a class="iref" href="#rfc.iref.g.8 6"><b>6.1.1</b></a></li>3148 <li class="indline1"><tt>Status-Line</tt> <a class="iref" href="#rfc.iref.g.8 5"><b>6.1</b></a></li>3149 <li class="indline1"><tt>t-codings</tt> <a class="iref" href="#rfc.iref.g.10 0"><b>8.5</b></a></li>3170 <li class="indline1"><tt>start-line</tt> <a class="iref" href="#rfc.iref.g.71"><b>4.1</b></a></li> 3171 <li class="indline1"><tt>Status-Code</tt> <a class="iref" href="#rfc.iref.g.87"><b>6.1.1</b></a></li> 3172 <li class="indline1"><tt>Status-Line</tt> <a class="iref" href="#rfc.iref.g.86"><b>6.1</b></a></li> 3173 <li class="indline1"><tt>t-codings</tt> <a class="iref" href="#rfc.iref.g.101"><b>8.5</b></a></li> 3150 3174 <li class="indline1"><tt>tchar</tt> <a class="iref" href="#rfc.iref.g.17"><b>1.2.2</b></a></li> 3151 <li class="indline1"><tt>TE</tt> <a class="iref" href="#rfc.iref.g.9 8"><b>8.5</b></a></li>3152 <li class="indline1"><tt>te-ext</tt> <a class="iref" href="#rfc.iref.g.10 2"><b>8.5</b></a></li>3153 <li class="indline1"><tt>te-params</tt> <a class="iref" href="#rfc.iref.g.10 1"><b>8.5</b></a></li>3154 <li class="indline1"><tt>TE-v</tt> <a class="iref" href="#rfc.iref.g. 99"><b>8.5</b></a></li>3155 <li class="indline1"><tt>time-of-day</tt> <a class="iref" href="#rfc.iref.g.3 6"><b>3.2</b></a></li>3175 <li class="indline1"><tt>TE</tt> <a class="iref" href="#rfc.iref.g.99"><b>8.5</b></a></li> 3176 <li class="indline1"><tt>te-ext</tt> <a class="iref" href="#rfc.iref.g.103"><b>8.5</b></a></li> 3177 <li class="indline1"><tt>te-params</tt> <a class="iref" href="#rfc.iref.g.102"><b>8.5</b></a></li> 3178 <li class="indline1"><tt>TE-v</tt> <a class="iref" href="#rfc.iref.g.100"><b>8.5</b></a></li> 3179 <li class="indline1"><tt>time-of-day</tt> <a class="iref" href="#rfc.iref.g.37"><b>3.2</b></a></li> 3156 3180 <li class="indline1"><tt>token</tt> <a class="iref" href="#rfc.iref.g.16"><b>1.2.2</b></a></li> 3157 <li class="indline1"><tt>Trailer</tt> <a class="iref" href="#rfc.iref.g.10 3"><b>8.6</b></a></li>3158 <li class="indline1"><tt>trailer-part</tt> <a class="iref" href="#rfc.iref.g.6 4"><b>3.3.1</b></a></li>3159 <li class="indline1"><tt>Trailer-v</tt> <a class="iref" href="#rfc.iref.g.10 4"><b>8.6</b></a></li>3160 <li class="indline1"><tt>transfer-coding</tt> <a class="iref" href="#rfc.iref.g. 49"><b>3.3</b></a></li>3161 <li class="indline1"><tt>Transfer-Encoding</tt> <a class="iref" href="#rfc.iref.g.10 5"><b>8.7</b></a></li>3162 <li class="indline1"><tt>Transfer-Encoding-v</tt> <a class="iref" href="#rfc.iref.g.10 6"><b>8.7</b></a></li>3163 <li class="indline1"><tt>transfer-extension</tt> <a class="iref" href="#rfc.iref.g.5 0"><b>3.3</b></a></li>3164 <li class="indline1"><tt>transfer-parameter</tt> <a class="iref" href="#rfc.iref.g.5 1"><b>3.3</b></a></li>3165 <li class="indline1"><tt>Upgrade</tt> <a class="iref" href="#rfc.iref.g.10 7"><b>8.8</b></a></li>3166 <li class="indline1"><tt>Upgrade-v</tt> <a class="iref" href="#rfc.iref.g.10 8"><b>8.8</b></a></li>3181 <li class="indline1"><tt>Trailer</tt> <a class="iref" href="#rfc.iref.g.104"><b>8.6</b></a></li> 3182 <li class="indline1"><tt>trailer-part</tt> <a class="iref" href="#rfc.iref.g.65"><b>3.3.1</b></a></li> 3183 <li class="indline1"><tt>Trailer-v</tt> <a class="iref" href="#rfc.iref.g.105"><b>8.6</b></a></li> 3184 <li class="indline1"><tt>transfer-coding</tt> <a class="iref" href="#rfc.iref.g.50"><b>3.3</b></a></li> 3185 <li class="indline1"><tt>Transfer-Encoding</tt> <a class="iref" href="#rfc.iref.g.106"><b>8.7</b></a></li> 3186 <li class="indline1"><tt>Transfer-Encoding-v</tt> <a class="iref" href="#rfc.iref.g.107"><b>8.7</b></a></li> 3187 <li class="indline1"><tt>transfer-extension</tt> <a class="iref" href="#rfc.iref.g.51"><b>3.3</b></a></li> 3188 <li class="indline1"><tt>transfer-parameter</tt> <a class="iref" href="#rfc.iref.g.52"><b>3.3</b></a></li> 3189 <li class="indline1"><tt>Upgrade</tt> <a class="iref" href="#rfc.iref.g.108"><b>8.8</b></a></li> 3190 <li class="indline1"><tt>Upgrade-v</tt> <a class="iref" href="#rfc.iref.g.109"><b>8.8</b></a></li> 3167 3191 <li class="indline1"><tt>uri-host</tt> <a class="iref" href="#rfc.iref.g.29"><b>2.1</b></a></li> 3168 3192 <li class="indline1"><tt>URI-reference</tt> <a class="iref" href="#rfc.iref.g.23"><b>2.1</b></a></li> 3169 <li class="indline1"><tt>value</tt> <a class="iref" href="#rfc.iref.g.5 3"><b>3.3</b></a></li>3193 <li class="indline1"><tt>value</tt> <a class="iref" href="#rfc.iref.g.54"><b>3.3</b></a></li> 3170 3194 <li class="indline1">VCHAR <a class="iref" href="#rfc.iref.g.11"><b>1.2</b></a></li> 3171 <li class="indline1"><tt>Via</tt> <a class="iref" href="#rfc.iref.g.1 09"><b>8.9</b></a></li>3172 <li class="indline1"><tt>Via-v</tt> <a class="iref" href="#rfc.iref.g.11 0"><b>8.9</b></a></li>3195 <li class="indline1"><tt>Via</tt> <a class="iref" href="#rfc.iref.g.110"><b>8.9</b></a></li> 3196 <li class="indline1"><tt>Via-v</tt> <a class="iref" href="#rfc.iref.g.111"><b>8.9</b></a></li> 3173 3197 <li class="indline1">WSP <a class="iref" href="#rfc.iref.g.12"><b>1.2</b></a></li> 3174 <li class="indline1"><tt>year</tt> <a class="iref" href="#rfc.iref.g.4 4"><b>3.2</b></a></li>3198 <li class="indline1"><tt>year</tt> <a class="iref" href="#rfc.iref.g.45"><b>3.2</b></a></li> 3175 3199 </ul> 3176 3200 </li> … … 3262 3286 <li class="indline0"><a id="rfc.index.R" href="#rfc.index.R"><b>R</b></a><ul class="ind"> 3263 3287 <li class="indline1">representation <a class="iref" href="#rfc.iref.r.4">C</a></li> 3264 <li class="indline1">request <a class="iref" href="#rfc.iref.r. 1">C</a></li>3265 <li class="indline1">resource <a class="iref" href="#rfc.iref.r. 2">C</a></li>3288 <li class="indline1">request <a class="iref" href="#rfc.iref.r.2">C</a></li> 3289 <li class="indline1">resource <a class="iref" href="#rfc.iref.r.1"><b>2.1</b></a></li> 3266 3290 <li class="indline1">response <a class="iref" href="#rfc.iref.r.3">C</a></li> 3267 3291 <li class="indline1"><em>RFC1123</em> <a class="iref" href="#rfc.xref.RFC1123.1">3.2</a>, <a class="iref" href="#RFC1123"><b>12.2</b></a></li> 3268 3292 <li class="indline1"><em>RFC1305</em> <a class="iref" href="#rfc.xref.RFC1305.1">8.3</a>, <a class="iref" href="#RFC1305"><b>12.2</b></a></li> 3269 <li class="indline1"><em>RFC1900</em> <a class="iref" href="#rfc.xref.RFC1900.1"> 2.1.1</a>, <a class="iref" href="#rfc.xref.RFC1900.2">10.4</a>, <a class="iref" href="#RFC1900"><b>12.2</b></a></li>3293 <li class="indline1"><em>RFC1900</em> <a class="iref" href="#rfc.xref.RFC1900.1">10.4</a>, <a class="iref" href="#RFC1900"><b>12.2</b></a></li> 3270 3294 <li class="indline1"><em>RFC1945</em> <a class="iref" href="#RFC1945"><b>12.2</b></a>, <a class="iref" href="#rfc.xref.RFC1945.1">B</a></li> 3271 3295 <li class="indline1"><em>RFC2045</em> <a class="iref" href="#rfc.xref.RFC2045.1">1</a>, <a class="iref" href="#rfc.xref.RFC2045.2">3.3</a>, <a class="iref" href="#rfc.xref.RFC2045.3">11</a>, <a class="iref" href="#RFC2045"><b>12.2</b></a></li> … … 3282 3306 <li class="indline1"><em>RFC2965</em> <a class="iref" href="#rfc.xref.RFC2965.1">4.2</a>, <a class="iref" href="#RFC2965"><b>12.2</b></a></li> 3283 3307 <li class="indline1"><em>RFC3864</em> <a class="iref" href="#rfc.xref.RFC3864.1">9.1</a>, <a class="iref" href="#RFC3864"><b>12.2</b></a></li> 3284 <li class="indline1"><em>RFC3986</em> <a class="iref" href="#rfc.xref.RFC3986.1">1</a>, <a class="iref" href="#rfc.xref.RFC3986.2">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.3">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.4">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.5">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.6">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.7">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.8">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.9">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.10">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.11">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.12">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.13">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.14">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.15">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.16">2.1. 3</a>, <a class="iref" href="#rfc.xref.RFC3986.17">5.1.2</a>, <a class="iref" href="#RFC3986"><b>12.1</b></a><ul class="ind">3285 <li class="indline1"><em>Section 2.1</em> <a class="iref" href="#rfc.xref.RFC3986.1 6">2.1.3</a>, <a class="iref" href="#rfc.xref.RFC3986.17">5.1.2</a></li>3308 <li class="indline1"><em>RFC3986</em> <a class="iref" href="#rfc.xref.RFC3986.1">1</a>, <a class="iref" href="#rfc.xref.RFC3986.2">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.3">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.4">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.5">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.6">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.7">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.8">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.9">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.10">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.11">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.12">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.13">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.14">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.15">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.16">2.1.1</a>, <a class="iref" href="#rfc.xref.RFC3986.17">2.1.3</a>, <a class="iref" href="#rfc.xref.RFC3986.18">2.1.3</a>, <a class="iref" href="#rfc.xref.RFC3986.19">5.1.2</a>, <a class="iref" href="#RFC3986"><b>12.1</b></a><ul class="ind"> 3309 <li class="indline1"><em>Section 2.1</em> <a class="iref" href="#rfc.xref.RFC3986.18">2.1.3</a>, <a class="iref" href="#rfc.xref.RFC3986.19">5.1.2</a></li> 3286 3310 <li class="indline1"><em>Section 3</em> <a class="iref" href="#rfc.xref.RFC3986.5">2.1</a></li> 3287 3311 <li class="indline1"><em>Section 3.2</em> <a class="iref" href="#rfc.xref.RFC3986.9">2.1</a></li> 3288 <li class="indline1"><em>Section 3.2.2</em> <a class="iref" href="#rfc.xref.RFC3986.15">2.1</a> </li>3312 <li class="indline1"><em>Section 3.2.2</em> <a class="iref" href="#rfc.xref.RFC3986.15">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.16">2.1.1</a></li> 3289 3313 <li class="indline1"><em>Section 3.2.3</em> <a class="iref" href="#rfc.xref.RFC3986.13">2.1</a></li> 3290 3314 <li class="indline1"><em>Section 3.3</em> <a class="iref" href="#rfc.xref.RFC3986.11">2.1</a>, <a class="iref" href="#rfc.xref.RFC3986.12">2.1</a></li> … … 3294 3318 <li class="indline1"><em>Section 4.2</em> <a class="iref" href="#rfc.xref.RFC3986.8">2.1</a></li> 3295 3319 <li class="indline1"><em>Section 4.3</em> <a class="iref" href="#rfc.xref.RFC3986.7">2.1</a></li> 3320 <li class="indline1"><em>Section 6</em> <a class="iref" href="#rfc.xref.RFC3986.17">2.1.3</a></li> 3296 3321 </ul> 3297 3322 </li> -
draft-ietf-httpbis/latest/p1-messaging.xml
r621 r622 627 627 628 628 <section title="https URI scheme" anchor="https.uri"> 629 <x:anchor-alias value="https-URI"/> 629 630 <iref item="https URI scheme"/> 630 631 <iref item="URI scheme" subitem="https"/> … … 4547 4548 <x:ref>hour</x:ref> = 2DIGIT 4548 4549 <x:ref>http-URI</x:ref> = "http://" authority path-abempty [ "?" query ] 4550 <x:ref>https-URI</x:ref> = "https://" authority path-abempty [ "?" query ] 4549 4551 4550 4552 <x:ref>last-chunk</x:ref> = 1*"0" *WSP [ chunk-ext ] CRLF
Note: See TracChangeset
for help on using the changeset viewer.