Ignore:
Timestamp:
Aug 8, 2011, 5:46:19 PM (8 years ago)
Author:
fielding@…
Message:

Reorganize and clarify the sections on message header parsing.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • draft-ietf-httpbis/latest/p1-messaging.html

    r1392 r1393  
    570570         </li>
    571571         <li>3.&nbsp;&nbsp;&nbsp;<a href="#http.message">Message Format</a><ul>
    572                <li>3.1&nbsp;&nbsp;&nbsp;<a href="#message.robustness">Message Parsing Robustness</a></li>
    573                <li>3.2&nbsp;&nbsp;&nbsp;<a href="#header.fields">Header Fields</a></li>
     572               <li>3.1&nbsp;&nbsp;&nbsp;<a href="#message.robustness">Message Parsing and Robustness</a></li>
     573               <li>3.2&nbsp;&nbsp;&nbsp;<a href="#header.fields">Header Fields</a><ul>
     574                     <li>3.2.1&nbsp;&nbsp;&nbsp;<a href="#field.parsing">Field Parsing</a></li>
     575                     <li>3.2.2&nbsp;&nbsp;&nbsp;<a href="#field.length">Field Length</a></li>
     576                     <li>3.2.3&nbsp;&nbsp;&nbsp;<a href="#field.rules">Common Field ABNF Rules</a></li>
     577                  </ul>
     578               </li>
    574579               <li>3.3&nbsp;&nbsp;&nbsp;<a href="#message.body">Message Body</a></li>
    575580               <li>3.4&nbsp;&nbsp;&nbsp;<a href="#incomplete.messages">Incomplete Messages</a></li>
     
    845850  <a href="#rule.whitespace" class="smpl">obs-fold</a>       = <a href="#core.rules" class="smpl">CRLF</a>
    846851                 ; see <a href="#header.fields" title="Header Fields">Section&nbsp;3.2</a>
    847 </pre><div id="rule.token.separators">
    848          <p id="rfc.section.1.2.2.p.7">        Many HTTP/1.1 header field values consist of words (token or quoted-string) separated by whitespace or special characters.
    849             These special characters <em class="bcp14">MUST</em> be in a quoted string to be used within a parameter value (as defined in <a href="#transfer.codings" title="Transfer Codings">Section&nbsp;6.2</a>).
    850          </p>
    851       </div>
    852       <div id="rfc.figure.u.9"></div><pre class="inline"><span id="rfc.iref.g.16"></span><span id="rfc.iref.g.17"></span><span id="rfc.iref.g.18"></span><span id="rfc.iref.g.19"></span>  <a href="#rule.token.separators" class="smpl">word</a>           = <a href="#rule.token.separators" class="smpl">token</a> / <a href="#rule.quoted-string" class="smpl">quoted-string</a>
    853 
    854   <a href="#rule.token.separators" class="smpl">token</a>          = 1*<a href="#rule.token.separators" class="smpl">tchar</a>
    855 
    856   <a href="#rule.token.separators" class="smpl">tchar</a>          = "!" / "#" / "$" / "%" / "&amp;" / "'" / "*"
    857                  / "+" / "-" / "." / "^" / "_" / "`" / "|" / "~"
    858                  / <a href="#core.rules" class="smpl">DIGIT</a> / <a href="#core.rules" class="smpl">ALPHA</a>
    859                  ; any <a href="#core.rules" class="smpl">VCHAR</a>, except <a href="#rule.token.separators" class="smpl">special</a>
    860 
    861   <a href="#rule.token.separators" class="smpl">special</a>        = "(" / ")" / "&lt;" / "&gt;" / "@" / ","
    862                  / ";" / ":" / "\" / DQUOTE / "/" / "["
    863                  / "]" / "?" / "=" / "{" / "}"
    864 </pre><div id="rule.quoted-string">
    865          <p id="rfc.section.1.2.2.p.9">      A string of text is parsed as a single word if it is quoted using double-quote marks.</p>
    866       </div>
    867       <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g.20"></span><span id="rfc.iref.g.21"></span><span id="rfc.iref.g.22"></span>  <a href="#rule.quoted-string" class="smpl">quoted-string</a>  = <a href="#core.rules" class="smpl">DQUOTE</a> *( <a href="#rule.quoted-string" class="smpl">qdtext</a> / <a href="#rule.quoted-pair" class="smpl">quoted-pair</a> ) <a href="#core.rules" class="smpl">DQUOTE</a>
    868   <a href="#rule.quoted-string" class="smpl">qdtext</a>         = <a href="#rule.whitespace" class="smpl">OWS</a> / %x21 / %x23-5B / %x5D-7E / <a href="#rule.quoted-string" class="smpl">obs-text</a>
    869                  ; <a href="#rule.whitespace" class="smpl">OWS</a> / &lt;<a href="#core.rules" class="smpl">VCHAR</a> except <a href="#core.rules" class="smpl">DQUOTE</a> and "\"&gt; / <a href="#rule.quoted-string" class="smpl">obs-text</a>
    870   <a href="#rule.quoted-string" class="smpl">obs-text</a>       = %x80-FF
    871 </pre><div id="rule.quoted-pair">
    872          <p id="rfc.section.1.2.2.p.11">  The backslash octet ("\") can be used as a single-octet quoting mechanism within quoted-string constructs:</p>
    873       </div>
    874       <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.23"></span>  <a href="#rule.quoted-pair" class="smpl">quoted-pair</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> )
    875 </pre><p id="rfc.section.1.2.2.p.13">Recipients that process the value of the quoted-string <em class="bcp14">MUST</em> handle a quoted-pair as if it were replaced by the octet following the backslash.
    876       </p>
    877       <p id="rfc.section.1.2.2.p.14">Senders <em class="bcp14">SHOULD NOT</em> escape octets that do not require escaping (i.e., other than DQUOTE and the backslash octet).
    878       </p>
    879       <h1 id="rfc.section.2"><a href="#rfc.section.2">2.</a>&nbsp;<a id="architecture" href="#architecture">HTTP-related architecture</a></h1>
     852</pre><h1 id="rfc.section.2"><a href="#rfc.section.2">2.</a>&nbsp;<a id="architecture" href="#architecture">HTTP-related architecture</a></h1>
    880853      <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
    881854         hypertext system. Much of that architecture is reflected in the terminology and syntax productions used to define HTTP.
     
    903876         the origin server (O).
    904877      </p>
    905       <div id="rfc.figure.u.12"></div><pre class="drawing">         request   &gt;
     878      <div id="rfc.figure.u.9"></div><pre class="drawing">         request   &gt;
    906879    UA ======================================= O
    907880                                &lt;   response
     
    918891      </p>
    919892      <p id="rfc.section.2.1.p.7">The following example illustrates a typical message exchange for a GET request on the URI "http://www.example.com/hello.txt":</p>
    920       <div id="rfc.figure.u.13"></div>
     893      <div id="rfc.figure.u.10"></div>
    921894      <p>client request:</p><pre class="text2">GET /hello.txt HTTP/1.1
    922895User-Agent: curl/7.16.3 libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3
     
    924897Accept: */*
    925898
    926 </pre><div id="rfc.figure.u.14"></div>
     899</pre><div id="rfc.figure.u.11"></div>
    927900      <p>server response:</p><pre class="text">HTTP/1.1 200 OK
    928901Date: Mon, 27 Jul 2009 12:28:53 GMT
     
    967940         switching behavior based on the nature of each request.
    968941      </p>
    969       <div id="rfc.figure.u.15"></div><pre class="drawing">         &gt;             &gt;             &gt;             &gt;
     942      <div id="rfc.figure.u.12"></div><pre class="drawing">         &gt;             &gt;             &gt;             &gt;
    970943    <b>UA</b> =========== <b>A</b> =========== <b>B</b> =========== <b>C</b> =========== <b>O</b>
    971944               &lt;             &lt;             &lt;             &lt;
     
    994967         a given message, we use the term "<dfn>non-transforming proxy</dfn>" to target requirements that preserve HTTP message semantics. See <a href="p2-semantics.html#status.203" title="203 Non-Authoritative Information">Section 8.2.4</a> of <a href="#Part2" id="rfc.xref.Part2.1"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a> and <a href="p6-cache.html#header.warning" title="Warning">Section 3.6</a> of <a href="#Part6" id="rfc.xref.Part6.1"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a> for status and warning codes related to transformations.
    995968      </p>
    996       <p id="rfc.section.2.4.p.7"><span id="rfc.iref.g.24"></span><span id="rfc.iref.r.4"></span>  <span id="rfc.iref.a.1"></span> A "<dfn>gateway</dfn>" (a.k.a., "<dfn>reverse proxy</dfn>") is a receiving agent that acts as a layer above some other server(s) and translates the received requests to the underlying
     969      <p id="rfc.section.2.4.p.7"><span id="rfc.iref.g.16"></span><span id="rfc.iref.r.4"></span>  <span id="rfc.iref.a.1"></span> A "<dfn>gateway</dfn>" (a.k.a., "<dfn>reverse proxy</dfn>") is a receiving agent that acts as a layer above some other server(s) and translates the received requests to the underlying
    997970         server's protocol. Gateways are often used to encapsulate legacy or untrusted information services, to improve server performance
    998971         through "<dfn>accelerator</dfn>" caching, and to enable partitioning or load-balancing of HTTP services across multiple machines.
     
    1026999         from O (via C) for a request which has not been cached by UA or A.
    10271000      </p>
    1028       <div id="rfc.figure.u.16"></div><pre class="drawing">            &gt;             &gt;
     1001      <div id="rfc.figure.u.13"></div><pre class="drawing">            &gt;             &gt;
    10291002       UA =========== A =========== B - - - - - - C - - - - - - O
    10301003                  &lt;             &lt;
     
    10441017      </p>
    10451018      <p id="rfc.section.2.6.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>
    1046       <div id="rfc.figure.u.17"></div><pre class="inline"><span id="rfc.iref.g.25"></span><span id="rfc.iref.g.26"></span>  <a href="#http.version" class="smpl">HTTP-Version</a>   = <a href="#http.version" class="smpl">HTTP-Prot-Name</a> "/" <a href="#core.rules" class="smpl">DIGIT</a> "." <a href="#core.rules" class="smpl">DIGIT</a>
     1019      <div id="rfc.figure.u.14"></div><pre class="inline"><span id="rfc.iref.g.17"></span><span id="rfc.iref.g.18"></span>  <a href="#http.version" class="smpl">HTTP-Version</a>   = <a href="#http.version" class="smpl">HTTP-Prot-Name</a> "/" <a href="#core.rules" class="smpl">DIGIT</a> "." <a href="#core.rules" class="smpl">DIGIT</a>
    10471020  <a href="#http.version" class="smpl">HTTP-Prot-Name</a> = %x48.54.54.50 ; "HTTP", case-sensitive
    10481021</pre><p id="rfc.section.2.6.p.4">The HTTP version number consists of two decimal digits separated by a "." (period or decimal point). The first digit ("major
     
    11031076         "path-absolute", "query", and "authority" from the URI generic syntax <a href="#RFC3986" id="rfc.xref.RFC3986.4"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>. In addition, we define a partial-URI rule for protocol elements that allow a relative URI but not a fragment.
    11041077      </p>
    1105       <div id="rfc.figure.u.18"></div><pre class="inline"><span id="rfc.iref.g.27"></span><span id="rfc.iref.g.28"></span><span id="rfc.iref.g.29"></span><span id="rfc.iref.g.30"></span><span id="rfc.iref.g.31"></span><span id="rfc.iref.g.32"></span><span id="rfc.iref.g.33"></span>  <a href="#uri" class="smpl">URI-reference</a> = &lt;URI-reference, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.5"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-4.1">Section 4.1</a>&gt;
     1078      <div id="rfc.figure.u.15"></div><pre class="inline"><span id="rfc.iref.g.19"></span><span id="rfc.iref.g.20"></span><span id="rfc.iref.g.21"></span><span id="rfc.iref.g.22"></span><span id="rfc.iref.g.23"></span><span id="rfc.iref.g.24"></span><span id="rfc.iref.g.25"></span>  <a href="#uri" class="smpl">URI-reference</a> = &lt;URI-reference, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.5"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-4.1">Section 4.1</a>&gt;
    11061079  <a href="#uri" class="smpl">absolute-URI</a>  = &lt;absolute-URI, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.6"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-4.3">Section 4.3</a>&gt;
    11071080  <a href="#uri" class="smpl">relative-part</a> = &lt;relative-part, defined in <a href="#RFC3986" id="rfc.xref.RFC3986.7"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-4.2">Section 4.2</a>&gt;
     
    11251098         namespace governed by a potential HTTP origin server listening for TCP connections on a given port.
    11261099      </p>
    1127       <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g.34"></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> ]
     1100      <div id="rfc.figure.u.16"></div><pre class="inline"><span id="rfc.iref.g.26"></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> ]
    11281101</pre><p id="rfc.section.2.7.1.p.3">The HTTP origin server is identified by the generic syntax's <a href="#uri" class="smpl">authority</a> component, which includes a host identifier and optional TCP port (<a href="#RFC3986" id="rfc.xref.RFC3986.14"><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>). The remainder of the URI, consisting of both the hierarchical path component and optional query component, serves as an
    11291102         identifier for a potential resource within that origin server's name space.
     
    11641137         TCP port of 443 is assumed if the port subcomponent is empty or not given, and the TCP connection <em class="bcp14">MUST</em> be secured for privacy through the use of strong encryption prior to sending the first HTTP request.
    11651138      </p>
    1166       <div id="rfc.figure.u.20"></div><pre class="inline"><span id="rfc.iref.g.35"></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> ]
     1139      <div id="rfc.figure.u.17"></div><pre class="inline"><span id="rfc.iref.g.27"></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> ]
    11671140</pre><p id="rfc.section.2.7.2.p.4">Unlike the "http" scheme, responses to "https" identified requests are never "public" and thus <em class="bcp14">MUST NOT</em> be reused for shared caching. They can, however, be reused in a private cache if the message is cacheable by default in HTTP
    11681141         or specifically indicated as such by the Cache-Control header field (<a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 3.2</a> of <a href="#Part6" id="rfc.xref.Part6.3"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>).
     
    11851158      </p>
    11861159      <p id="rfc.section.2.7.3.p.3">For example, the following three URIs are equivalent:</p>
    1187       <div id="rfc.figure.u.21"></div><pre class="text">   http://example.com:80/~smith/home.html
     1160      <div id="rfc.figure.u.18"></div><pre class="text">   http://example.com:80/~smith/home.html
    11881161   http://EXAMPLE.com/%7Esmith/home.html
    11891162   http://EXAMPLE.com:/%7esmith/home.html
     
    12021175         or invalid request method) and clients are implemented to only expect a response.
    12031176      </p>
    1204       <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.36"></span>  <a href="#http.message" class="smpl">HTTP-message</a>    = <a href="#http.message" class="smpl">start-line</a>
     1177      <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g.28"></span>  <a href="#http.message" class="smpl">HTTP-message</a>    = <a href="#http.message" class="smpl">start-line</a>
    12051178                    *( <a href="#header.fields" class="smpl">header-field</a> <a href="#core.rules" class="smpl">CRLF</a> )
    12061179                    <a href="#core.rules" class="smpl">CRLF</a>
     
    12121185         Likewise, the presence of such whitespace in a response might be ignored by some clients or cause others to cease parsing.
    12131186      </p>
    1214       <h2 id="rfc.section.3.1"><a href="#rfc.section.3.1">3.1</a>&nbsp;<a id="message.robustness" href="#message.robustness">Message Parsing Robustness</a></h2>
    1215       <p id="rfc.section.3.1.p.1">In the interest of robustness, servers <em class="bcp14">SHOULD</em> ignore at least one empty line received where a Request-Line is expected. In other words, if the server is reading the protocol
     1187      <h2 id="rfc.section.3.1"><a href="#rfc.section.3.1">3.1</a>&nbsp;<a id="message.robustness" href="#message.robustness">Message Parsing and Robustness</a></h2>
     1188      <p id="rfc.section.3.1.p.1">The normal procedure for parsing an HTTP message is to read the start-line into a structure, read each header field into a
     1189         hash table by field name until the empty line, and then use the parsed data to determine if a message-body is expected. If
     1190         a message-body has been indicated, then it is read as a stream until an amount of octets equal to the message-body length
     1191         is read or the connection is closed.
     1192      </p>
     1193      <p id="rfc.section.3.1.p.2">Care must be taken to parse an HTTP message as a sequence of octets in an encoding that is a superset of US-ASCII. Attempting
     1194         to parse HTTP as a stream of Unicode characters in a character encoding like UTF-16 might introduce security flaws due to
     1195         the differing ways that such parsers interpret invalid characters.
     1196      </p>
     1197      <p id="rfc.section.3.1.p.3">Older HTTP/1.0 client implementations might send an extra CRLF after a POST request as a lame workaround for some early server
     1198         applications that failed to read message-body content that was not terminated by a line-ending. An HTTP/1.1 client <em class="bcp14">MUST NOT</em> preface or follow a request with an extra CRLF. If terminating the request message-body with a line-ending is desired, then
     1199         the client <em class="bcp14">MUST</em> include the terminating CRLF octets as part of the message-body length.
     1200      </p>
     1201      <p id="rfc.section.3.1.p.4">In the interest of robustness, servers <em class="bcp14">SHOULD</em> ignore at least one empty line received where a Request-Line is expected. In other words, if the server is reading the protocol
    12161202         stream at the beginning of a message and receives a CRLF first, it <em class="bcp14">SHOULD</em> ignore the CRLF. Likewise, although the line terminator for the start-line and header fields is the sequence CRLF, we recommend
    12171203         that recipients recognize a single LF as a line terminator and ignore any CR.
    12181204      </p>
    1219       <p id="rfc.section.3.1.p.2">Some old HTTP/1.0 client implementations send an extra CRLF after a POST request as a lame workaround for some early server
    1220          applications that failed to read message-body content that was not terminated by a line-ending. An HTTP/1.1 client <em class="bcp14">MUST NOT</em> preface or follow a request with an extra CRLF. If terminating the request message-body with a line-ending is desired, then
    1221          the client <em class="bcp14">MUST</em> include the terminating CRLF octets as part of the message-body length.
    1222       </p>
    1223       <p id="rfc.section.3.1.p.3">When a server listening only for HTTP request messages, or processing what appears from the start-line to be an HTTP request
     1205      <p id="rfc.section.3.1.p.5">When a server listening only for HTTP request messages, or processing what appears from the start-line to be an HTTP request
    12241206         message, receives a sequence of octets that does not match the HTTP-message grammar aside from the robustness exceptions listed
    12251207         above, the server <em class="bcp14">MUST</em> respond with an HTTP/1.1 400 (Bad Request) response.
    1226       </p>
    1227       <p id="rfc.section.3.1.p.4">The normal procedure for parsing an HTTP message is to read the start-line into a structure, read each header field into a
    1228          hash table by field name until the empty line, and then use the parsed data to determine if a message-body is expected. If
    1229          a message-body has been indicated, then it is read as a stream until an amount of octets equal to the message-body length
    1230          is read or the connection is closed. Care must be taken to parse an HTTP message as a sequence of octets in an encoding that
    1231          is a superset of US-ASCII. Attempting to parse HTTP as a stream of Unicode characters in a character encoding like UTF-16
    1232          might introduce security flaws due to the differing ways that such parsers interpret invalid characters.
    1233       </p>
    1234       <p id="rfc.section.3.1.p.5">HTTP allows the set of defined header fields to be extended without changing the protocol version (see <a href="#header.field.registration" title="Header Field Registration">Section&nbsp;10.1</a>). Unrecognized header fields <em class="bcp14">MUST</em> be forwarded by a proxy unless the proxy is specifically configured to block or otherwise transform such fields. Unrecognized
    1235          header fields <em class="bcp14">SHOULD</em> be ignored by other recipients.
    12361208      </p>
    12371209      <h2 id="rfc.section.3.2"><a href="#rfc.section.3.2">3.2</a>&nbsp;<a id="header.fields" href="#header.fields">Header Fields</a></h2>
     
    12391211         value.
    12401212      </p>
    1241       <div id="rfc.figure.u.23"></div><pre class="inline"><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>  <a href="#header.fields" class="smpl">header-field</a>   = <a href="#header.fields" class="smpl">field-name</a> ":" <a href="#rule.whitespace" class="smpl">OWS</a> [ <a href="#header.fields" class="smpl">field-value</a> ] <a href="#rule.whitespace" class="smpl">OWS</a>
     1213      <div id="rfc.figure.u.20"></div><pre class="inline"><span id="rfc.iref.g.29"></span><span id="rfc.iref.g.30"></span><span id="rfc.iref.g.31"></span><span id="rfc.iref.g.32"></span>  <a href="#header.fields" class="smpl">header-field</a>   = <a href="#header.fields" class="smpl">field-name</a> ":" <a href="#rule.whitespace" class="smpl">OWS</a> [ <a href="#header.fields" class="smpl">field-value</a> ] <a href="#rule.whitespace" class="smpl">OWS</a>
    12421214  <a href="#header.fields" class="smpl">field-name</a>     = <a href="#rule.token.separators" class="smpl">token</a>
    12431215  <a href="#header.fields" class="smpl">field-value</a>    = *( <a href="#header.fields" class="smpl">field-content</a> / <a href="#rule.whitespace" class="smpl">OWS</a> )
    12441216  <a href="#header.fields" class="smpl">field-content</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> )
    1245 </pre><p id="rfc.section.3.2.p.3">No whitespace is allowed between the header field name and colon. For security reasons, any request message received containing
    1246          such whitespace <em class="bcp14">MUST</em> be rejected with a response code of 400 (Bad Request). A proxy <em class="bcp14">MUST</em> remove any such whitespace from a response message before forwarding the message downstream.
    1247       </p>
    1248       <p id="rfc.section.3.2.p.4">A field value <em class="bcp14">MAY</em> be preceded by optional whitespace (OWS); a single SP is preferred. The field value does not include any leading or trailing
    1249          white space: OWS occurring before the first non-whitespace octet of the field value or after the last non-whitespace octet
    1250          of the field value is ignored and <em class="bcp14">SHOULD</em> be removed before further processing (as this does not change the meaning of the header field).
    1251       </p>
    1252       <p id="rfc.section.3.2.p.5">The order in which header fields with differing field names are received is not significant. However, it is "good practice"
     1217</pre><p id="rfc.section.3.2.p.3">The field-name token labels the corresponding field-value as having the semantics defined by that header field. For example,
     1218         the Date header field is defined in <a href="#header.date" id="rfc.xref.header.date.1" title="Date">Section&nbsp;9.3</a> as containing the origination timestamp for the message in which it appears.
     1219      </p>
     1220      <p id="rfc.section.3.2.p.4">HTTP header fields are fully extensible: there is no limit on the introduction of new field names, each presumably defining
     1221         new semantics, or on the number of header fields used in a given message. Existing fields are defined in each part of this
     1222         specification and in many other specifications outside the standards process. New header fields can be introduced without
     1223         changing the protocol version if their defined semantics allow them to be safely ignored by recipients that do not recognize
     1224         them.
     1225      </p>
     1226      <p id="rfc.section.3.2.p.5">New HTTP header fields <em class="bcp14">SHOULD</em> be registered with IANA according to the procedures in <a href="#header.field.registration" title="Header Field Registration">Section&nbsp;10.1</a>. Unrecognized header fields <em class="bcp14">MUST</em> be forwarded by a proxy unless the field-name is listed in the Connection header field (<a href="#header.connection" id="rfc.xref.header.connection.3" title="Connection">Section&nbsp;9.1</a>) or the proxy is specifically configured to block or otherwise transform such fields. Unrecognized header fields <em class="bcp14">SHOULD</em> be ignored by other recipients.
     1227      </p>
     1228      <p id="rfc.section.3.2.p.6">The order in which header fields with differing field names are received is not significant. However, it is "good practice"
    12531229         to send header fields that contain control data first, such as Host on requests and Date on responses, so that implementations
    12541230         can decide when not to handle a message as early as possible. A server <em class="bcp14">MUST</em> wait until the entire header section is received before interpreting a request message, since later header fields might include
    12551231         conditionals, authentication credentials, or deliberately misleading duplicate header fields that would impact request processing.
    12561232      </p>
    1257       <p id="rfc.section.3.2.p.6">Multiple header fields with the same field name <em class="bcp14">MUST NOT</em> be sent in a message unless the entire field value for that header field is defined as a comma-separated list [i.e., #(values)].
     1233      <p id="rfc.section.3.2.p.7">Multiple header fields with the same field name <em class="bcp14">MUST NOT</em> be sent in a message unless the entire field value for that header field is defined as a comma-separated list [i.e., #(values)].
    12581234         Multiple header fields with the same field name can be combined into one "field-name: field-value" pair, without changing
    12591235         the semantics of the message, by appending each subsequent field value to the combined field value in order, separated by
     
    12611237         of the combined field value; a proxy <em class="bcp14">MUST NOT</em> change the order of these field values when forwarding a message.
    12621238      </p>
    1263       <div class="note" id="rfc.section.3.2.p.7">
     1239      <div class="note" id="rfc.section.3.2.p.8">
    12641240         <p> <b>Note:</b> The "Set-Cookie" header field as implemented in practice can occur multiple times, but does not use the list syntax, and thus
    12651241            cannot be combined into a single line (<a href="#RFC6265" id="rfc.xref.RFC6265.2"><cite title="HTTP State Management Mechanism">[RFC6265]</cite></a>). (See Appendix A.2.3 of <a href="#Kri2001" id="rfc.xref.Kri2001.1"><cite title="HTTP Cookies: Standards, Privacy, and Politics">[Kri2001]</cite></a> for details.) Also note that the Set-Cookie2 header field specified in <a href="#RFC2965" id="rfc.xref.RFC2965.1"><cite title="HTTP State Management Mechanism">[RFC2965]</cite></a> does not share this problem.
    12661242         </p>
    12671243      </div>
    1268       <p id="rfc.section.3.2.p.8">Historically, HTTP header field values could be extended over multiple lines by preceding each extra line with at least one
     1244      <h3 id="rfc.section.3.2.1"><a href="#rfc.section.3.2.1">3.2.1</a>&nbsp;<a id="field.parsing" href="#field.parsing">Field Parsing</a></h3>
     1245      <p id="rfc.section.3.2.1.p.1">No whitespace is allowed between the header field-name and colon. In the past, differences in the handling of such whitespace
     1246         have led to security vulnerabilities in request routing and response handling. Any received request message that contains
     1247         whitespace between a header field-name and colon <em class="bcp14">MUST</em> be rejected with a response code of 400 (Bad Request). A proxy <em class="bcp14">MUST</em> remove any such whitespace from a response message before forwarding the message downstream.
     1248      </p>
     1249      <p id="rfc.section.3.2.1.p.2">A field value <em class="bcp14">MAY</em> be preceded by optional whitespace (OWS); a single SP is preferred. The field value does not include any leading or trailing
     1250         white space: OWS occurring before the first non-whitespace octet of the field value or after the last non-whitespace octet
     1251         of the field value is ignored and <em class="bcp14">SHOULD</em> be removed before further processing (as this does not change the meaning of the header field).
     1252      </p>
     1253      <p id="rfc.section.3.2.1.p.3">Historically, HTTP header field values could be extended over multiple lines by preceding each extra line with at least one
    12691254         space or horizontal tab octet (line folding). This specification deprecates such line folding except within the message/http
    1270          media type (<a href="#internet.media.type.message.http" title="Internet Media Type message/http">Section&nbsp;10.3.1</a>). HTTP/1.1 senders <em class="bcp14">MUST NOT</em> produce messages that include line folding (i.e., that contain any field-content that matches the obs-fold rule) unless the
    1271          message is intended for packaging within the message/http media type. HTTP/1.1 recipients <em class="bcp14">SHOULD</em> accept line folding and replace any embedded obs-fold whitespace with a single SP prior to interpreting the field value or
    1272          forwarding the message downstream.
    1273       </p>
    1274       <p id="rfc.section.3.2.p.9">Historically, HTTP has allowed field content with text in the ISO-8859-1 <a href="#ISO-8859-1" id="rfc.xref.ISO-8859-1.1"><cite title="Information technology -- 8-bit single-byte coded graphic character sets -- Part 1: Latin alphabet No. 1">[ISO-8859-1]</cite></a> character encoding and supported other character sets only through use of <a href="#RFC2047" id="rfc.xref.RFC2047.1"><cite title="MIME (Multipurpose Internet Mail Extensions) Part Three: Message Header Extensions for Non-ASCII Text">[RFC2047]</cite></a> encoding. In practice, most HTTP header field values use only a subset of the US-ASCII character encoding <a href="#USASCII" id="rfc.xref.USASCII.2"><cite title="Coded Character Set -- 7-bit American Standard Code for Information Interchange">[USASCII]</cite></a>. Newly defined header fields <em class="bcp14">SHOULD</em> limit their field values to US-ASCII octets. Recipients <em class="bcp14">SHOULD</em> treat other (obs-text) octets in field content as opaque data.
     1255         media type (<a href="#internet.media.type.message.http" title="Internet Media Type message/http">Section&nbsp;10.3.1</a>). HTTP senders <em class="bcp14">MUST NOT</em> produce messages that include line folding (i.e., that contain any field-content that matches the obs-fold rule) unless the
     1256         message is intended for packaging within the message/http media type. HTTP recipients <em class="bcp14">SHOULD</em> accept line folding and replace any embedded obs-fold whitespace with either a single SP or a matching number of SP octets
     1257         (to avoid buffer copying) prior to interpreting the field value or forwarding the message downstream.
     1258      </p>
     1259      <p id="rfc.section.3.2.1.p.4">Historically, HTTP has allowed field content with text in the ISO-8859-1 <a href="#ISO-8859-1" id="rfc.xref.ISO-8859-1.1"><cite title="Information technology -- 8-bit single-byte coded graphic character sets -- Part 1: Latin alphabet No. 1">[ISO-8859-1]</cite></a> character encoding and supported other character sets only through use of <a href="#RFC2047" id="rfc.xref.RFC2047.1"><cite title="MIME (Multipurpose Internet Mail Extensions) Part Three: Message Header Extensions for Non-ASCII Text">[RFC2047]</cite></a> encoding. In practice, most HTTP header field values use only a subset of the US-ASCII character encoding <a href="#USASCII" id="rfc.xref.USASCII.2"><cite title="Coded Character Set -- 7-bit American Standard Code for Information Interchange">[USASCII]</cite></a>. Newly defined header fields <em class="bcp14">SHOULD</em> limit their field values to US-ASCII octets. Recipients <em class="bcp14">SHOULD</em> treat other (obs-text) octets in field content as opaque data.
     1260      </p>
     1261      <h3 id="rfc.section.3.2.2"><a href="#rfc.section.3.2.2">3.2.2</a>&nbsp;<a id="field.length" href="#field.length">Field Length</a></h3>
     1262      <p id="rfc.section.3.2.2.p.1">HTTP does not place a pre-defined limit on the length of header fields, either in isolation or as a set. A server <em class="bcp14">MUST</em> be prepared to receive request header fields of unbounded length and respond with a 4xx status code if the received header
     1263         field(s) would be longer than the server wishes to handle.
     1264      </p>
     1265      <p id="rfc.section.3.2.2.p.2">A client that receives response headers that are longer than it wishes to handle can only treat it as a server error.</p>
     1266      <p id="rfc.section.3.2.2.p.3">Various ad-hoc limitations on header length are found in practice. It is <em class="bcp14">RECOMMENDED</em> that all HTTP senders and recipients support messages whose combined header fields have 4000 or more octets.
     1267      </p>
     1268      <h3 id="rfc.section.3.2.3"><a href="#rfc.section.3.2.3">3.2.3</a>&nbsp;<a id="field.rules" href="#field.rules">Common Field ABNF Rules</a></h3>
     1269      <div id="rule.token.separators">
     1270         <p id="rfc.section.3.2.3.p.1">        Many HTTP/1.1 header field values consist of words (token or quoted-string) separated by whitespace or special characters.
     1271            These special characters <em class="bcp14">MUST</em> be in a quoted string to be used within a parameter value (as defined in <a href="#transfer.codings" title="Transfer Codings">Section&nbsp;6.2</a>).
     1272         </p>
     1273      </div>
     1274      <div id="rfc.figure.u.21"></div><pre class="inline"><span id="rfc.iref.g.33"></span><span id="rfc.iref.g.34"></span><span id="rfc.iref.g.35"></span><span id="rfc.iref.g.36"></span>  <a href="#rule.token.separators" class="smpl">word</a>           = <a href="#rule.token.separators" class="smpl">token</a> / <a href="#rule.quoted-string" class="smpl">quoted-string</a>
     1275
     1276  <a href="#rule.token.separators" class="smpl">token</a>          = 1*<a href="#rule.token.separators" class="smpl">tchar</a>
     1277
     1278  <a href="#rule.token.separators" class="smpl">tchar</a>          = "!" / "#" / "$" / "%" / "&amp;" / "'" / "*"
     1279                 / "+" / "-" / "." / "^" / "_" / "`" / "|" / "~"
     1280                 / <a href="#core.rules" class="smpl">DIGIT</a> / <a href="#core.rules" class="smpl">ALPHA</a>
     1281                 ; any <a href="#core.rules" class="smpl">VCHAR</a>, except <a href="#rule.token.separators" class="smpl">special</a>
     1282
     1283  <a href="#rule.token.separators" class="smpl">special</a>        = "(" / ")" / "&lt;" / "&gt;" / "@" / ","
     1284                 / ";" / ":" / "\" / DQUOTE / "/" / "["
     1285                 / "]" / "?" / "=" / "{" / "}"
     1286</pre><div id="rule.quoted-string">
     1287         <p id="rfc.section.3.2.3.p.3">      A string of text is parsed as a single word if it is quoted using double-quote marks.</p>
     1288      </div>
     1289      <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.37"></span><span id="rfc.iref.g.38"></span><span id="rfc.iref.g.39"></span>  <a href="#rule.quoted-string" class="smpl">quoted-string</a>  = <a href="#core.rules" class="smpl">DQUOTE</a> *( <a href="#rule.quoted-string" class="smpl">qdtext</a> / <a href="#rule.quoted-pair" class="smpl">quoted-pair</a> ) <a href="#core.rules" class="smpl">DQUOTE</a>
     1290  <a href="#rule.quoted-string" class="smpl">qdtext</a>         = <a href="#rule.whitespace" class="smpl">OWS</a> / %x21 / %x23-5B / %x5D-7E / <a href="#rule.quoted-string" class="smpl">obs-text</a>
     1291  <a href="#rule.quoted-string" class="smpl">obs-text</a>       = %x80-FF
     1292</pre><div id="rule.quoted-pair">
     1293         <p id="rfc.section.3.2.3.p.5">  The backslash octet ("\") can be used as a single-octet quoting mechanism within quoted-string constructs:</p>
     1294      </div>
     1295      <div id="rfc.figure.u.23"></div><pre class="inline"><span id="rfc.iref.g.40"></span>  <a href="#rule.quoted-pair" class="smpl">quoted-pair</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> )
     1296</pre><p id="rfc.section.3.2.3.p.7">Recipients that process the value of the quoted-string <em class="bcp14">MUST</em> handle a quoted-pair as if it were replaced by the octet following the backslash.
     1297      </p>
     1298      <p id="rfc.section.3.2.3.p.8">Senders <em class="bcp14">SHOULD NOT</em> escape octets in quoted-strings that do not require escaping (i.e., other than DQUOTE and the backslash octet).
    12751299      </p>
    12761300      <div id="rule.comment">
    1277          <p id="rfc.section.3.2.p.10">    Comments can be included in some HTTP header fields by surrounding the comment text with parentheses. Comments are only allowed
     1301         <p id="rfc.section.3.2.3.p.9">    Comments can be included in some HTTP header fields by surrounding the comment text with parentheses. Comments are only allowed
    12781302            in fields containing "comment" as part of their field value definition.
    12791303         </p>
     
    12811305      <div id="rfc.figure.u.24"></div><pre class="inline"><span id="rfc.iref.g.41"></span><span id="rfc.iref.g.42"></span>  <a href="#rule.comment" class="smpl">comment</a>        = "(" *( <a href="#rule.comment" class="smpl">ctext</a> / <a href="#rule.quoted-cpair" class="smpl">quoted-cpair</a> / <a href="#rule.comment" class="smpl">comment</a> ) ")"
    12821306  <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>
    1283                  ; <a href="#rule.whitespace" class="smpl">OWS</a> / &lt;<a href="#core.rules" class="smpl">VCHAR</a> except "(", ")", and "\"&gt; / <a href="#rule.quoted-string" class="smpl">obs-text</a>
    12841307</pre><div id="rule.quoted-cpair">
    1285          <p id="rfc.section.3.2.p.12">  The backslash octet ("\") can be used as a single-octet quoting mechanism within comment constructs:</p>
     1308         <p id="rfc.section.3.2.3.p.11">  The backslash octet ("\") can be used as a single-octet quoting mechanism within comment constructs:</p>
    12861309      </div>
    12871310      <div id="rfc.figure.u.25"></div><pre class="inline"><span id="rfc.iref.g.43"></span>  <a href="#rule.quoted-cpair" class="smpl">quoted-cpair</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> )
    1288 </pre><p id="rfc.section.3.2.p.14">Senders <em class="bcp14">SHOULD NOT</em> escape octets that do not require escaping (i.e., other than the backslash octet "\" and the parentheses "(" and ")").
    1289       </p>
    1290       <p id="rfc.section.3.2.p.15">HTTP does not place a pre-defined limit on the length of header fields, either in isolation or as a set. A server <em class="bcp14">MUST</em> be prepared to receive request header fields of unbounded length and respond with a 4xx status code if the received header
    1291          field(s) would be longer than the server wishes to handle.
    1292       </p>
    1293       <p id="rfc.section.3.2.p.16">A client that receives response headers that are longer than it wishes to handle can only treat it as a server error.</p>
    1294       <p id="rfc.section.3.2.p.17">Various ad-hoc limitations on header length are found in practice. It is <em class="bcp14">RECOMMENDED</em> that all HTTP senders and recipients support messages whose combined header fields have 4000 or more octets.
     1311</pre><p id="rfc.section.3.2.3.p.13">Senders <em class="bcp14">SHOULD NOT</em> escape octets in comments that do not require escaping (i.e., other than the backslash octet "\" and the parentheses "(" and
     1312         ")").
    12951313      </p>
    12961314      <h2 id="rfc.section.3.3"><a href="#rfc.section.3.3">3.3</a>&nbsp;<a id="message.body" href="#message.body">Message Body</a></h2>
     
    14131431               <tr>
    14141432                  <td class="left">Connection</td>
    1415                   <td class="left"><a href="#header.connection" id="rfc.xref.header.connection.3" title="Connection">Section&nbsp;9.1</a></td>
     1433                  <td class="left"><a href="#header.connection" id="rfc.xref.header.connection.4" title="Connection">Section&nbsp;9.1</a></td>
    14161434               </tr>
    14171435               <tr>
    14181436                  <td class="left">Date</td>
    1419                   <td class="left"><a href="#header.date" id="rfc.xref.header.date.1" title="Date">Section&nbsp;9.3</a></td>
     1437                  <td class="left"><a href="#header.date" id="rfc.xref.header.date.2" title="Date">Section&nbsp;9.3</a></td>
    14201438               </tr>
    14211439               <tr>
     
    18931911      </p>
    18941912      <p id="rfc.section.7.1.2.p.2">Persistent connections provide a mechanism by which a client and a server can signal the close of a TCP connection. This signaling
    1895          takes place using the Connection header field (<a href="#header.connection" id="rfc.xref.header.connection.4" title="Connection">Section&nbsp;9.1</a>). Once a close has been signaled, the client <em class="bcp14">MUST NOT</em> send any more requests on that connection.
     1913         takes place using the Connection header field (<a href="#header.connection" id="rfc.xref.header.connection.5" title="Connection">Section&nbsp;9.1</a>). Once a close has been signaled, the client <em class="bcp14">MUST NOT</em> send any more requests on that connection.
    18961914      </p>
    18971915      <h4 id="rfc.section.7.1.2.1"><a href="#rfc.section.7.1.2.1">7.1.2.1</a>&nbsp;<a id="persistent.negotiation" href="#persistent.negotiation">Negotiation</a></h4>
     
    19191937      </p>
    19201938      <h3 id="rfc.section.7.1.3"><a href="#rfc.section.7.1.3">7.1.3</a>&nbsp;<a id="persistent.proxy" href="#persistent.proxy">Proxy Servers</a></h3>
    1921       <p id="rfc.section.7.1.3.p.1">It is especially important that proxies correctly implement the properties of the Connection header field as specified in <a href="#header.connection" id="rfc.xref.header.connection.5" title="Connection">Section&nbsp;9.1</a>.
     1939      <p id="rfc.section.7.1.3.p.1">It is especially important that proxies correctly implement the properties of the Connection header field as specified in <a href="#header.connection" id="rfc.xref.header.connection.6" title="Connection">Section&nbsp;9.1</a>.
    19221940      </p>
    19231941      <p id="rfc.section.7.1.3.p.2">The proxy server <em class="bcp14">MUST</em> signal persistent connections separately with its clients and the origin servers (or other proxy servers) that it connects
     
    19481966      </ul>
    19491967      <p id="rfc.section.7.1.3.1.p.3">All other header fields defined by HTTP/1.1 are end-to-end header fields.</p>
    1950       <p id="rfc.section.7.1.3.1.p.4">Other hop-by-hop header fields <em class="bcp14">MUST</em> be listed in a Connection header field (<a href="#header.connection" id="rfc.xref.header.connection.6" title="Connection">Section&nbsp;9.1</a>).
     1968      <p id="rfc.section.7.1.3.1.p.4">Other hop-by-hop header fields <em class="bcp14">MUST</em> be listed in a Connection header field (<a href="#header.connection" id="rfc.xref.header.connection.7" title="Connection">Section&nbsp;9.1</a>).
    19511969      </p>
    19521970      <h4 id="rfc.section.7.1.3.2"><a href="#rfc.section.7.1.3.2">7.1.3.2</a>&nbsp;<a id="non-modifiable.header-fields" href="#non-modifiable.header-fields">Non-modifiable Header Fields</a></h4>
     
    22722290  TE:
    22732291  TE: trailers, deflate;q=0.5
    2274 </pre><p id="rfc.section.9.5.p.7">The TE header field only applies to the immediate connection. Therefore, the keyword <em class="bcp14">MUST</em> be supplied within a Connection header field (<a href="#header.connection" id="rfc.xref.header.connection.7" title="Connection">Section&nbsp;9.1</a>) whenever TE is present in an HTTP/1.1 message.
     2292</pre><p id="rfc.section.9.5.p.7">The TE header field only applies to the immediate connection. Therefore, the keyword <em class="bcp14">MUST</em> be supplied within a Connection header field (<a href="#header.connection" id="rfc.xref.header.connection.8" title="Connection">Section&nbsp;9.1</a>) whenever TE is present in an HTTP/1.1 message.
    22752293      </p>
    22762294      <p id="rfc.section.9.5.p.8">A server tests whether a transfer-coding is acceptable, according to a TE field, using these rules: </p>
     
    23542372         although the first action after changing the protocol <em class="bcp14">MUST</em> be a response to the initial HTTP request containing the Upgrade header field.
    23552373      </p>
    2356       <p id="rfc.section.9.8.p.7">The Upgrade header field only applies to the immediate connection. Therefore, the upgrade keyword <em class="bcp14">MUST</em> be supplied within a Connection header field (<a href="#header.connection" id="rfc.xref.header.connection.8" title="Connection">Section&nbsp;9.1</a>) whenever Upgrade is present in an HTTP/1.1 message.
     2374      <p id="rfc.section.9.8.p.7">The Upgrade header field only applies to the immediate connection. Therefore, the upgrade keyword <em class="bcp14">MUST</em> be supplied within a Connection header field (<a href="#header.connection" id="rfc.xref.header.connection.9" title="Connection">Section&nbsp;9.1</a>) whenever Upgrade is present in an HTTP/1.1 message.
    23572375      </p>
    23582376      <p id="rfc.section.9.8.p.8">The Upgrade header field cannot be used to indicate a switch to a protocol on a different connection. For that purpose, it
     
    24532471                  <td class="left">http</td>
    24542472                  <td class="left">standard</td>
    2455                   <td class="left"> <a href="#header.connection" id="rfc.xref.header.connection.9" title="Connection">Section&nbsp;9.1</a>
     2473                  <td class="left"> <a href="#header.connection" id="rfc.xref.header.connection.10" title="Connection">Section&nbsp;9.1</a>
    24562474                  </td>
    24572475               </tr>
     
    24672485                  <td class="left">http</td>
    24682486                  <td class="left">standard</td>
    2469                   <td class="left"> <a href="#header.date" id="rfc.xref.header.date.2" title="Date">Section&nbsp;9.3</a>
     2487                  <td class="left"> <a href="#header.date" id="rfc.xref.header.date.3" title="Date">Section&nbsp;9.3</a>
    24702488                  </td>
    24712489               </tr>
     
    25162534      </div>
    25172535      <p id="rfc.section.10.1.p.2">Furthermore, the header field name "Close" shall be registered as "reserved", as its use as HTTP header field would be in
    2518          conflict with the use of the "close" connection option for the "Connection" header field (<a href="#header.connection" id="rfc.xref.header.connection.10" title="Connection">Section&nbsp;9.1</a>).
     2536         conflict with the use of the "close" connection option for the "Connection" header field (<a href="#header.connection" id="rfc.xref.header.connection.11" title="Connection">Section&nbsp;9.1</a>).
    25192537      </p>
    25202538      <div id="rfc.table.u.2">
     
    30613079         Therefore, we need some other mechanism for indicating a persistent connection is desired, which is safe to use even when
    30623080         talking to an old proxy that ignores Connection. Persistent connections are the default for HTTP/1.1 messages; we introduce
    3063          a new keyword (Connection: close) for declaring non-persistence. See <a href="#header.connection" id="rfc.xref.header.connection.11" title="Connection">Section&nbsp;9.1</a>.
     3081         a new keyword (Connection: close) for declaring non-persistence. See <a href="#header.connection" id="rfc.xref.header.connection.12" title="Connection">Section&nbsp;9.1</a>.
    30643082      </p>
    30653083      <h2 id="rfc.section.A.2"><a href="#rfc.section.A.2">A.2</a>&nbsp;<a id="changes.from.rfc.2616" href="#changes.from.rfc.2616">Changes from RFC 2616</a></h2>
     
    30903108      <p id="rfc.section.A.2.p.10">Change ABNF productions for header fields to only define the field value. (<a href="#header.field.definitions" title="Header Field Definitions">Section&nbsp;9</a>)
    30913109      </p>
    3092       <p id="rfc.section.A.2.p.11">Clarify exactly when close connection options must be sent. (<a href="#header.connection" id="rfc.xref.header.connection.12" title="Connection">Section&nbsp;9.1</a>)
     3110      <p id="rfc.section.A.2.p.11">Clarify exactly when close connection options must be sent. (<a href="#header.connection" id="rfc.xref.header.connection.13" title="Connection">Section&nbsp;9.1</a>)
    30933111      </p>
    30943112      <p id="rfc.section.A.2.p.12">Define the semantics of the "Upgrade" header field in responses other than 101 (this was incorporated from <a href="#RFC2817" id="rfc.xref.RFC2817.3"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>). (<a href="#header.upgrade" id="rfc.xref.header.upgrade.3" title="Upgrade">Section&nbsp;9.8</a>)
     
    36583676                  <li>compress (Coding Format)&nbsp;&nbsp;<a href="#rfc.iref.c.8">6.2.2.1</a></li>
    36593677                  <li>connection&nbsp;&nbsp;<a href="#rfc.iref.c.2"><b>2.1</b></a></li>
    3660                   <li>Connection header field&nbsp;&nbsp;<a href="#rfc.xref.header.connection.1">2.4</a>, <a href="#rfc.xref.header.connection.2">2.6</a>, <a href="#rfc.xref.header.connection.3">3.5</a>, <a href="#rfc.xref.header.connection.4">7.1.2</a>, <a href="#rfc.xref.header.connection.5">7.1.3</a>, <a href="#rfc.xref.header.connection.6">7.1.3.1</a>, <a href="#rfc.iref.c.12"><b>9.1</b></a>, <a href="#rfc.xref.header.connection.7">9.5</a>, <a href="#rfc.xref.header.connection.8">9.8</a>, <a href="#rfc.xref.header.connection.9">10.1</a>, <a href="#rfc.xref.header.connection.10">10.1</a>, <a href="#rfc.xref.header.connection.11">A.1.2</a>, <a href="#rfc.xref.header.connection.12">A.2</a></li>
     3678                  <li>Connection header field&nbsp;&nbsp;<a href="#rfc.xref.header.connection.1">2.4</a>, <a href="#rfc.xref.header.connection.2">2.6</a>, <a href="#rfc.xref.header.connection.3">3.2</a>, <a href="#rfc.xref.header.connection.4">3.5</a>, <a href="#rfc.xref.header.connection.5">7.1.2</a>, <a href="#rfc.xref.header.connection.6">7.1.3</a>, <a href="#rfc.xref.header.connection.7">7.1.3.1</a>, <a href="#rfc.iref.c.12"><b>9.1</b></a>, <a href="#rfc.xref.header.connection.8">9.5</a>, <a href="#rfc.xref.header.connection.9">9.8</a>, <a href="#rfc.xref.header.connection.10">10.1</a>, <a href="#rfc.xref.header.connection.11">10.1</a>, <a href="#rfc.xref.header.connection.12">A.1.2</a>, <a href="#rfc.xref.header.connection.13">A.2</a></li>
    36613679                  <li>Content-Length header field&nbsp;&nbsp;<a href="#rfc.xref.header.content-length.1">3.3</a>, <a href="#rfc.iref.c.13"><b>9.2</b></a>, <a href="#rfc.xref.header.content-length.2">10.1</a></li>
    36623680               </ul>
    36633681            </li>
    36643682            <li><a id="rfc.index.D" href="#rfc.index.D"><b>D</b></a><ul>
    3665                   <li>Date header field&nbsp;&nbsp;<a href="#rfc.xref.header.date.1">3.5</a>, <a href="#rfc.iref.d.3"><b>9.3</b></a>, <a href="#rfc.xref.header.date.2">10.1</a></li>
     3683                  <li>Date header field&nbsp;&nbsp;<a href="#rfc.xref.header.date.1">3.2</a>, <a href="#rfc.xref.header.date.2">3.5</a>, <a href="#rfc.iref.d.3"><b>9.3</b></a>, <a href="#rfc.xref.header.date.3">10.1</a></li>
    36663684                  <li>deflate (Coding Format)&nbsp;&nbsp;<a href="#rfc.iref.d.2">6.2.2.2</a></li>
    36673685                  <li>downstream&nbsp;&nbsp;<a href="#rfc.iref.d.1"><b>2.4</b></a></li>
     
    36733691            </li>
    36743692            <li><a id="rfc.index.G" href="#rfc.index.G"><b>G</b></a><ul>
    3675                   <li>gateway&nbsp;&nbsp;<a href="#rfc.iref.g.24"><b>2.4</b></a></li>
     3693                  <li>gateway&nbsp;&nbsp;<a href="#rfc.iref.g.16"><b>2.4</b></a></li>
    36763694                  <li><tt>Grammar</tt>&nbsp;&nbsp;
    36773695                     <ul>
    3678                         <li><tt>absolute-URI</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.28"><b>2.7</b></a></li>
     3696                        <li><tt>absolute-URI</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.20"><b>2.7</b></a></li>
    36793697                        <li>ALPHA&nbsp;&nbsp;<a href="#rfc.iref.g.1"><b>1.2</b></a></li>
    36803698                        <li><tt>asctime-date</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.68"><b>6.1</b></a></li>
    36813699                        <li><tt>attribute</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.72"><b>6.2</b></a></li>
    3682                         <li><tt>authority</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.29"><b>2.7</b></a></li>
     3700                        <li><tt>authority</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.21"><b>2.7</b></a></li>
    36833701                        <li><tt>BWS</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.15"><b>1.2.2</b></a></li>
    36843702                        <li><tt>chunk</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.77"><b>6.2.1</b></a></li>
     
    36893707                        <li><tt>chunk-size</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.78"><b>6.2.1</b></a></li>
    36903708                        <li><tt>Chunked-Body</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.76"><b>6.2.1</b></a></li>
    3691                         <li><tt>comment</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.41"><b>3.2</b></a></li>
     3709                        <li><tt>comment</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.41"><b>3.2.3</b></a></li>
    36923710                        <li><tt>Connection</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.91"><b>9.1</b></a></li>
    36933711                        <li><tt>connection-token</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.92"><b>9.1</b></a></li>
     
    36953713                        <li>CR&nbsp;&nbsp;<a href="#rfc.iref.g.2"><b>1.2</b></a></li>
    36963714                        <li>CRLF&nbsp;&nbsp;<a href="#rfc.iref.g.3"><b>1.2</b></a></li>
    3697                         <li><tt>ctext</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.42"><b>3.2</b></a></li>
     3715                        <li><tt>ctext</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.42"><b>3.2.3</b></a></li>
    36983716                        <li>CTL&nbsp;&nbsp;<a href="#rfc.iref.g.4"><b>1.2</b></a></li>
    36993717                        <li><tt>Date</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.94"><b>9.3</b></a></li>
     
    37063724                        <li>DIGIT&nbsp;&nbsp;<a href="#rfc.iref.g.5"><b>1.2</b></a></li>
    37073725                        <li>DQUOTE&nbsp;&nbsp;<a href="#rfc.iref.g.6"><b>1.2</b></a></li>
    3708                         <li><tt>field-content</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.40"><b>3.2</b></a></li>
    3709                         <li><tt>field-name</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.38"><b>3.2</b></a></li>
    3710                         <li><tt>field-value</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.39"><b>3.2</b></a></li>
     3726                        <li><tt>field-content</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.32"><b>3.2</b></a></li>
     3727                        <li><tt>field-name</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.30"><b>3.2</b></a></li>
     3728                        <li><tt>field-value</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.31"><b>3.2</b></a></li>
    37113729                        <li><tt>GMT</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.65"><b>6.1</b></a></li>
    3712                         <li><tt>header-field</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.37"><b>3.2</b></a></li>
     3730                        <li><tt>header-field</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.29"><b>3.2</b></a></li>
    37133731                        <li>HEXDIG&nbsp;&nbsp;<a href="#rfc.iref.g.7"><b>1.2</b></a></li>
    37143732                        <li><tt>Host</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.95"><b>9.4</b></a></li>
    37153733                        <li><tt>hour</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.57"><b>6.1</b></a></li>
    37163734                        <li><tt>HTTP-date</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.53"><b>6.1</b></a></li>
    3717                         <li><tt>HTTP-message</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.36"><b>3</b></a></li>
    3718                         <li><tt>HTTP-Prot-Name</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.26"><b>2.6</b></a></li>
    3719                         <li><tt>http-URI</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.34"><b>2.7.1</b></a></li>
    3720                         <li><tt>HTTP-Version</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.25"><b>2.6</b></a></li>
    3721                         <li><tt>https-URI</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.35"><b>2.7.2</b></a></li>
     3735                        <li><tt>HTTP-message</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.28"><b>3</b></a></li>
     3736                        <li><tt>HTTP-Prot-Name</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.18"><b>2.6</b></a></li>
     3737                        <li><tt>http-URI</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.26"><b>2.7.1</b></a></li>
     3738                        <li><tt>HTTP-Version</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.17"><b>2.6</b></a></li>
     3739                        <li><tt>https-URI</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.27"><b>2.7.2</b></a></li>
    37223740                        <li><tt>last-chunk</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.79"><b>6.2.1</b></a></li>
    37233741                        <li>LF&nbsp;&nbsp;<a href="#rfc.iref.g.8"><b>1.2</b></a></li>
     
    37273745                        <li><tt>month</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.63"><b>6.1</b></a></li>
    37283746                        <li><tt>obs-date</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.66"><b>6.1</b></a></li>
    3729                         <li><tt>obs-text</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.22"><b>1.2.2</b></a></li>
     3747                        <li><tt>obs-text</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.39"><b>3.2.3</b></a></li>
    37303748                        <li>OCTET&nbsp;&nbsp;<a href="#rfc.iref.g.9"><b>1.2</b></a></li>
    37313749                        <li><tt>OWS</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.13"><b>1.2.2</b></a></li>
    3732                         <li><tt>path-absolute</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.30"><b>2.7</b></a></li>
    3733                         <li><tt>port</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.31"><b>2.7</b></a></li>
     3750                        <li><tt>path-absolute</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.22"><b>2.7</b></a></li>
     3751                        <li><tt>port</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.23"><b>2.7</b></a></li>
    37343752                        <li><tt>product</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.88"><b>6.3</b></a></li>
    37353753                        <li><tt>product-version</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.89"><b>6.3</b></a></li>
     
    37373755                        <li><tt>protocol-version</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.106"><b>9.9</b></a></li>
    37383756                        <li><tt>pseudonym</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.108"><b>9.9</b></a></li>
    3739                         <li><tt>qdtext</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.21"><b>1.2.2</b></a></li>
     3757                        <li><tt>qdtext</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.38"><b>3.2.3</b></a></li>
    37403758                        <li><tt>qdtext-nf</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.86"><b>6.2.1</b></a></li>
    3741                         <li><tt>query</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.32"><b>2.7</b></a></li>
    3742                         <li><tt>quoted-cpair</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.43"><b>3.2</b></a></li>
    3743                         <li><tt>quoted-pair</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.23"><b>1.2.2</b></a></li>
     3759                        <li><tt>query</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.24"><b>2.7</b></a></li>
     3760                        <li><tt>quoted-cpair</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.43"><b>3.2.3</b></a></li>
     3761                        <li><tt>quoted-pair</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.40"><b>3.2.3</b></a></li>
    37443762                        <li><tt>quoted-str-nf</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.85"><b>6.2.1</b></a></li>
    3745                         <li><tt>quoted-string</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.20"><b>1.2.2</b></a></li>
     3763                        <li><tt>quoted-string</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.37"><b>3.2.3</b></a></li>
    37463764                        <li><tt>qvalue</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.90"><b>6.4</b></a></li>
    37473765                        <li><tt>Reason-Phrase</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.52"><b>5.1.1</b></a></li>
     
    37573775                        <li><tt>second</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.59"><b>6.1</b></a></li>
    37583776                        <li>SP&nbsp;&nbsp;<a href="#rfc.iref.g.10"><b>1.2</b></a></li>
    3759                         <li><tt>special</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.19"><b>1.2.2</b></a></li>
     3777                        <li><tt>special</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.36"><b>3.2.3</b></a></li>
    37603778                        <li><tt>Status-Code</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.51"><b>5.1.1</b></a></li>
    37613779                        <li><tt>Status-Line</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.50"><b>5.1</b></a></li>
    37623780                        <li><tt>t-codings</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.97"><b>9.5</b></a></li>
    3763                         <li><tt>tchar</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.18"><b>1.2.2</b></a></li>
     3781                        <li><tt>tchar</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.35"><b>3.2.3</b></a></li>
    37643782                        <li><tt>TE</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.96"><b>9.5</b></a></li>
    37653783                        <li><tt>te-ext</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.99"><b>9.5</b></a></li>
    37663784                        <li><tt>te-params</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.98"><b>9.5</b></a></li>
    37673785                        <li><tt>time-of-day</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.56"><b>6.1</b></a></li>
    3768                         <li><tt>token</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.17"><b>1.2.2</b></a></li>
     3786                        <li><tt>token</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.34"><b>3.2.3</b></a></li>
    37693787                        <li><tt>Trailer</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.100"><b>9.6</b></a></li>
    37703788                        <li><tt>trailer-part</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.84"><b>6.2.1</b></a></li>
     
    37743792                        <li><tt>transfer-parameter</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.71"><b>6.2</b></a></li>
    37753793                        <li><tt>Upgrade</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.102"><b>9.8</b></a></li>
    3776                         <li><tt>uri-host</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.33"><b>2.7</b></a></li>
    3777                         <li><tt>URI-reference</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.27"><b>2.7</b></a></li>
     3794                        <li><tt>uri-host</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.25"><b>2.7</b></a></li>
     3795                        <li><tt>URI-reference</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.19"><b>2.7</b></a></li>
    37783796                        <li><tt>value</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.73"><b>6.2</b></a></li>
    37793797                        <li>VCHAR&nbsp;&nbsp;<a href="#rfc.iref.g.11"><b>1.2</b></a></li>
    37803798                        <li><tt>Via</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.103"><b>9.9</b></a></li>
    3781                         <li><tt>word</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.16"><b>1.2.2</b></a></li>
     3799                        <li><tt>word</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.33"><b>3.2.3</b></a></li>
    37823800                        <li>WSP&nbsp;&nbsp;<a href="#rfc.iref.g.12"><b>1.2</b></a></li>
    37833801                        <li><tt>year</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.64"><b>6.1</b></a></li>
     
    37913809                  <li>Header Fields&nbsp;&nbsp;
    37923810                     <ul>
    3793                         <li>Connection&nbsp;&nbsp;<a href="#rfc.xref.header.connection.1">2.4</a>, <a href="#rfc.xref.header.connection.2">2.6</a>, <a href="#rfc.xref.header.connection.3">3.5</a>, <a href="#rfc.xref.header.connection.4">7.1.2</a>, <a href="#rfc.xref.header.connection.5">7.1.3</a>, <a href="#rfc.xref.header.connection.6">7.1.3.1</a>, <a href="#rfc.iref.h.6"><b>9.1</b></a>, <a href="#rfc.xref.header.connection.7">9.5</a>, <a href="#rfc.xref.header.connection.8">9.8</a>, <a href="#rfc.xref.header.connection.9">10.1</a>, <a href="#rfc.xref.header.connection.10">10.1</a>, <a href="#rfc.xref.header.connection.11">A.1.2</a>, <a href="#rfc.xref.header.connection.12">A.2</a></li>
     3811                        <li>Connection&nbsp;&nbsp;<a href="#rfc.xref.header.connection.1">2.4</a>, <a href="#rfc.xref.header.connection.2">2.6</a>, <a href="#rfc.xref.header.connection.3">3.2</a>, <a href="#rfc.xref.header.connection.4">3.5</a>, <a href="#rfc.xref.header.connection.5">7.1.2</a>, <a href="#rfc.xref.header.connection.6">7.1.3</a>, <a href="#rfc.xref.header.connection.7">7.1.3.1</a>, <a href="#rfc.iref.h.6"><b>9.1</b></a>, <a href="#rfc.xref.header.connection.8">9.5</a>, <a href="#rfc.xref.header.connection.9">9.8</a>, <a href="#rfc.xref.header.connection.10">10.1</a>, <a href="#rfc.xref.header.connection.11">10.1</a>, <a href="#rfc.xref.header.connection.12">A.1.2</a>, <a href="#rfc.xref.header.connection.13">A.2</a></li>
    37943812                        <li>Content-Length&nbsp;&nbsp;<a href="#rfc.xref.header.content-length.1">3.3</a>, <a href="#rfc.iref.h.7"><b>9.2</b></a>, <a href="#rfc.xref.header.content-length.2">10.1</a></li>
    3795                         <li>Date&nbsp;&nbsp;<a href="#rfc.xref.header.date.1">3.5</a>, <a href="#rfc.iref.h.8"><b>9.3</b></a>, <a href="#rfc.xref.header.date.2">10.1</a></li>
     3813                        <li>Date&nbsp;&nbsp;<a href="#rfc.xref.header.date.1">3.2</a>, <a href="#rfc.xref.header.date.2">3.5</a>, <a href="#rfc.iref.h.8"><b>9.3</b></a>, <a href="#rfc.xref.header.date.3">10.1</a></li>
    37963814                        <li>Host&nbsp;&nbsp;<a href="#rfc.xref.header.host.1">4.3</a>, <a href="#rfc.iref.h.10"><b>9.4</b></a>, <a href="#rfc.xref.header.host.2">10.1</a>, <a href="#rfc.xref.header.host.3">A.1.1</a></li>
    37973815                        <li>TE&nbsp;&nbsp;<a href="#rfc.xref.header.te.1">6.2</a>, <a href="#rfc.xref.header.te.2">6.2.1</a>, <a href="#rfc.xref.header.te.3">6.4</a>, <a href="#rfc.iref.h.11"><b>9.5</b></a>, <a href="#rfc.xref.header.te.4">10.1</a></li>
     
    38133831                  <li>interception proxy&nbsp;&nbsp;<a href="#rfc.iref.i.3"><b>2.4</b></a></li>
    38143832                  <li>intermediary&nbsp;&nbsp;<a href="#rfc.iref.i.1"><b>2.4</b></a></li>
    3815                   <li><em>ISO-8859-1</em>&nbsp;&nbsp;<a href="#rfc.xref.ISO-8859-1.1">3.2</a>, <a href="#ISO-8859-1"><b>13.1</b></a></li>
     3833                  <li><em>ISO-8859-1</em>&nbsp;&nbsp;<a href="#rfc.xref.ISO-8859-1.1">3.2.1</a>, <a href="#ISO-8859-1"><b>13.1</b></a></li>
    38163834               </ul>
    38173835            </li>
     
    38923910                     </ul>
    38933911                  </li>
    3894                   <li><em>RFC2047</em>&nbsp;&nbsp;<a href="#rfc.xref.RFC2047.1">3.2</a>, <a href="#RFC2047"><b>13.2</b></a></li>
     3912                  <li><em>RFC2047</em>&nbsp;&nbsp;<a href="#rfc.xref.RFC2047.1">3.2.1</a>, <a href="#RFC2047"><b>13.2</b></a></li>
    38953913                  <li><em>RFC2068</em>&nbsp;&nbsp;<a href="#rfc.xref.RFC2068.1">§</a>, <a href="#rfc.xref.RFC2068.2">2.6</a>, <a href="#rfc.xref.RFC2068.3">7.1.3</a>, <a href="#rfc.xref.RFC2068.4">7.2.3</a>, <a href="#rfc.xref.RFC2068.5">13.1</a>, <a href="#rfc.xref.RFC2068.6">13.1</a>, <a href="#rfc.xref.RFC2068.7">13.1</a>, <a href="#RFC2068"><b>13.2</b></a>, <a href="#rfc.xref.RFC2068.8">A.1.2</a><ul>
    38963914                        <li><em>Section 19.7.1</em>&nbsp;&nbsp;<a href="#rfc.xref.RFC2068.3">7.1.3</a>, <a href="#rfc.xref.RFC2068.8">A.1.2</a></li>
     
    39743992                     </ul>
    39753993                  </li>
    3976                   <li><em>USASCII</em>&nbsp;&nbsp;<a href="#rfc.xref.USASCII.1">1.2</a>, <a href="#rfc.xref.USASCII.2">3.2</a>, <a href="#USASCII"><b>13.1</b></a></li>
     3994                  <li><em>USASCII</em>&nbsp;&nbsp;<a href="#rfc.xref.USASCII.1">1.2</a>, <a href="#rfc.xref.USASCII.2">3.2.1</a>, <a href="#USASCII"><b>13.1</b></a></li>
    39773995                  <li>user agent&nbsp;&nbsp;<a href="#rfc.iref.u.1"><b>2.1</b></a></li>
    39783996               </ul>
Note: See TracChangeset for help on using the changeset viewer.