Changeset 2380


Ignore:
Timestamp:
Sep 13, 2013, 2:05:47 AM (6 years ago)
Author:
fielding@…
Message:

Remove the Expect extension mechanism to focus on the definition of 100-continue; allow proxies to generate 100 on behalf of inbound HTTP/1.0 servers; addresses #458 and #468

Location:
draft-ietf-httpbis/latest
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • draft-ietf-httpbis/latest/httpbis.abnf

    r2368 r2380  
    2222Date = HTTP-date
    2323ETag = entity-tag
    24 Expect = *( "," OWS ) expectation *( OWS "," [ OWS expectation ] )
     24Expect = "100-continue"
    2525Expires = HTTP-date
    2626From = mailbox
     
    125125etagc = "!" / %x23-7E ; '#'-'~'
    126126 / obs-text
    127 expect-name = token
    128 expect-param = expect-name [ BWS "=" BWS expect-value ]
    129 expect-value = token / quoted-string
    130 expectation = expect-name [ BWS "=" BWS expect-value ] *( OWS ";" [ OWS expect-param ] )
    131127extension-pragma = token [ "=" ( token / quoted-string ) ]
    132128field-content = *( HTAB / SP / VCHAR / obs-text )
  • draft-ietf-httpbis/latest/p2-semantics.html

    r2376 r2380  
    446446  }
    447447  @bottom-center {
    448        content: "Expires March 16, 2014";
     448       content: "Expires March 17, 2014";
    449449  }
    450450  @bottom-right {
     
    491491      <meta name="dct.creator" content="Reschke, J. F.">
    492492      <meta name="dct.identifier" content="urn:ietf:id:draft-ietf-httpbis-p2-semantics-latest">
    493       <meta name="dct.issued" scheme="ISO8601" content="2013-09-12">
     493      <meta name="dct.issued" scheme="ISO8601" content="2013-09-13">
    494494      <meta name="dct.replaces" content="urn:ietf:rfc:2616">
    495495      <meta name="dct.abstract" content="The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypertext information systems. This document defines the semantics of HTTP/1.1 messages, as expressed by request methods, request header fields, response status codes, and response header fields, along with the payload of messages (metadata and body content) and mechanisms for content negotiation.">
     
    519519            <tr>
    520520               <td class="left">Intended status: Standards Track</td>
    521                <td class="right">September 12, 2013</td>
     521               <td class="right">September 13, 2013</td>
    522522            </tr>
    523523            <tr>
    524                <td class="left">Expires: March 16, 2014</td>
     524               <td class="left">Expires: March 17, 2014</td>
    525525               <td class="right"></td>
    526526            </tr>
     
    550550         in progress”.
    551551      </p>
    552       <p>This Internet-Draft will expire on March 16, 2014.</p>
     552      <p>This Internet-Draft will expire on March 17, 2014.</p>
    553553      <h1><a id="rfc.copyrightnotice" href="#rfc.copyrightnotice">Copyright Notice</a></h1>
    554554      <p>Copyright © 2013 IETF Trust and the persons identified as the document authors. All rights reserved.</p>
     
    633633         <li><a href="#rfc.section.5">5.</a>&nbsp;&nbsp;&nbsp;<a href="#request.header.fields">Request Header Fields</a><ul>
    634634               <li><a href="#rfc.section.5.1">5.1</a>&nbsp;&nbsp;&nbsp;<a href="#request.controls">Controls</a><ul>
    635                      <li><a href="#rfc.section.5.1.1">5.1.1</a>&nbsp;&nbsp;&nbsp;<a href="#header.expect">Expect</a><ul>
    636                            <li><a href="#rfc.section.5.1.1.1">5.1.1.1</a>&nbsp;&nbsp;&nbsp;<a href="#expect-100-continue">100-continue Expectation</a></li>
    637                         </ul>
    638                      </li>
     635                     <li><a href="#rfc.section.5.1.1">5.1.1</a>&nbsp;&nbsp;&nbsp;<a href="#header.expect">Expect</a></li>
    639636                     <li><a href="#rfc.section.5.1.2">5.1.2</a>&nbsp;&nbsp;&nbsp;<a href="#header.max-forwards">Max-Forwards</a></li>
    640637                  </ul>
     
    16751672      </div>
    16761673      <div id="rfc.iref.e.1"></div>
     1674      <div id="rfc.iref.40"></div>
    16771675      <h3 id="rfc.section.5.1.1"><a href="#rfc.section.5.1.1">5.1.1</a>&nbsp;<a id="header.expect" href="#header.expect">Expect</a></h3>
    1678       <p id="rfc.section.5.1.1.p.1">The "Expect" header field in a request indicates that a certain set of behaviors (expectations) need to be supported by all
    1679          inbound servers in order to properly handle this request. A server that does not understand, or cannot comply with, one or
    1680          more of the received expectations <em class="bcp14">MUST</em> respond with an appropriate <a href="#status.4xx" class="smpl">4xx</a> status code, indicating either <a href="#status.417" class="smpl">417 (Expectation Failed)</a> or some other error status that was determined prior to evaluating Expect.
    1681       </p>
    1682       <div id="rfc.figure.u.20"></div><pre class="inline"><span id="rfc.iref.g.17"></span><span id="rfc.iref.g.18"></span><span id="rfc.iref.g.19"></span><span id="rfc.iref.g.20"></span><span id="rfc.iref.g.21"></span>  <a href="#header.expect" class="smpl">Expect</a>       = 1#<a href="#header.expect" class="smpl">expectation</a>
    1683  
    1684   <a href="#header.expect" class="smpl">expectation</a>  = <a href="#header.expect" class="smpl">expect-name</a> [ <a href="#imported.abnf" class="smpl">BWS</a> "=" <a href="#imported.abnf" class="smpl">BWS</a> <a href="#header.expect" class="smpl">expect-value</a> ]
    1685                              *( <a href="#imported.abnf" class="smpl">OWS</a> ";" [ <a href="#imported.abnf" class="smpl">OWS</a> <a href="#header.expect" class="smpl">expect-param</a> ] )
    1686   <a href="#header.expect" class="smpl">expect-param</a> = <a href="#header.expect" class="smpl">expect-name</a> [ <a href="#imported.abnf" class="smpl">BWS</a> "=" <a href="#imported.abnf" class="smpl">BWS</a> <a href="#header.expect" class="smpl">expect-value</a> ]
    1687  
    1688   <a href="#header.expect" class="smpl">expect-name</a>  = <a href="#imported.abnf" class="smpl">token</a>
    1689   <a href="#header.expect" class="smpl">expect-value</a> = <a href="#imported.abnf" class="smpl">token</a> / <a href="#imported.abnf" class="smpl">quoted-string</a>
    1690 </pre><p id="rfc.section.5.1.1.p.3">Comparison is case-insensitive for names (expect-name) and case-sensitive for values (expect-value).</p>
    1691       <p id="rfc.section.5.1.1.p.4">An intermediary forwarding a request <em class="bcp14">MUST</em> forward a received Expect header field unless one of the expectations requires otherwise.
    1692       </p>
    1693       <p id="rfc.section.5.1.1.p.5">The Expect header field was added after the original publication of HTTP/1.1 <a href="#RFC2068" id="rfc.xref.RFC2068.1"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2068]</cite></a> and was not implemented by many of the initial implementations. We are hoping that those implementations have long since been
    1694          replaced. However, it remains unlikely that any implementation sending HTTP/1.0 messages will have implemented this field.
    1695          A server that receives an Expect header field in an HTTP/1.0 request <em class="bcp14">MUST</em> respond with <a href="#status.417" class="smpl">417 (Expectation Failed)</a>, since this would indicate that the message has been forwarded through an HTTP/1.0 intermediary that does not support Expect
    1696          and won't be able to support any expectation.
    1697       </p>
    1698       <div id="rfc.iref.45"></div>
    1699       <div id="rfc.iref.e.2"></div>
    1700       <h4 id="rfc.section.5.1.1.1"><a href="#rfc.section.5.1.1.1">5.1.1.1</a>&nbsp;<a id="expect-100-continue" href="#expect-100-continue">100-continue Expectation</a></h4>
    1701       <p id="rfc.section.5.1.1.1.p.1">The <dfn>100-continue</dfn> expectation informs recipients that the client is about to send a (presumably large) payload in this request and wishes to
    1702          receive a <a href="#status.100" class="smpl">100 (Continue)</a> interim response if the request-line and header fields are not sufficient to cause an immediate success, redirect, or error
    1703          response. This allows the client to wait for an indication that it is worthwhile to send the payload body before actually
    1704          doing so, which can improve efficiency when the payload body is huge or when the client anticipates that an error is likely
     1676      <p id="rfc.section.5.1.1.p.1">The "Expect" header field in a request indicates a certain set of behaviors (expectations) that need to be supported by the
     1677         server in order to properly handle this request. The only such expectation defined by this specification is <a href="#header.expect" class="smpl">100-continue</a>.
     1678      </p>
     1679      <div id="rfc.figure.u.20"></div><pre class="inline"><span id="rfc.iref.g.17"></span>  <a href="#header.expect" class="smpl">Expect</a>  = "100-continue"
     1680</pre><p id="rfc.section.5.1.1.p.3">The Expect field-value is case-insensitive.</p>
     1681      <p id="rfc.section.5.1.1.p.4">A server that receives an Expect field-value other than <a href="#header.expect" class="smpl">100-continue</a> <em class="bcp14">MAY</em> respond with a <a href="#status.417" class="smpl">417 (Expectation Failed)</a> status code to indicate that the unexpected expectation cannot be met.
     1682      </p>
     1683      <p id="rfc.section.5.1.1.p.5">A <dfn>100-continue</dfn> expectation informs recipients that the client is about to send a (presumably large) message body in this request and wishes
     1684         to receive a <a href="#status.100" class="smpl">100 (Continue)</a> interim response if the request-line and header fields are not sufficient to cause an immediate success, redirect, or error
     1685         response. This allows the client to wait for an indication that it is worthwhile to send the message body before actually
     1686         doing so, which can improve efficiency when the message body is huge or when the client anticipates that an error is likely
    17051687         (e.g., when sending a state-changing method, for the first time, without previously verified authentication credentials).
    17061688      </p>
    1707       <p id="rfc.section.5.1.1.1.p.2">Requirements for clients: </p>
     1689      <p id="rfc.section.5.1.1.p.6">For example, a request that begins with</p>
     1690      <div id="rfc.figure.u.21"></div><pre class="text2">PUT /somewhere/fun HTTP/1.1
     1691Host: origin.example.com
     1692Content-Type: video/h264
     1693Content-Length: 1234567890987
     1694Expect: 100-continue
     1695
     1696</pre><p id="rfc.section.5.1.1.p.8">allows the origin server to immediately respond with an error message, such as <a href="p7-auth.html#status.401" class="smpl">401 (Unauthorized)</a> or <a href="#status.405" class="smpl">405 (Method Not Allowed)</a>, before the client starts filling the pipes with an unnecessary data transfer.
     1697      </p>
     1698      <p id="rfc.section.5.1.1.p.9">Requirements for clients: </p>
    17081699      <ul>
    1709          <li>A client <em class="bcp14">MUST NOT</em> generate a 100-continue expectation in a request that does not include a payload body.
    1710          </li>
    1711          <li>A client that will wait for a <a href="#status.100" class="smpl">100 (Continue)</a> response before sending the request payload body <em class="bcp14">MUST</em> send an <a href="#header.expect" class="smpl">Expect</a> header field containing a 100-continue expectation.
    1712          </li>
    1713          <li>A client that sends a 100-continue expectation is not required to wait for any specific length of time; such a client <em class="bcp14">MAY</em> proceed to send the payload body even if it has not yet received a response. Furthermore, since <a href="#status.100" class="smpl">100 (Continue)</a> responses cannot be sent to an HTTP/1.0 intermediary, and since some servers have failed to implement Expect, such a client <em class="bcp14">SHOULD NOT</em> wait for an indefinite period before sending the payload body.
    1714          </li>
    1715          <li>A client that sends a 100-continue expectation <em class="bcp14">MUST NOT</em> send an expect-value or expect-param within that expectation.
     1700         <li>A client <em class="bcp14">MUST NOT</em> generate a 100-continue expectation in a request that does not include a message body.
     1701         </li>
     1702         <li>A client that will wait for a <a href="#status.100" class="smpl">100 (Continue)</a> response before sending the request message body <em class="bcp14">MUST</em> send an <a href="#header.expect" class="smpl">Expect</a> header field containing a 100-continue expectation.
     1703         </li>
     1704         <li>A client that sends a 100-continue expectation is not required to wait for any specific length of time; such a client <em class="bcp14">MAY</em> proceed to send the message body even if it has not yet received a response. Furthermore, since <a href="#status.100" class="smpl">100 (Continue)</a> responses cannot be sent through an HTTP/1.0 intermediary, such a client <em class="bcp14">SHOULD NOT</em> wait for an indefinite period before sending the message body.
    17161705         </li>
    17171706         <li>A client that receives a <a href="#status.417" class="smpl">417 (Expectation Failed)</a> status code in response to a request containing a 100-continue expectation <em class="bcp14">SHOULD</em> repeat that request without a 100-continue expectation, since the 417 response merely indicates that the response chain does
     
    17191708         </li>
    17201709      </ul>
    1721       <p id="rfc.section.5.1.1.1.p.3">Requirements for origin servers: </p>
     1710      <p id="rfc.section.5.1.1.p.10">Requirements for servers: </p>
    17221711      <ul>
    1723          <li>Upon receiving a request that includes a 100-continue expectation, an origin server <em class="bcp14">MUST</em> either respond with <a href="#status.100" class="smpl">100 (Continue)</a> status code and continue to read from the input stream, or respond with a final status code. The origin server <em class="bcp14">MUST NOT</em> wait for the payload body before sending the <a href="#status.100" class="smpl">100 (Continue)</a> response.
    1724          </li>
    1725          <li>An origin server <em class="bcp14">MUST NOT</em> send a <a href="#status.100" class="smpl">100 (Continue)</a> response if such a request comes from an HTTP/1.0 client.
    1726          </li>
    1727          <li>An origin server <em class="bcp14">MAY</em> omit a <a href="#status.100" class="smpl">100 (Continue)</a> response if it has already received some or all of the payload body for the corresponding request.
    1728          </li>
    1729          <li>An origin server that sends a <a href="#status.100" class="smpl">100 (Continue)</a> response <em class="bcp14">MUST</em> ultimately send a final status code, once the payload body is received and processed, unless the connection is closed prematurely.
    1730          </li>
    1731          <li>An origin server that responds with a final status code before reading the entire payload body <em class="bcp14">SHOULD</em> indicate in that response whether it intends to close the connection or continue reading and discarding the request payload
    1732             body (see <a href="p1-messaging.html#persistent.tear-down" title="Tear-down">Section 6.6</a> of <a href="#Part1" id="rfc.xref.Part1.21"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>).
     1712         <li>A server that receives a 100-continue expectation in an HTTP/1.0 request <em class="bcp14">MUST</em> ignore that expectation.
     1713         </li>
     1714         <li>A server <em class="bcp14">MAY</em> omit sending a <a href="#status.100" class="smpl">100 (Continue)</a> response if it has already received some or all of the message body for the corresponding request, or if the framing indicates
     1715            that there is no message body.
     1716         </li>
     1717         <li>A server that sends a <a href="#status.100" class="smpl">100 (Continue)</a> response <em class="bcp14">MUST</em> ultimately send a final status code, once the message body is received and processed, unless the connection is closed prematurely.
     1718         </li>
     1719         <li>A server that responds with a final status code before reading the entire message body <em class="bcp14">SHOULD</em> indicate in that response whether it intends to close the connection or continue reading and discarding the request message
     1720            (see <a href="p1-messaging.html#persistent.tear-down" title="Tear-down">Section 6.6</a> of <a href="#Part1" id="rfc.xref.Part1.21"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>).
    17331721         </li>
    17341722      </ul>
    1735       <p id="rfc.section.5.1.1.1.p.4">Requirements for proxies: </p>
    1736       <ul>
    1737          <li>A proxy that forwards a request received with a 100-continue expectation <em class="bcp14">MUST</em> send a 100-continue expectation in the forwarded request.
    1738          </li>
    1739          <li>A proxy <em class="bcp14">MUST NOT</em> forward a request received with a 100-continue expectation if it knows the advertised HTTP version of the next-hop server
    1740             is HTTP/1.0; instead, such a proxy <em class="bcp14">MUST</em> respond with a <a href="#status.417" class="smpl">417 (Expectation Failed)</a> status code.
    1741          </li>
    1742          <li>Proxies <em class="bcp14">SHOULD</em> maintain a record of the HTTP version numbers received from recently-referenced next-hop servers.
    1743          </li>
    1744       </ul>
     1723      <p id="rfc.section.5.1.1.p.11">An origin server <em class="bcp14">MUST</em>, upon receiving an HTTP/1.1 (or later) request-line and a complete header section that contains a 100-continue expectation
     1724         and indicates a request message body will follow, either send an immediate response with a final status code, if that status
     1725         can be determined by examining just the request-line and header fields, or send an immediate <a href="#status.100" class="smpl">100 (Continue)</a> response to encourage the client to send the request's message body. The origin server <em class="bcp14">MUST NOT</em> wait for the message body before sending the <a href="#status.100" class="smpl">100 (Continue)</a> response.
     1726      </p>
     1727      <p id="rfc.section.5.1.1.p.12">A proxy <em class="bcp14">MUST</em>, upon receiving an HTTP/1.1 (or later) request-line and a complete header section that contains a 100-continue expectation
     1728         and indicates a request message body will follow, either send an immediate response with a final status code, if that status
     1729         can be determined by examining just the request-line and header fields, or begin forwarding the request toward the origin
     1730         server by sending a corresponding request-line and header section to the next inbound server. If the proxy believes (from
     1731         configuration or past interaction) that the next inbound server only supports HTTP/1.0, the proxy <em class="bcp14">MAY</em> generate an immediate <a href="#status.100" class="smpl">100 (Continue)</a> response to encourage the client to begin sending the message body.
     1732      </p>
     1733      <div class="note" id="rfc.section.5.1.1.p.13">
     1734         <p><b>Note:</b> The Expect header field was added after the original publication of HTTP/1.1 <a href="#RFC2068" id="rfc.xref.RFC2068.1"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2068]</cite></a> as both the means to request an interim 100 response and the general mechanism for indicating must-understand extensions.
     1735            However, the extension mechanism has not been used by clients and the must-understand requirements have not been implemented
     1736            by many servers, rendering the extension mechanism useless. This specification has removed the extension mechanism in order
     1737            to simplify the definition and processing of 100-continue.
     1738         </p>
     1739      </div>
    17451740      <div id="rfc.iref.m.1"></div>
    17461741      <h3 id="rfc.section.5.1.2"><a href="#rfc.section.5.1.2">5.1.2</a>&nbsp;<a id="header.max-forwards" href="#header.max-forwards">Max-Forwards</a></h3>
     
    17481743         to trace a request that appears to be failing or looping mid-chain.
    17491744      </p>
    1750       <div id="rfc.figure.u.21"></div><pre class="inline"><span id="rfc.iref.g.22"></span>  <a href="#header.max-forwards" class="smpl">Max-Forwards</a> = 1*<a href="#imported.abnf" class="smpl">DIGIT</a>
     1745      <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.18"></span>  <a href="#header.max-forwards" class="smpl">Max-Forwards</a> = 1*<a href="#imported.abnf" class="smpl">DIGIT</a>
    17511746</pre><p id="rfc.section.5.1.2.p.3">The Max-Forwards value is a decimal integer indicating the remaining number of times this request message can be forwarded.</p>
    17521747      <p id="rfc.section.5.1.2.p.4">Each intermediary that receives a TRACE or OPTIONS request containing a Max-Forwards header field <em class="bcp14">MUST</em> check and update its value prior to forwarding the request. If the received value is zero (0), the intermediary <em class="bcp14">MUST NOT</em> forward the request; instead, the intermediary <em class="bcp14">MUST</em> respond as the final recipient. If the received Max-Forwards value is greater than zero, the intermediary <em class="bcp14">MUST</em> generate an updated Max-Forwards field in the forwarded message with a field-value that is the lesser of: a) the received
     
    18371832         a value of 0 means "not acceptable". If no "q" parameter is present, the default weight is 1.
    18381833      </p>
    1839       <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.23"></span><span id="rfc.iref.g.24"></span>  <a href="#quality.values" class="smpl">weight</a> = <a href="#imported.abnf" class="smpl">OWS</a> ";" <a href="#imported.abnf" class="smpl">OWS</a> "q=" <a href="#quality.values" class="smpl">qvalue</a>
     1834      <div id="rfc.figure.u.23"></div><pre class="inline"><span id="rfc.iref.g.19"></span><span id="rfc.iref.g.20"></span>  <a href="#quality.values" class="smpl">weight</a> = <a href="#imported.abnf" class="smpl">OWS</a> ";" <a href="#imported.abnf" class="smpl">OWS</a> "q=" <a href="#quality.values" class="smpl">qvalue</a>
    18401835  <a href="#quality.values" class="smpl">qvalue</a> = ( "0" [ "." 0*3<a href="#imported.abnf" class="smpl">DIGIT</a> ] )
    18411836         / ( "1" [ "." 0*3("0") ] )
     
    18491844         for an in-line image.
    18501845      </p>
    1851       <div id="rfc.figure.u.23"></div><pre class="inline"><span id="rfc.iref.g.25"></span><span id="rfc.iref.g.26"></span><span id="rfc.iref.g.27"></span><span id="rfc.iref.g.28"></span>  <a href="#header.accept" class="smpl">Accept</a> = #( <a href="#header.accept" class="smpl">media-range</a> [ <a href="#header.accept" class="smpl">accept-params</a> ] )
     1846      <div id="rfc.figure.u.24"></div><pre class="inline"><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>  <a href="#header.accept" class="smpl">Accept</a> = #( <a href="#header.accept" class="smpl">media-range</a> [ <a href="#header.accept" class="smpl">accept-params</a> ] )
    18521847 
    18531848  <a href="#header.accept" class="smpl">media-range</a>    = ( "*/*"
     
    18711866      </div>
    18721867      <p id="rfc.section.5.3.2.p.6">The example</p>
    1873       <div id="rfc.figure.u.24"></div><pre class="text">  Accept: audio/*; q=0.2, audio/basic
     1868      <div id="rfc.figure.u.25"></div><pre class="text">  Accept: audio/*; q=0.2, audio/basic
    18741869</pre><p id="rfc.section.5.3.2.p.8"><em class="bcp14">SHOULD</em> be interpreted as "I prefer audio/basic, but send me any audio type if it is the best available after an 80% mark-down in
    18751870         quality".
     
    18801875      </p>
    18811876      <p id="rfc.section.5.3.2.p.10">A more elaborate example is</p>
    1882       <div id="rfc.figure.u.25"></div><pre class="text">  Accept: text/plain; q=0.5, text/html,
     1877      <div id="rfc.figure.u.26"></div><pre class="text">  Accept: text/plain; q=0.5, text/html,
    18831878          text/x-dvi; q=0.8, text/x-c
    18841879</pre><p id="rfc.section.5.3.2.p.12">Verbally, this would be interpreted as "text/html and text/x-c are the equally preferred media types, but if they do not exist,
     
    18881883         to a given type, the most specific reference has precedence. For example,
    18891884      </p>
    1890       <div id="rfc.figure.u.26"></div><pre class="text">  Accept: text/*, text/plain, text/plain;format=flowed, */*
     1885      <div id="rfc.figure.u.27"></div><pre class="text">  Accept: text/*, text/plain, text/plain;format=flowed, */*
    18911886</pre><p id="rfc.section.5.3.2.p.15">have the following precedence: </p>
    18921887      <ol>
     
    18991894         that matches the type. For example,
    19001895      </p>
    1901       <div id="rfc.figure.u.27"></div><pre class="text">  Accept: text/*;q=0.3, text/html;q=0.7, text/html;level=1,
     1896      <div id="rfc.figure.u.28"></div><pre class="text">  Accept: text/*;q=0.3, text/html;q=0.7, text/html;level=1,
    19021897          text/html;level=2;q=0.4, */*;q=0.5
    19031898</pre><p id="rfc.section.5.3.2.p.18">would cause the following values to be associated:</p>
     
    19471942         capability to an origin server that is capable of representing information in those charsets.
    19481943      </p>
    1949       <div id="rfc.figure.u.28"></div><pre class="inline"><span id="rfc.iref.g.29"></span>  <a href="#header.accept-charset" class="smpl">Accept-Charset</a> = 1#( ( <a href="#charset" class="smpl">charset</a> / "*" ) [ <a href="#quality.values" class="smpl">weight</a> ] )
     1944      <div id="rfc.figure.u.29"></div><pre class="inline"><span id="rfc.iref.g.25"></span>  <a href="#header.accept-charset" class="smpl">Accept-Charset</a> = 1#( ( <a href="#charset" class="smpl">charset</a> / "*" ) [ <a href="#quality.values" class="smpl">weight</a> ] )
    19501945</pre><p id="rfc.section.5.3.3.p.3">Charset names are defined in <a href="#charset" title="Charset">Section&nbsp;3.1.1.2</a>. A user agent <em class="bcp14">MAY</em> associate a quality value with each charset to indicate the user's relative preference for that charset, as defined in <a href="#quality.values" title="Quality Values">Section&nbsp;5.3.1</a>. An example is
    19511946      </p>
    1952       <div id="rfc.figure.u.29"></div><pre class="text">  Accept-Charset: iso-8859-5, unicode-1-1;q=0.8
     1947      <div id="rfc.figure.u.30"></div><pre class="text">  Accept-Charset: iso-8859-5, unicode-1-1;q=0.8
    19531948</pre><p id="rfc.section.5.3.3.p.5">The special value "*", if present in the Accept-Charset field, matches every charset that is not mentioned elsewhere in the
    19541949         Accept-Charset field. If no "*" is present in an Accept-Charset field, then any charsets not explicitly mentioned in the field
     
    19671962         no encoding is preferred.
    19681963      </p>
    1969       <div id="rfc.figure.u.30"></div><pre class="inline"><span id="rfc.iref.g.30"></span><span id="rfc.iref.g.31"></span>  <a href="#header.accept-encoding" class="smpl">Accept-Encoding</a>  = #( <a href="#header.accept-encoding" class="smpl">codings</a> [ <a href="#quality.values" class="smpl">weight</a> ] )
     1964      <div id="rfc.figure.u.31"></div><pre class="inline"><span id="rfc.iref.g.26"></span><span id="rfc.iref.g.27"></span>  <a href="#header.accept-encoding" class="smpl">Accept-Encoding</a>  = #( <a href="#header.accept-encoding" class="smpl">codings</a> [ <a href="#quality.values" class="smpl">weight</a> ] )
    19701965  <a href="#header.accept-encoding" class="smpl">codings</a>          = <a href="#content.codings" class="smpl">content-coding</a> / "identity" / "*"
    19711966</pre><p id="rfc.section.5.3.4.p.3">Each codings value <em class="bcp14">MAY</em> be given an associated quality value representing the preference for that encoding, as defined in <a href="#quality.values" title="Quality Values">Section&nbsp;5.3.1</a>. The asterisk "*" symbol in an Accept-Encoding field matches any available content-coding not explicitly listed in the header
     
    19731968      </p>
    19741969      <p id="rfc.section.5.3.4.p.4">For example,</p>
    1975       <div id="rfc.figure.u.31"></div><pre class="text">  Accept-Encoding: compress, gzip
     1970      <div id="rfc.figure.u.32"></div><pre class="text">  Accept-Encoding: compress, gzip
    19761971  Accept-Encoding:
    19771972  Accept-Encoding: *
     
    20072002         in the response. Language tags are defined in <a href="#language.tags" title="Language Tags">Section&nbsp;3.1.3.1</a>.
    20082003      </p>
    2009       <div id="rfc.figure.u.32"></div><pre class="inline"><span id="rfc.iref.g.32"></span><span id="rfc.iref.g.33"></span>  <a href="#header.accept-language" class="smpl">Accept-Language</a> = 1#( <a href="#header.accept-language" class="smpl">language-range</a> [ <a href="#quality.values" class="smpl">weight</a> ] )
     2004      <div id="rfc.figure.u.33"></div><pre class="inline"><span id="rfc.iref.g.28"></span><span id="rfc.iref.g.29"></span>  <a href="#header.accept-language" class="smpl">Accept-Language</a> = 1#( <a href="#header.accept-language" class="smpl">language-range</a> [ <a href="#quality.values" class="smpl">weight</a> ] )
    20102005  <a href="#header.accept-language" class="smpl">language-range</a>  =
    20112006            &lt;language-range, defined in <a href="#RFC4647" id="rfc.xref.RFC4647.1"><cite title="Matching of Language Tags">[RFC4647]</cite></a>, <a href="http://tools.ietf.org/html/rfc4647#section-2.1">Section 2.1</a>&gt;
     
    20132008         specified by that range, as defined in <a href="#quality.values" title="Quality Values">Section&nbsp;5.3.1</a>. For example,
    20142009      </p>
    2015       <div id="rfc.figure.u.33"></div><pre class="text">  Accept-Language: da, en-gb;q=0.8, en;q=0.7
     2010      <div id="rfc.figure.u.34"></div><pre class="text">  Accept-Language: da, en-gb;q=0.8, en;q=0.7
    20162011</pre><p id="rfc.section.5.3.5.p.5">would mean: "I prefer Danish, but will accept British English and other types of English".</p>
    20172012      <p id="rfc.section.5.3.5.p.6">A request without any Accept-Language header field implies that the user agent will accept any language in response. If the
     
    20982093         ought to be machine-usable, as defined by "mailbox" in <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.1"><cite title="Internet Message Format">[RFC5322]</cite></a>:
    20992094      </p>
    2100       <div id="rfc.figure.u.34"></div><pre class="inline"><span id="rfc.iref.g.34"></span>  <a href="#header.from" class="smpl">From</a>    = <a href="#header.from" class="smpl">mailbox</a>
     2095      <div id="rfc.figure.u.35"></div><pre class="inline"><span id="rfc.iref.g.30"></span>  <a href="#header.from" class="smpl">From</a>    = <a href="#header.from" class="smpl">mailbox</a>
    21012096 
    21022097  <a href="#header.from" class="smpl">mailbox</a> = &lt;mailbox, defined in <a href="#RFC5322" id="rfc.xref.RFC5322.2"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a>&gt;
    21032098</pre><p id="rfc.section.5.5.1.p.3">An example is:</p>
    2104       <div id="rfc.figure.u.35"></div><pre class="text">  From: webmaster@example.org
     2099      <div id="rfc.figure.u.36"></div><pre class="text">  From: webmaster@example.org
    21052100</pre><p id="rfc.section.5.5.1.p.5">The From header field is rarely sent by non-robotic user agents. A user agent <em class="bcp14">SHOULD NOT</em> send a From header field without explicit configuration by the user, since that might conflict with the user's privacy interests
    21062101         or their site's security policy.
     
    21162111      <p id="rfc.section.5.5.2.p.1">The "Referer" [sic] header field allows the user agent to specify a URI reference for the resource from which the <a href="p1-messaging.html#target-resource" class="smpl">target URI</a> was obtained (i.e., the "referrer", though the field name is misspelled). A user agent <em class="bcp14">MUST NOT</em> include the fragment and userinfo components of the URI reference <a href="#RFC3986" id="rfc.xref.RFC3986.1"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, if any, when generating the Referer field value.
    21172112      </p>
    2118       <div id="rfc.figure.u.36"></div><pre class="inline"><span id="rfc.iref.g.35"></span>  <a href="#header.referer" class="smpl">Referer</a> = <a href="#imported.abnf" class="smpl">absolute-URI</a> / <a href="#imported.abnf" class="smpl">partial-URI</a>
     2113      <div id="rfc.figure.u.37"></div><pre class="inline"><span id="rfc.iref.g.31"></span>  <a href="#header.referer" class="smpl">Referer</a> = <a href="#imported.abnf" class="smpl">absolute-URI</a> / <a href="#imported.abnf" class="smpl">partial-URI</a>
    21192114</pre><p id="rfc.section.5.5.2.p.3">Referer allows servers to generate back-links to other resources for simple analytics, logging, optimized caching, etc. It
    21202115         also allows obsolete or mistyped links to be found for maintenance. Some servers use Referer as a means of denying links from
     
    21232118      </p>
    21242119      <p id="rfc.section.5.5.2.p.4">Example:</p>
    2125       <div id="rfc.figure.u.37"></div><pre class="text">  Referer: http://www.example.org/hypertext/Overview.html
     2120      <div id="rfc.figure.u.38"></div><pre class="text">  Referer: http://www.example.org/hypertext/Overview.html
    21262121</pre><p id="rfc.section.5.5.2.p.6">If the target URI was obtained from a source that does not have its own URI (e.g., input from the user keyboard, or an entry
    21272122         within the user's bookmarks/favorites), the user agent <em class="bcp14">MUST</em> either exclude Referer or send it with a value of "about:blank".
     
    21442139         agent limitations, and for analytics regarding browser or operating system use. A user agent <em class="bcp14">SHOULD</em> send a User-Agent field in each request unless specifically configured not to do so.
    21452140      </p>
    2146       <div id="rfc.figure.u.38"></div><pre class="inline"><span id="rfc.iref.g.36"></span>  <a href="#header.user-agent" class="smpl">User-Agent</a> = <a href="#header.user-agent" class="smpl">product</a> *( <a href="#imported.abnf" class="smpl">RWS</a> ( <a href="#header.user-agent" class="smpl">product</a> / <a href="#imported.abnf" class="smpl">comment</a> ) )
     2141      <div id="rfc.figure.u.39"></div><pre class="inline"><span id="rfc.iref.g.32"></span>  <a href="#header.user-agent" class="smpl">User-Agent</a> = <a href="#header.user-agent" class="smpl">product</a> *( <a href="#imported.abnf" class="smpl">RWS</a> ( <a href="#header.user-agent" class="smpl">product</a> / <a href="#imported.abnf" class="smpl">comment</a> ) )
    21472142</pre><p id="rfc.section.5.5.3.p.3">The User-Agent field-value consists of one or more product identifiers, each followed by zero or more comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.22"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>), which together identify the user agent software and its significant subproducts. By convention, the product identifiers
    21482143         are listed in decreasing order of their significance for identifying the user agent software. Each product identifier consists
    21492144         of a name and optional version.
    21502145      </p>
    2151       <div id="rfc.figure.u.39"></div><pre class="inline"><span id="rfc.iref.g.37"></span><span id="rfc.iref.g.38"></span>  <a href="#header.user-agent" class="smpl">product</a>         = <a href="#imported.abnf" class="smpl">token</a> ["/" <a href="#header.user-agent" class="smpl">product-version</a>]
     2146      <div id="rfc.figure.u.40"></div><pre class="inline"><span id="rfc.iref.g.33"></span><span id="rfc.iref.g.34"></span>  <a href="#header.user-agent" class="smpl">product</a>         = <a href="#imported.abnf" class="smpl">token</a> ["/" <a href="#header.user-agent" class="smpl">product-version</a>]
    21522147  <a href="#header.user-agent" class="smpl">product-version</a> = <a href="#imported.abnf" class="smpl">token</a>
    21532148</pre><p id="rfc.section.5.5.3.p.5">Senders <em class="bcp14">SHOULD</em> limit generated product identifiers to what is necessary to identify the product; senders <em class="bcp14">MUST NOT</em> generate advertising or other non-essential information within the product identifier. Senders <em class="bcp14">SHOULD NOT</em> generate information in <a href="#header.user-agent" class="smpl">product-version</a> that is not a version identifier (i.e., successive versions of the same product name ought to only differ in the product-version
     
    21552150      </p>
    21562151      <p id="rfc.section.5.5.3.p.6">Example:</p>
    2157       <div id="rfc.figure.u.40"></div><pre class="text">  User-Agent: CERN-LineMode/2.15 libwww/2.17b3
     2152      <div id="rfc.figure.u.41"></div><pre class="text">  User-Agent: CERN-LineMode/2.15 libwww/2.17b3
    21582153</pre><p id="rfc.section.5.5.3.p.8">A user agent <em class="bcp14">SHOULD NOT</em> generate a User-Agent field containing needlessly fine-grained detail and <em class="bcp14">SHOULD</em> limit the addition of subproducts by third parties. Overly long and detailed User-Agent field values increase request latency
    21592154         and the risk of a user being identified against their wishes ("fingerprinting").
     
    24182413      </p>
    24192414      <h2 id="rfc.section.6.2"><a href="#rfc.section.6.2">6.2</a>&nbsp;<a id="status.1xx" href="#status.1xx">Informational 1xx</a></h2>
    2420       <div id="rfc.iref.72"></div>
     2415      <div id="rfc.iref.67"></div>
    24212416      <div id="rfc.iref.s.3"></div>
    24222417      <p id="rfc.section.6.2.p.1">The <dfn>1xx (Informational)</dfn> class of status code indicates an interim response for communicating connection status or request progress prior to completing
     
    24312426         "Expect: 100-continue" field when it forwards a request, then it need not forward the corresponding <a href="#status.100" class="smpl">100 (Continue)</a> response(s).
    24322427      </p>
    2433       <div id="rfc.iref.73"></div>
     2428      <div id="rfc.iref.68"></div>
    24342429      <h3 id="rfc.section.6.2.1"><a href="#rfc.section.6.2.1">6.2.1</a>&nbsp;<a id="status.100" href="#status.100">100 Continue</a></h3>
    24352430      <p id="rfc.section.6.2.1.p.1">The <dfn>100 (Continue)</dfn> status code indicates that the initial part of a request has been received and has not yet been rejected by the server. The
    24362431         server intends to send a final response after the request has been fully received and acted upon.
    24372432      </p>
    2438       <p id="rfc.section.6.2.1.p.2">When the request contains an <a href="#header.expect" class="smpl">Expect</a> header field that includes a <a href="#expect-100-continue" class="smpl">100-continue</a> expectation, the 100 response indicates that the server wishes to receive the request payload body, as described in <a href="#expect-100-continue" title="100-continue Expectation">Section&nbsp;5.1.1.1</a>. The client ought to continue sending the request and discard the 100 response.
    2439       </p>
    2440       <p id="rfc.section.6.2.1.p.3">If the request did not contain an <a href="#header.expect" class="smpl">Expect</a> header field containing the <a href="#expect-100-continue" class="smpl">100-continue</a> expectation, the client can simply discard this interim response.
    2441       </p>
    2442       <div id="rfc.iref.73"></div>
     2433      <p id="rfc.section.6.2.1.p.2">When the request contains an <a href="#header.expect" class="smpl">Expect</a> header field that includes a <a href="#header.expect" class="smpl">100-continue</a> expectation, the 100 response indicates that the server wishes to receive the request payload body, as described in <a href="#header.expect" id="rfc.xref.header.expect.2" title="Expect">Section&nbsp;5.1.1</a>. The client ought to continue sending the request and discard the 100 response.
     2434      </p>
     2435      <p id="rfc.section.6.2.1.p.3">If the request did not contain an <a href="#header.expect" class="smpl">Expect</a> header field containing the <a href="#header.expect" class="smpl">100-continue</a> expectation, the client can simply discard this interim response.
     2436      </p>
     2437      <div id="rfc.iref.68"></div>
    24432438      <h3 id="rfc.section.6.2.2"><a href="#rfc.section.6.2.2">6.2.2</a>&nbsp;<a id="status.101" href="#status.101">101 Switching Protocols</a></h3>
    24442439      <p id="rfc.section.6.2.2.p.1">The <dfn>101 (Switching Protocols)</dfn> status code indicates that the server understands and is willing to comply with the client's request, via the <a href="p1-messaging.html#header.upgrade" class="smpl">Upgrade</a> header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 6.7</a> of <a href="#Part1" id="rfc.xref.Part1.23"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>), for a change in the application protocol being used on this connection. The server <em class="bcp14">MUST</em> generate an Upgrade header field in the response that indicates which protocol(s) will be switched to immediately after the
     
    24502445      </p>
    24512446      <h2 id="rfc.section.6.3"><a href="#rfc.section.6.3">6.3</a>&nbsp;<a id="status.2xx" href="#status.2xx">Successful 2xx</a></h2>
    2452       <div id="rfc.iref.73"></div>
     2447      <div id="rfc.iref.68"></div>
    24532448      <div id="rfc.iref.s.4"></div>
    24542449      <p id="rfc.section.6.3.p.1">The <dfn>2xx (Successful)</dfn> class of status code indicates that the client's request was successfully received, understood, and accepted.
    24552450      </p>
    2456       <div id="rfc.iref.74"></div>
     2451      <div id="rfc.iref.69"></div>
    24572452      <h3 id="rfc.section.6.3.1"><a href="#rfc.section.6.3.1">6.3.1</a>&nbsp;<a id="status.200" href="#status.200">200 OK</a></h3>
    24582453      <p id="rfc.section.6.3.1.p.1">The <dfn>200 (OK)</dfn> status code indicates that the request has succeeded. The payload sent in a 200 response depends on the request method. For
     
    24792474      <p id="rfc.section.6.3.1.p.3">A 200 response is cacheable unless otherwise indicated by the method definition or explicit cache controls (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.2.2</a> of <a href="#Part6" id="rfc.xref.Part6.11"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Caching">[Part6]</cite></a>).
    24802475      </p>
    2481       <div id="rfc.iref.74"></div>
     2476      <div id="rfc.iref.69"></div>
    24822477      <h3 id="rfc.section.6.3.2"><a href="#rfc.section.6.3.2">6.3.2</a>&nbsp;<a id="status.201" href="#status.201">201 Created</a></h3>
    24832478      <p id="rfc.section.6.3.2.p.1">The <dfn>201 (Created)</dfn> status code indicates that the request has been fulfilled and has resulted in one or more new resources being created. The
     
    24862481      <p id="rfc.section.6.3.2.p.2">The 201 response payload typically describes and links to the resource(s) created. See <a href="#response.validator" title="Validator Header Fields">Section&nbsp;7.2</a> for a discussion of the meaning and purpose of validator header fields, such as <a href="p4-conditional.html#header.etag" class="smpl">ETag</a> and <a href="p4-conditional.html#header.last-modified" class="smpl">Last-Modified</a>, in a 201 response.
    24872482      </p>
    2488       <div id="rfc.iref.74"></div>
     2483      <div id="rfc.iref.69"></div>
    24892484      <h3 id="rfc.section.6.3.3"><a href="#rfc.section.6.3.3">6.3.3</a>&nbsp;<a id="status.202" href="#status.202">202 Accepted</a></h3>
    24902485      <p id="rfc.section.6.3.3.p.1">The <dfn>202 (Accepted)</dfn> status code indicates that the request has been accepted for processing, but the processing has not been completed. The request
     
    24982493         be fulfilled.
    24992494      </p>
    2500       <div id="rfc.iref.74"></div>
     2495      <div id="rfc.iref.69"></div>
    25012496      <h3 id="rfc.section.6.3.4"><a href="#rfc.section.6.3.4">6.3.4</a>&nbsp;<a id="status.203" href="#status.203">203 Non-Authoritative Information</a></h3>
    25022497      <p id="rfc.section.6.3.4.p.1">The <dfn>203 (Non-Authoritative Information)</dfn> status code indicates that the request was successful but the enclosed payload has been modified from that of the origin server's <a href="#status.200" class="smpl">200 (OK)</a> response by a transforming proxy (<a href="p1-messaging.html#message.transformations" title="Transformations">Section 5.7.2</a> of <a href="#Part1" id="rfc.xref.Part1.24"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>). This status code allows the proxy to notify recipients when a transformation has been applied, since that knowledge might
     
    25082503      <p id="rfc.section.6.3.4.p.3">A 203 response is cacheable unless otherwise indicated by the method definition or explicit cache controls (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.2.2</a> of <a href="#Part6" id="rfc.xref.Part6.13"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Caching">[Part6]</cite></a>).
    25092504      </p>
    2510       <div id="rfc.iref.74"></div>
     2505      <div id="rfc.iref.69"></div>
    25112506      <h3 id="rfc.section.6.3.5"><a href="#rfc.section.6.3.5">6.3.5</a>&nbsp;<a id="status.204" href="#status.204">204 No Content</a></h3>
    25122507      <p id="rfc.section.6.3.5.p.1">The <dfn>204 (No Content)</dfn> status code indicates that the server has successfully fulfilled the request and that there is no additional content to send
     
    25282523      <p id="rfc.section.6.3.5.p.6">A 204 response is cacheable unless otherwise indicated by the method definition or explicit cache controls (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.2.2</a> of <a href="#Part6" id="rfc.xref.Part6.14"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Caching">[Part6]</cite></a>).
    25292524      </p>
    2530       <div id="rfc.iref.74"></div>
     2525      <div id="rfc.iref.69"></div>
    25312526      <h3 id="rfc.section.6.3.6"><a href="#rfc.section.6.3.6">6.3.6</a>&nbsp;<a id="status.205" href="#status.205">205 Reset Content</a></h3>
    25322527      <p id="rfc.section.6.3.6.p.1">The <dfn>205 (Reset Content)</dfn> status code indicates that the server has fulfilled the request and desires that the user agent reset the "document view",
     
    25412536      </p>
    25422537      <h2 id="rfc.section.6.4"><a href="#rfc.section.6.4">6.4</a>&nbsp;<a id="status.3xx" href="#status.3xx">Redirection 3xx</a></h2>
    2543       <div id="rfc.iref.74"></div>
     2538      <div id="rfc.iref.69"></div>
    25442539      <div id="rfc.iref.s.5"></div>
    25452540      <p id="rfc.section.6.4.p.1">The <dfn>3xx (Redirection)</dfn> class of status code indicates that further action needs to be taken by the user agent in order to fulfill the request. If
     
    25782573         </p>
    25792574      </div>
    2580       <div id="rfc.iref.75"></div>
     2575      <div id="rfc.iref.70"></div>
    25812576      <h3 id="rfc.section.6.4.1"><a href="#rfc.section.6.4.1">6.4.1</a>&nbsp;<a id="status.300" href="#status.300">300 Multiple Choices</a></h3>
    25822577      <p id="rfc.section.6.4.1.p.1">The <dfn>300 (Multiple Choices)</dfn> status code indicates that the <a href="#resources" class="smpl">target resource</a> has more than one representation, each with its own more specific identifier, and information about the alternatives is being
     
    26002595         </p>
    26012596      </div>
    2602       <div id="rfc.iref.75"></div>
     2597      <div id="rfc.iref.70"></div>
    26032598      <h3 id="rfc.section.6.4.2"><a href="#rfc.section.6.4.2">6.4.2</a>&nbsp;<a id="status.301" href="#status.301">301 Moved Permanently</a></h3>
    26042599      <p id="rfc.section.6.4.2.p.1">The <dfn>301 (Moved Permanently)</dfn> status code indicates that the <a href="#resources" class="smpl">target resource</a> has been assigned a new permanent URI and any future references to this resource ought to use one of the enclosed URIs. Clients
     
    26152610      <p id="rfc.section.6.4.2.p.4">A 301 response is cacheable unless otherwise indicated by the method definition or explicit cache controls (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.2.2</a> of <a href="#Part6" id="rfc.xref.Part6.16"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Caching">[Part6]</cite></a>).
    26162611      </p>
    2617       <div id="rfc.iref.75"></div>
     2612      <div id="rfc.iref.70"></div>
    26182613      <h3 id="rfc.section.6.4.3"><a href="#rfc.section.6.4.3">6.4.3</a>&nbsp;<a id="status.302" href="#status.302">302 Found</a></h3>
    26192614      <p id="rfc.section.6.4.3.p.1">The <dfn>302 (Found)</dfn> status code indicates that the target resource resides temporarily under a different URI. Since the redirection might be altered
     
    26272622         </p>
    26282623      </div>
    2629       <div id="rfc.iref.75"></div>
     2624      <div id="rfc.iref.70"></div>
    26302625      <h3 id="rfc.section.6.4.4"><a href="#rfc.section.6.4.4">6.4.4</a>&nbsp;<a id="status.303" href="#status.303">303 See Other</a></h3>
    26312626      <p id="rfc.section.6.4.4.p.1">The <dfn>303 (See Other)</dfn> status code indicates that the server is redirecting the user agent to a different resource, as indicated by a URI in the <a href="#header.location" class="smpl">Location</a> header field, that is intended to provide an indirect response to the original request. In order to satisfy the original request,
     
    26462641         a hyperlink to the same URI reference provided in the <a href="#header.location" class="smpl">Location</a> header field.
    26472642      </p>
    2648       <div id="rfc.iref.75"></div>
     2643      <div id="rfc.iref.70"></div>
    26492644      <h3 id="rfc.section.6.4.5"><a href="#rfc.section.6.4.5">6.4.5</a>&nbsp;<a id="status.305" href="#status.305">305 Use Proxy</a></h3>
    26502645      <p id="rfc.section.6.4.5.p.1">The <dfn>305 (Use Proxy)</dfn> status code was defined in a previous version of this specification and is now deprecated (<a href="#changes.from.rfc.2616" title="Changes from RFC 2616">Appendix&nbsp;B</a>).
    26512646      </p>
    2652       <div id="rfc.iref.75"></div>
     2647      <div id="rfc.iref.70"></div>
    26532648      <h3 id="rfc.section.6.4.6"><a href="#rfc.section.6.4.6">6.4.6</a>&nbsp;<a id="status.306" href="#status.306">306 (Unused)</a></h3>
    26542649      <p id="rfc.section.6.4.6.p.1">The 306 status code was defined in a previous version of this specification, is no longer used, and the code is reserved.</p>
    2655       <div id="rfc.iref.75"></div>
     2650      <div id="rfc.iref.70"></div>
    26562651      <h3 id="rfc.section.6.4.7"><a href="#rfc.section.6.4.7">6.4.7</a>&nbsp;<a id="status.307" href="#status.307">307 Temporary Redirect</a></h3>
    26572652      <p id="rfc.section.6.4.7.p.1">The <dfn>307 (Temporary Redirect)</dfn> status code indicates that the <a href="#resources" class="smpl">target resource</a> resides temporarily under a different URI and the user agent <em class="bcp14">MUST NOT</em> change the request method if it performs an automatic redirection to that URI. Since the redirection can change over time,
     
    26682663      </div>
    26692664      <h2 id="rfc.section.6.5"><a href="#rfc.section.6.5">6.5</a>&nbsp;<a id="status.4xx" href="#status.4xx">Client Error 4xx</a></h2>
    2670       <div id="rfc.iref.75"></div>
     2665      <div id="rfc.iref.70"></div>
    26712666      <div id="rfc.iref.s.6"></div>
    26722667      <p id="rfc.section.6.5.p.1">The <dfn>4xx (Client Error)</dfn> class of status code indicates that the client seems to have erred. Except when responding to a HEAD request, the server <em class="bcp14">SHOULD</em> send a representation containing an explanation of the error situation, and whether it is a temporary or permanent condition.
    26732668         These status codes are applicable to any request method. User agents <em class="bcp14">SHOULD</em> display any included representation to the user.
    26742669      </p>
    2675       <div id="rfc.iref.76"></div>
     2670      <div id="rfc.iref.71"></div>
    26762671      <h3 id="rfc.section.6.5.1"><a href="#rfc.section.6.5.1">6.5.1</a>&nbsp;<a id="status.400" href="#status.400">400 Bad Request</a></h3>
    26772672      <p id="rfc.section.6.5.1.p.1">The <dfn>400 (Bad Request)</dfn> status code indicates that the server cannot or will not process the request due to something which is perceived to be a client
    26782673         error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing).
    26792674      </p>
    2680       <div id="rfc.iref.76"></div>
     2675      <div id="rfc.iref.71"></div>
    26812676      <h3 id="rfc.section.6.5.2"><a href="#rfc.section.6.5.2">6.5.2</a>&nbsp;<a id="status.402" href="#status.402">402 Payment Required</a></h3>
    26822677      <p id="rfc.section.6.5.2.p.1">The <dfn>402 (Payment Required)</dfn> status code is reserved for future use.
    26832678      </p>
    2684       <div id="rfc.iref.76"></div>
     2679      <div id="rfc.iref.71"></div>
    26852680      <h3 id="rfc.section.6.5.3"><a href="#rfc.section.6.5.3">6.5.3</a>&nbsp;<a id="status.403" href="#status.403">403 Forbidden</a></h3>
    26862681      <p id="rfc.section.6.5.3.p.1">The <dfn>403 (Forbidden)</dfn> status code indicates that the server understood the request but refuses to authorize it. A server that wishes to make public
     
    26912686      <p id="rfc.section.6.5.3.p.3">An origin server that wishes to "hide" the current existence of a forbidden <a href="#resources" class="smpl">target resource</a> <em class="bcp14">MAY</em> instead respond with a status code of <a href="#status.404" class="smpl">404 (Not Found)</a>.
    26922687      </p>
    2693       <div id="rfc.iref.76"></div>
     2688      <div id="rfc.iref.71"></div>
    26942689      <h3 id="rfc.section.6.5.4"><a href="#rfc.section.6.5.4">6.5.4</a>&nbsp;<a id="status.404" href="#status.404">404 Not Found</a></h3>
    26952690      <p id="rfc.section.6.5.4.p.1">The <dfn>404 (Not Found)</dfn> status code indicates that the origin server did not find a current representation for the <a href="#resources" class="smpl">target resource</a> or is not willing to disclose that one exists. A 404 status does not indicate whether this lack of representation is temporary
     
    26992694      <p id="rfc.section.6.5.4.p.2">A 404 response is cacheable unless otherwise indicated by the method definition or explicit cache controls (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.2.2</a> of <a href="#Part6" id="rfc.xref.Part6.17"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Caching">[Part6]</cite></a>).
    27002695      </p>
    2701       <div id="rfc.iref.76"></div>
     2696      <div id="rfc.iref.71"></div>
    27022697      <h3 id="rfc.section.6.5.5"><a href="#rfc.section.6.5.5">6.5.5</a>&nbsp;<a id="status.405" href="#status.405">405 Method Not Allowed</a></h3>
    27032698      <p id="rfc.section.6.5.5.p.1">The <dfn>405 (Method Not Allowed)</dfn> status code indicates that the method specified in the request-line is known by the origin server but not supported by the <a href="#resources" class="smpl">target resource</a>. The origin server <em class="bcp14">MUST</em> generate an <a href="#header.allow" class="smpl">Allow</a> header field in a 405 response containing a list of the target resource's currently supported methods.
     
    27052700      <p id="rfc.section.6.5.5.p.2">A 405 response is cacheable unless otherwise indicated by the method definition or explicit cache controls (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.2.2</a> of <a href="#Part6" id="rfc.xref.Part6.18"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Caching">[Part6]</cite></a>).
    27062701      </p>
    2707       <div id="rfc.iref.76"></div>
     2702      <div id="rfc.iref.71"></div>
    27082703      <h3 id="rfc.section.6.5.6"><a href="#rfc.section.6.5.6">6.5.6</a>&nbsp;<a id="status.406" href="#status.406">406 Not Acceptable</a></h3>
    27092704      <p id="rfc.section.6.5.6.p.1">The <dfn>406 (Not Acceptable)</dfn> status code indicates that the <a href="#resources" class="smpl">target resource</a> does not have a current representation that would be acceptable to the user agent, according to the <a href="#proactive.negotiation" class="smpl">proactive negotiation</a> header fields received in the request (<a href="#request.conneg" title="Content Negotiation">Section&nbsp;5.3</a>), and the server is unwilling to supply a default representation.
     
    27132708         for such automatic selection, as described in <a href="#status.300" id="rfc.xref.status.300.2" title="300 Multiple Choices">Section&nbsp;6.4.1</a>.
    27142709      </p>
    2715       <div id="rfc.iref.76"></div>
     2710      <div id="rfc.iref.71"></div>
    27162711      <h3 id="rfc.section.6.5.7"><a href="#rfc.section.6.5.7">6.5.7</a>&nbsp;<a id="status.408" href="#status.408">408 Request Timeout</a></h3>
    27172712      <p id="rfc.section.6.5.7.p.1">The <dfn>408 (Request Timeout)</dfn> status code indicates that the server did not receive a complete request message within the time that it was prepared to wait.
     
    27192714         the client has an outstanding request in transit, the client <em class="bcp14">MAY</em> repeat that request on a new connection.
    27202715      </p>
    2721       <div id="rfc.iref.76"></div>
     2716      <div id="rfc.iref.71"></div>
    27222717      <h3 id="rfc.section.6.5.8"><a href="#rfc.section.6.5.8">6.5.8</a>&nbsp;<a id="status.409" href="#status.409">409 Conflict</a></h3>
    27232718      <p id="rfc.section.6.5.8.p.1">The <dfn>409 (Conflict)</dfn> status code indicates that the request could not be completed due to a conflict with the current state of the target resource.
     
    27292724         contain information useful for merging the differences based on the revision history.
    27302725      </p>
    2731       <div id="rfc.iref.76"></div>
     2726      <div id="rfc.iref.71"></div>
    27322727      <h3 id="rfc.section.6.5.9"><a href="#rfc.section.6.5.9">6.5.9</a>&nbsp;<a id="status.410" href="#status.410">410 Gone</a></h3>
    27332728      <p id="rfc.section.6.5.9.p.1">The <dfn>410 (Gone)</dfn> status code indicates that access to the <a href="#resources" class="smpl">target resource</a> is no longer available at the origin server and that this condition is likely to be permanent. If the origin server does not
     
    27422737      <p id="rfc.section.6.5.9.p.3">A 410 response is cacheable unless otherwise indicated by the method definition or explicit cache controls (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.2.2</a> of <a href="#Part6" id="rfc.xref.Part6.19"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Caching">[Part6]</cite></a>).
    27432738      </p>
    2744       <div id="rfc.iref.76"></div>
     2739      <div id="rfc.iref.71"></div>
    27452740      <h3 id="rfc.section.6.5.10"><a href="#rfc.section.6.5.10">6.5.10</a>&nbsp;<a id="status.411" href="#status.411">411 Length Required</a></h3>
    27462741      <p id="rfc.section.6.5.10.p.1">The <dfn>411 (Length Required)</dfn> status code indicates that the server refuses to accept the request without a defined <a href="p1-messaging.html#header.content-length" class="smpl">Content-Length</a> (<a href="p1-messaging.html#header.content-length" title="Content-Length">Section 3.3.2</a> of <a href="#Part1" id="rfc.xref.Part1.26"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>). The client <em class="bcp14">MAY</em> repeat the request if it adds a valid Content-Length header field containing the length of the message body in the request
    27472742         message.
    27482743      </p>
    2749       <div id="rfc.iref.76"></div>
     2744      <div id="rfc.iref.71"></div>
    27502745      <h3 id="rfc.section.6.5.11"><a href="#rfc.section.6.5.11">6.5.11</a>&nbsp;<a id="status.413" href="#status.413">413 Payload Too Large</a></h3>
    27512746      <p id="rfc.section.6.5.11.p.1">The <dfn>413 (Payload Too Large)</dfn> status code indicates that the server is refusing to process a request because the request payload is larger than the server
     
    27542749      <p id="rfc.section.6.5.11.p.2">If the condition is temporary, the server <em class="bcp14">SHOULD</em> generate a <a href="#header.retry-after" class="smpl">Retry-After</a> header field to indicate that it is temporary and after what time the client <em class="bcp14">MAY</em> try again.
    27552750      </p>
    2756       <div id="rfc.iref.76"></div>
     2751      <div id="rfc.iref.71"></div>
    27572752      <h3 id="rfc.section.6.5.12"><a href="#rfc.section.6.5.12">6.5.12</a>&nbsp;<a id="status.414" href="#status.414">414 URI Too Long</a></h3>
    27582753      <p id="rfc.section.6.5.12.p.1">The <dfn>414 (URI Too Long)</dfn> status code indicates that the server is refusing to service the request because the request-target (<a href="p1-messaging.html#request-target" title="Request Target">Section 5.3</a> of <a href="#Part1" id="rfc.xref.Part1.27"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>) is longer than the server is willing to interpret. This rare condition is only likely to occur when a client has improperly
     
    27632758      <p id="rfc.section.6.5.12.p.2">A 414 response is cacheable unless otherwise indicated by the method definition or explicit cache controls (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.2.2</a> of <a href="#Part6" id="rfc.xref.Part6.20"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Caching">[Part6]</cite></a>).
    27642759      </p>
    2765       <div id="rfc.iref.76"></div>
     2760      <div id="rfc.iref.71"></div>
    27662761      <h3 id="rfc.section.6.5.13"><a href="#rfc.section.6.5.13">6.5.13</a>&nbsp;<a id="status.415" href="#status.415">415 Unsupported Media Type</a></h3>
    27672762      <p id="rfc.section.6.5.13.p.1">The <dfn>415 (Unsupported Media Type)</dfn> status code indicates that the origin server is refusing to service the request because the payload is in a format not supported
    27682763         by the <a href="#resources" class="smpl">target resource</a> for this method. The format problem might be due to the request's indicated <a href="#header.content-type" class="smpl">Content-Type</a> or <a href="#header.content-encoding" class="smpl">Content-Encoding</a>, or as a result of inspecting the data directly.
    27692764      </p>
    2770       <div id="rfc.iref.76"></div>
     2765      <div id="rfc.iref.71"></div>
    27712766      <h3 id="rfc.section.6.5.14"><a href="#rfc.section.6.5.14">6.5.14</a>&nbsp;<a id="status.417" href="#status.417">417 Expectation Failed</a></h3>
    2772       <p id="rfc.section.6.5.14.p.1">The <dfn>417 (Expectation Failed)</dfn> status code indicates that the expectation given in the request's <a href="#header.expect" class="smpl">Expect</a> header field (<a href="#header.expect" id="rfc.xref.header.expect.2" title="Expect">Section&nbsp;5.1.1</a>) could not be met by at least one of the inbound servers.
    2773       </p>
    2774       <div id="rfc.iref.76"></div>
     2767      <p id="rfc.section.6.5.14.p.1">The <dfn>417 (Expectation Failed)</dfn> status code indicates that the expectation given in the request's <a href="#header.expect" class="smpl">Expect</a> header field (<a href="#header.expect" id="rfc.xref.header.expect.3" title="Expect">Section&nbsp;5.1.1</a>) could not be met by at least one of the inbound servers.
     2768      </p>
     2769      <div id="rfc.iref.71"></div>
    27752770      <h3 id="rfc.section.6.5.15"><a href="#rfc.section.6.5.15">6.5.15</a>&nbsp;<a id="status.426" href="#status.426">426 Upgrade Required</a></h3>
    27762771      <p id="rfc.section.6.5.15.p.1">The <dfn>426 (Upgrade Required)</dfn> status code indicates that the server refuses to perform the request using the current protocol but might be willing to do
    27772772         so after the client upgrades to a different protocol. The server <em class="bcp14">MUST</em> send an <a href="p1-messaging.html#header.upgrade" class="smpl">Upgrade</a> header field in a 426 response to indicate the required protocol(s) (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 6.7</a> of <a href="#Part1" id="rfc.xref.Part1.28"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>).
    27782773      </p>
    2779       <div id="rfc.figure.u.41"></div>
     2774      <div id="rfc.figure.u.42"></div>
    27802775      <p>Example:</p><pre class="text">HTTP/1.1 426 Upgrade Required
    27812776Upgrade: HTTP/3.0
     
    27862781<span id="s426body">This service requires use of the HTTP/3.0 protocol.
    27872782</span></pre><h2 id="rfc.section.6.6"><a href="#rfc.section.6.6">6.6</a>&nbsp;<a id="status.5xx" href="#status.5xx">Server Error 5xx</a></h2>
    2788       <div id="rfc.iref.76"></div>
     2783      <div id="rfc.iref.71"></div>
    27892784      <div id="rfc.iref.s.7"></div>
    27902785      <p id="rfc.section.6.6.p.1">The <dfn>5xx (Server Error)</dfn> class of status code indicates that the server is aware that it has erred or is incapable of performing the requested method.
     
    27922787         User agents <em class="bcp14">SHOULD</em> display any included representation to the user. These response codes are applicable to any request method.
    27932788      </p>
    2794       <div id="rfc.iref.77"></div>
     2789      <div id="rfc.iref.72"></div>
    27952790      <h3 id="rfc.section.6.6.1"><a href="#rfc.section.6.6.1">6.6.1</a>&nbsp;<a id="status.500" href="#status.500">500 Internal Server Error</a></h3>
    27962791      <p id="rfc.section.6.6.1.p.1">The <dfn>500 (Internal Server Error)</dfn> status code indicates that the server encountered an unexpected condition that prevented it from fulfilling the request.
    27972792      </p>
    2798       <div id="rfc.iref.77"></div>
     2793      <div id="rfc.iref.72"></div>
    27992794      <h3 id="rfc.section.6.6.2"><a href="#rfc.section.6.6.2">6.6.2</a>&nbsp;<a id="status.501" href="#status.501">501 Not Implemented</a></h3>
    28002795      <p id="rfc.section.6.6.2.p.1">The <dfn>501 (Not Implemented)</dfn> status code indicates that the server does not support the functionality required to fulfill the request. This is the appropriate
     
    28032798      <p id="rfc.section.6.6.2.p.2">A 501 response is cacheable unless otherwise indicated by the method definition or explicit cache controls (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.2.2</a> of <a href="#Part6" id="rfc.xref.Part6.21"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Caching">[Part6]</cite></a>).
    28042799      </p>
    2805       <div id="rfc.iref.77"></div>
     2800      <div id="rfc.iref.72"></div>
    28062801      <h3 id="rfc.section.6.6.3"><a href="#rfc.section.6.6.3">6.6.3</a>&nbsp;<a id="status.502" href="#status.502">502 Bad Gateway</a></h3>
    28072802      <p id="rfc.section.6.6.3.p.1">The <dfn>502 (Bad Gateway)</dfn> status code indicates that the server, while acting as a gateway or proxy, received an invalid response from an inbound server
    28082803         it accessed while attempting to fulfill the request.
    28092804      </p>
    2810       <div id="rfc.iref.77"></div>
     2805      <div id="rfc.iref.72"></div>
    28112806      <h3 id="rfc.section.6.6.4"><a href="#rfc.section.6.6.4">6.6.4</a>&nbsp;<a id="status.503" href="#status.503">503 Service Unavailable</a></h3>
    28122807      <p id="rfc.section.6.6.4.p.1">The <dfn>503 (Service Unavailable)</dfn> status code indicates that the server is currently unable to handle the request due to a temporary overload or scheduled maintenance,
     
    28182813         </p>
    28192814      </div>
    2820       <div id="rfc.iref.77"></div>
     2815      <div id="rfc.iref.72"></div>
    28212816      <h3 id="rfc.section.6.6.5"><a href="#rfc.section.6.6.5">6.6.5</a>&nbsp;<a id="status.504" href="#status.504">504 Gateway Timeout</a></h3>
    28222817      <p id="rfc.section.6.6.5.p.1">The <dfn>504 (Gateway Timeout)</dfn> status code indicates that the server, while acting as a gateway or proxy, did not receive a timely response from an upstream
    28232818         server it needed to access in order to complete the request.
    28242819      </p>
    2825       <div id="rfc.iref.77"></div>
     2820      <div id="rfc.iref.72"></div>
    28262821      <h3 id="rfc.section.6.6.6"><a href="#rfc.section.6.6.6">6.6.6</a>&nbsp;<a id="status.505" href="#status.505">505 HTTP Version Not Supported</a></h3>
    28272822      <p id="rfc.section.6.6.6.p.1">The <dfn>505 (HTTP Version Not Supported)</dfn> status code indicates that the server does not support, or refuses to support, the major version of HTTP that was used in
     
    28912886         and time specification used by the Internet Message Format <a href="#RFC5322" id="rfc.xref.RFC5322.3"><cite title="Internet Message Format">[RFC5322]</cite></a>.
    28922887      </p>
    2893       <div id="rfc.figure.u.42"></div><pre class="inline"><span id="rfc.iref.g.39"></span>  <a href="#http.date" class="smpl">HTTP-date</a>    = <a href="#preferred.date.format" class="smpl">IMF-fixdate</a> / <a href="#obsolete.date.formats" class="smpl">obs-date</a>
    2894 </pre><div id="rfc.figure.u.43"></div>
     2888      <div id="rfc.figure.u.43"></div><pre class="inline"><span id="rfc.iref.g.35"></span>  <a href="#http.date" class="smpl">HTTP-date</a>    = <a href="#preferred.date.format" class="smpl">IMF-fixdate</a> / <a href="#obsolete.date.formats" class="smpl">obs-date</a>
     2889</pre><div id="rfc.figure.u.44"></div>
    28952890      <p>An example of the preferred format is</p><pre class="text">Sun, 06 Nov 1994 08:49:37 GMT    ; IMF-fixdate
    2896 </pre><div id="rfc.figure.u.44"></div>
     2891</pre><div id="rfc.figure.u.45"></div>
    28972892      <p>Examples of the two obsolete formats are</p><pre class="text">Sunday, 06-Nov-94 08:49:37 GMT   ; obsolete RFC 850 format
    28982893Sun Nov  6 08:49:37 1994         ; ANSI C's asctime() format
     
    29072902         <p id="rfc.section.7.1.1.1.p.7">          Preferred format:</p>
    29082903      </div>
    2909       <div id="rfc.figure.u.45"></div><pre class="inline"><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><span id="rfc.iref.g.47"></span><span id="rfc.iref.g.48"></span><span id="rfc.iref.g.49"></span><span id="rfc.iref.g.50"></span><span id="rfc.iref.g.51"></span>  <a href="#preferred.date.format" class="smpl">IMF-fixdate</a>  = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#imported.abnf" class="smpl">SP</a> date1 <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a>
     2904      <div id="rfc.figure.u.46"></div><pre class="inline"><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><span id="rfc.iref.g.47"></span>  <a href="#preferred.date.format" class="smpl">IMF-fixdate</a>  = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#imported.abnf" class="smpl">SP</a> date1 <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a>
    29102905  ; fixed length/zone subset of the format defined in
    29112906  ; <a href="http://tools.ietf.org/html/rfc5322#section-3.3">Section 3.3</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.4"><cite title="Internet Message Format">[RFC5322]</cite></a>
     
    29482943         <p id="rfc.section.7.1.1.1.p.9">       Obsolete formats:</p>
    29492944      </div>
    2950       <div id="rfc.figure.u.46"></div><pre class="inline"><span id="rfc.iref.g.52"></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>
    2951 </pre><div id="rfc.figure.u.47"></div><pre class="inline"><span id="rfc.iref.g.53"></span>  <a href="#obsolete.date.formats" class="smpl">rfc850-date</a>  = <a href="#obsolete.date.formats" class="smpl">day-name-l</a> "," <a href="#imported.abnf" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date2</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a>
     2945      <div id="rfc.figure.u.47"></div><pre class="inline"><span id="rfc.iref.g.48"></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>
     2946</pre><div id="rfc.figure.u.48"></div><pre class="inline"><span id="rfc.iref.g.49"></span>  <a href="#obsolete.date.formats" class="smpl">rfc850-date</a>  = <a href="#obsolete.date.formats" class="smpl">day-name-l</a> "," <a href="#imported.abnf" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date2</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a>
    29522947  <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="#imported.abnf" class="smpl">DIGIT</a>
    29532948               ; e.g., 02-Jun-82
     
    29602955         / %x53.61.74.75.72.64.61.79    ; "Saturday", case-sensitive
    29612956         / %x53.75.6E.64.61.79          ; "Sunday", case-sensitive
    2962 </pre><div id="rfc.figure.u.48"></div><pre class="inline"><span id="rfc.iref.g.54"></span>  <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date3</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a>
     2957</pre><div id="rfc.figure.u.49"></div><pre class="inline"><span id="rfc.iref.g.50"></span>  <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date3</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a>
    29632958  <a href="#obsolete.date.formats" class="smpl">date3</a>        = <a href="#preferred.date.format" class="smpl">month</a> <a href="#imported.abnf" class="smpl">SP</a> ( 2<a href="#imported.abnf" class="smpl">DIGIT</a> / ( <a href="#imported.abnf" class="smpl">SP</a> 1<a href="#imported.abnf" class="smpl">DIGIT</a> ))
    29642959               ; e.g., Jun  2
     
    29822977         Origination Date Field (orig-date) defined 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.6"><cite title="Internet Message Format">[RFC5322]</cite></a>. The field value is an HTTP-date, as defined in <a href="#http.date" title="Date/Time Formats">Section&nbsp;7.1.1.1</a>.
    29832978      </p>
    2984       <div id="rfc.figure.u.49"></div><pre class="inline"><span id="rfc.iref.g.55"></span>  <a href="#header.date" class="smpl">Date</a> = <a href="#http.date" class="smpl">HTTP-date</a>
     2979      <div id="rfc.figure.u.50"></div><pre class="inline"><span id="rfc.iref.g.51"></span>  <a href="#header.date" class="smpl">Date</a> = <a href="#http.date" class="smpl">HTTP-date</a>
    29852980</pre><p id="rfc.section.7.1.1.2.p.3">An example is</p>
    2986       <div id="rfc.figure.u.50"></div><pre class="text">  Date: Tue, 15 Nov 1994 08:12:31 GMT
     2981      <div id="rfc.figure.u.51"></div><pre class="text">  Date: Tue, 15 Nov 1994 08:12:31 GMT
    29872982</pre><p id="rfc.section.7.1.1.2.p.5">When a Date header field is generated, the sender <em class="bcp14">SHOULD</em> generate its field value as the best available approximation of the date and time of message generation. In theory, the date
    29882983         ought to represent the moment just before the payload is generated. In practice, the date can be generated at any time during
     
    30042999         of relationship is defined by the combination of request method and status code semantics.
    30053000      </p>
    3006       <div id="rfc.figure.u.51"></div><pre class="inline"><span id="rfc.iref.g.56"></span>  <a href="#header.location" class="smpl">Location</a> = <a href="#imported.abnf" class="smpl">URI-reference</a>
     3001      <div id="rfc.figure.u.52"></div><pre class="inline"><span id="rfc.iref.g.52"></span>  <a href="#header.location" class="smpl">Location</a> = <a href="#imported.abnf" class="smpl">URI-reference</a>
    30073002</pre><p id="rfc.section.7.1.2.p.3">The field value consists of a single URI-reference. When it has the form of a relative reference (<a href="#RFC3986" id="rfc.xref.RFC3986.2"><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>), the final value is computed by resolving it against the effective request URI (<a href="#RFC3986" id="rfc.xref.RFC3986.3"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-5">Section 5</a>).
    30083003      </p>
     
    30133008         not have a fragment component, the user agent <em class="bcp14">SHOULD</em> interpret the Location reference as if it had the original reference's fragment.
    30143009      </p>
    3015       <div id="rfc.figure.u.52"></div>
     3010      <div id="rfc.figure.u.53"></div>
    30163011      <p>For example, a GET request generated for the URI reference "http://www.example.org/~tim" might result in a <a href="#status.303" class="smpl">303 (See Other)</a> response containing the header field:
    30173012      </p><pre class="text">  Location: /People.html#tim
    30183013</pre><p>which suggests that the user agent redirect to "http://www.example.org/People.html#tim"</p>
    3019       <div id="rfc.figure.u.53"></div>
     3014      <div id="rfc.figure.u.54"></div>
    30203015      <p>Likewise, a GET request generated for the URI reference "http://www.example.org/index.html#larry" might result in a <a href="#status.301" class="smpl">301 (Moved Permanently)</a> response containing the header field:
    30213016      </p><pre class="text">  Location: http://www.example.net/index.html
     
    30423037      </p>
    30433038      <p id="rfc.section.7.1.3.p.2">The value of this field can be either an HTTP-date or an integer number of seconds (in decimal) after the time of the response.</p>
    3044       <div id="rfc.figure.u.54"></div><pre class="inline"><span id="rfc.iref.g.57"></span>  <a href="#header.retry-after" class="smpl">Retry-After</a> = <a href="#http.date" class="smpl">HTTP-date</a> / <a href="#rule.delta-seconds" class="smpl">delta-seconds</a>
     3039      <div id="rfc.figure.u.55"></div><pre class="inline"><span id="rfc.iref.g.53"></span>  <a href="#header.retry-after" class="smpl">Retry-After</a> = <a href="#http.date" class="smpl">HTTP-date</a> / <a href="#rule.delta-seconds" class="smpl">delta-seconds</a>
    30453040</pre><div id="rule.delta-seconds">
    30463041         <p id="rfc.section.7.1.3.p.4"> Time spans are non-negative decimal integers, representing time in seconds.</p>
    30473042      </div>
    3048       <div id="rfc.figure.u.55"></div><pre class="inline"><span id="rfc.iref.g.58"></span>  <a href="#rule.delta-seconds" class="smpl">delta-seconds</a>  = 1*<a href="#imported.abnf" class="smpl">DIGIT</a>
     3043      <div id="rfc.figure.u.56"></div><pre class="inline"><span id="rfc.iref.g.54"></span>  <a href="#rule.delta-seconds" class="smpl">delta-seconds</a>  = 1*<a href="#imported.abnf" class="smpl">DIGIT</a>
    30493044</pre><p id="rfc.section.7.1.3.p.6">Two examples of its use are</p>
    3050       <div id="rfc.figure.u.56"></div><pre class="text">  Retry-After: Fri, 31 Dec 1999 23:59:59 GMT
     3045      <div id="rfc.figure.u.57"></div><pre class="text">  Retry-After: Fri, 31 Dec 1999 23:59:59 GMT
    30513046  Retry-After: 120
    30523047</pre><p id="rfc.section.7.1.3.p.8">In the latter example, the delay is 2 minutes.</p>
     
    30573052         of either a single asterisk ("*") or a list of header field names (case-insensitive).
    30583053      </p>
    3059       <div id="rfc.figure.u.57"></div><pre class="inline"><span id="rfc.iref.g.59"></span>  <a href="#header.vary" class="smpl">Vary</a> = "*" / 1#<a href="#imported.abnf" class="smpl">field-name</a>
     3054      <div id="rfc.figure.u.58"></div><pre class="inline"><span id="rfc.iref.g.55"></span>  <a href="#header.vary" class="smpl">Vary</a> = "*" / 1#<a href="#imported.abnf" class="smpl">field-name</a>
    30603055</pre><p id="rfc.section.7.1.4.p.3">A Vary field value of "*" signals that anything about the request might play a role in selecting the response representation,
    30613056         possibly including elements outside the message syntax (e.g., the client's network address), and thus a recipient will not
     
    30673062         not limited to those defined by this specification.
    30683063      </p>
    3069       <div id="rfc.figure.u.58"></div>
     3064      <div id="rfc.figure.u.59"></div>
    30703065      <p>For example, a response that contains</p><pre class="text">  Vary: accept-encoding, accept-language
    30713066</pre><p>indicates that the origin server might have used the request's <a href="#header.accept-encoding" class="smpl">Accept-Encoding</a> and <a href="#header.accept-language" class="smpl">Accept-Language</a> fields (or lack thereof) as determining factors while choosing the content for this response.
     
    31753170      <p id="rfc.section.7.4.1.p.1">The "Allow" header field lists the set of methods advertised as supported by the <a href="#resources" class="smpl">target resource</a>. The purpose of this field is strictly to inform the recipient of valid request methods associated with the resource.
    31763171      </p>
    3177       <div id="rfc.figure.u.59"></div><pre class="inline"><span id="rfc.iref.g.60"></span>  <a href="#header.allow" class="smpl">Allow</a> = #<a href="#method.overview" class="smpl">method</a>
     3172      <div id="rfc.figure.u.60"></div><pre class="inline"><span id="rfc.iref.g.56"></span>  <a href="#header.allow" class="smpl">Allow</a> = #<a href="#method.overview" class="smpl">method</a>
    31783173</pre><p id="rfc.section.7.4.1.p.3">Example of use:</p>
    3179       <div id="rfc.figure.u.60"></div><pre class="text">  Allow: GET, HEAD, PUT
     3174      <div id="rfc.figure.u.61"></div><pre class="text">  Allow: GET, HEAD, PUT
    31803175</pre><p id="rfc.section.7.4.1.p.5">The actual set of allowed methods is defined by the origin server at the time of each request. An origin server <em class="bcp14">MUST</em> generate an Allow field in a <a href="#status.405" class="smpl">405 (Method Not Allowed)</a> response and <em class="bcp14">MAY</em> do so in any other response. An empty Allow field value indicates that the resource allows no methods, which might occur in
    31813176         a 405 response if the resource has been temporarily disabled by configuration.
     
    31903185         to avoid particular server limitations, and for analytics regarding server or operating system use. An origin server <em class="bcp14">MAY</em> generate a Server field in its responses.
    31913186      </p>
    3192       <div id="rfc.figure.u.61"></div><pre class="inline"><span id="rfc.iref.g.61"></span>  <a href="#header.server" class="smpl">Server</a> = <a href="#header.user-agent" class="smpl">product</a> *( <a href="#imported.abnf" class="smpl">RWS</a> ( <a href="#header.user-agent" class="smpl">product</a> / <a href="#imported.abnf" class="smpl">comment</a> ) )
     3187      <div id="rfc.figure.u.62"></div><pre class="inline"><span id="rfc.iref.g.57"></span>  <a href="#header.server" class="smpl">Server</a> = <a href="#header.user-agent" class="smpl">product</a> *( <a href="#imported.abnf" class="smpl">RWS</a> ( <a href="#header.user-agent" class="smpl">product</a> / <a href="#imported.abnf" class="smpl">comment</a> ) )
    31933188</pre><p id="rfc.section.7.4.2.p.3">The Server field-value consists of one or more product identifiers, each followed by zero or more comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.30"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>), which together identify the origin server software and its significant subproducts. By convention, the product identifiers
    31943189         are listed in decreasing order of their significance for identifying the origin server software. Each product identifier consists
     
    31963191      </p>
    31973192      <p id="rfc.section.7.4.2.p.4">Example:</p>
    3198       <div id="rfc.figure.u.62"></div><pre class="text">  Server: CERN/3.0 libwww/2.17
     3193      <div id="rfc.figure.u.63"></div><pre class="text">  Server: CERN/3.0 libwww/2.17
    31993194</pre><p id="rfc.section.7.4.2.p.6">An origin server <em class="bcp14">SHOULD NOT</em> generate a Server field containing needlessly fine-grained detail and <em class="bcp14">SHOULD</em> limit the addition of subproducts by third parties. Overly long and detailed Server field values increase response latency
    32003195         and potentially reveal internal implementation details that might make it (slightly) easier for attackers to find and exploit
     
    36113606         these:
    36123607      </p>
    3613       <div id="rfc.figure.u.63"></div><pre class="text">  Example-URI-Field: "http://example.com/a.html,foo",
     3608      <div id="rfc.figure.u.64"></div><pre class="text">  Example-URI-Field: "http://example.com/a.html,foo",
    36143609                     "http://without-a-comma.example.com/"
    36153610  Example-Date-Field: "Sat, 04 May 1996", "Wed, 14 Sep 2005"
     
    37533748                  <td class="left">http</td>
    37543749                  <td class="left">standard</td>
    3755                   <td class="left"><a href="#header.expect" id="rfc.xref.header.expect.3" title="Expect">Section&nbsp;5.1.1</a>
     3750                  <td class="left"><a href="#header.expect" id="rfc.xref.header.expect.4" title="Expect">Section&nbsp;5.1.1</a>
    37563751                  </td>
    37573752               </tr>
     
    42644259      <p id="rfc.section.B.p.9">The <a href="#OPTIONS" class="smpl">OPTIONS</a> and <a href="#TRACE" class="smpl">TRACE</a> request methods have been defined as being safe. (<a href="#OPTIONS" id="rfc.xref.OPTIONS.4" title="OPTIONS">Section&nbsp;4.3.7</a> and <a href="#TRACE" id="rfc.xref.TRACE.4" title="TRACE">Section&nbsp;4.3.8</a>)
    42654260      </p>
    4266       <p id="rfc.section.B.p.10">The definition of the <a href="#header.expect" class="smpl">Expect</a> header field has been fixed to allow parameters for value-less expectations and simplified to allow trailing semicolons. (<a href="#header.expect" id="rfc.xref.header.expect.4" title="Expect">Section&nbsp;5.1.1</a>)
     4261      <p id="rfc.section.B.p.10">The definition of the <a href="#header.expect" class="smpl">Expect</a> header field has been fixed to allow parameters for value-less expectations and simplified to allow trailing semicolons. (<a href="#header.expect" id="rfc.xref.header.expect.5" title="Expect">Section&nbsp;5.1.1</a>)
    42674262      </p>
    42684263      <p id="rfc.section.B.p.11">The <a href="#header.max-forwards" class="smpl">Max-Forwards</a> header field has been restricted to the <a href="#OPTIONS" class="smpl">OPTIONS</a> and <a href="#TRACE" class="smpl">TRACE</a> methods; previously, extension methods could have used it as well. (<a href="#header.max-forwards" id="rfc.xref.header.max-forwards.5" title="Max-Forwards">Section&nbsp;5.1.2</a>)
     
    43174312      <p id="rfc.section.C.p.2">The rules below are defined in <a href="#Part1" id="rfc.xref.Part1.50"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>:
    43184313      </p>
    4319       <div id="rfc.figure.u.64"></div><pre class="inline">  <a href="#imported.abnf" class="smpl">BWS</a>           = &lt;BWS, defined in <a href="#Part1" id="rfc.xref.Part1.51"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>, <a href="p1-messaging.html#whitespace" title="Whitespace">Section 3.2.3</a>&gt;
     4314      <div id="rfc.figure.u.65"></div><pre class="inline">  <a href="#imported.abnf" class="smpl">BWS</a>           = &lt;BWS, defined in <a href="#Part1" id="rfc.xref.Part1.51"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>, <a href="p1-messaging.html#whitespace" title="Whitespace">Section 3.2.3</a>&gt;
    43204315  <a href="#imported.abnf" class="smpl">OWS</a>           = &lt;OWS, defined in <a href="#Part1" id="rfc.xref.Part1.52"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>, <a href="p1-messaging.html#whitespace" title="Whitespace">Section 3.2.3</a>&gt;
    43214316  <a href="#imported.abnf" class="smpl">RWS</a>           = &lt;RWS, defined in <a href="#Part1" id="rfc.xref.Part1.53"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>, <a href="p1-messaging.html#whitespace" title="Whitespace">Section 3.2.3</a>&gt;
     
    43314326      <p id="rfc.section.D.p.1">In the collected ABNF below, list rules are expanded as per <a href="p1-messaging.html#notation" title="Syntax Notation">Section 1.2</a> of <a href="#Part1" id="rfc.xref.Part1.62"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>.
    43324327      </p>
    4333       <div id="rfc.figure.u.65"></div><pre class="inline"><a href="#header.accept" class="smpl">Accept</a> = [ ( "," / ( media-range [ accept-params ] ) ) *( OWS "," [
     4328      <div id="rfc.figure.u.66"></div><pre class="inline"><a href="#header.accept" class="smpl">Accept</a> = [ ( "," / ( media-range [ accept-params ] ) ) *( OWS "," [
    43344329 OWS ( media-range [ accept-params ] ) ] ) ]
    43354330<a href="#header.accept-charset" class="smpl">Accept-Charset</a> = *( "," OWS ) ( ( charset / "*" ) [ weight ] ) *( OWS
     
    43524347<a href="#header.date" class="smpl">Date</a> = HTTP-date
    43534348
    4354 <a href="#header.expect" class="smpl">Expect</a> = *( "," OWS ) expectation *( OWS "," [ OWS expectation ] )
     4349<a href="#header.expect" class="smpl">Expect</a> = "100-continue"
    43554350
    43564351<a href="#header.from" class="smpl">From</a> = mailbox
     
    44114406<a href="#rule.delta-seconds" class="smpl">delta-seconds</a> = 1*DIGIT
    44124407
    4413 <a href="#header.expect" class="smpl">expect-name</a> = token
    4414 <a href="#header.expect" class="smpl">expect-param</a> = expect-name [ BWS "=" BWS expect-value ]
    4415 <a href="#header.expect" class="smpl">expect-value</a> = token / quoted-string
    4416 <a href="#header.expect" class="smpl">expectation</a> = expect-name [ BWS "=" BWS expect-value ] *( OWS ";" [
    4417  OWS expect-param ] )
    4418 
    44194408<a href="#imported.abnf" class="smpl">field-name</a> = &lt;comment, defined in [Part1], Section 3.2&gt;
    44204409
     
    45454534         <ul class="ind">
    45464535            <li><a id="rfc.index.1" href="#rfc.index.1"><b>1</b></a><ul>
    4547                   <li>100 Continue (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.100.1">6.1</a>, <a href="#rfc.iref.73"><b>6.2.1</b></a>, <a href="#rfc.xref.status.100.2">8.2.3</a></li>
    4548                   <li>100-continue (expect value)&nbsp;&nbsp;<a href="#rfc.iref.45"><b>5.1.1.1</b></a></li>
    4549                   <li>101 Switching Protocols (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.101.1">6.1</a>, <a href="#rfc.iref.73"><b>6.2.2</b></a>, <a href="#rfc.xref.status.101.2">8.2.3</a></li>
    4550                   <li>1xx Informational (status code class)&nbsp;&nbsp;<a href="#rfc.iref.72"><b>6.2</b></a></li>
     4536                  <li>100 Continue (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.100.1">6.1</a>, <a href="#rfc.iref.68"><b>6.2.1</b></a>, <a href="#rfc.xref.status.100.2">8.2.3</a></li>
     4537                  <li>100-continue (expect value)&nbsp;&nbsp;<a href="#rfc.iref.40"><b>5.1.1</b></a></li>
     4538                  <li>101 Switching Protocols (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.101.1">6.1</a>, <a href="#rfc.iref.68"><b>6.2.2</b></a>, <a href="#rfc.xref.status.101.2">8.2.3</a></li>
     4539                  <li>1xx Informational (status code class)&nbsp;&nbsp;<a href="#rfc.iref.67"><b>6.2</b></a></li>
    45514540               </ul>
    45524541            </li>
    45534542            <li><a id="rfc.index.2" href="#rfc.index.2"><b>2</b></a><ul>
    4554                   <li>200 OK (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.200.1">6.1</a>, <a href="#rfc.iref.74"><b>6.3.1</b></a>, <a href="#rfc.xref.status.200.2">8.2.3</a></li>
    4555                   <li>201 Created (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.201.1">6.1</a>, <a href="#rfc.iref.74"><b>6.3.2</b></a>, <a href="#rfc.xref.status.201.2">8.2.3</a>, <a href="#rfc.xref.status.201.3">B</a></li>
    4556                   <li>202 Accepted (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.202.1">6.1</a>, <a href="#rfc.iref.74"><b>6.3.3</b></a>, <a href="#rfc.xref.status.202.2">8.2.3</a></li>
    4557                   <li>203 Non-Authoritative Information (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.203.1">6.1</a>, <a href="#rfc.iref.74"><b>6.3.4</b></a>, <a href="#rfc.xref.status.203.2">8.2.3</a>, <a href="#rfc.xref.status.203.3">B</a></li>
    4558                   <li>204 No Content (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.204.1">6.1</a>, <a href="#rfc.iref.74"><b>6.3.5</b></a>, <a href="#rfc.xref.status.204.2">8.2.3</a></li>
    4559                   <li>205 Reset Content (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.205.1">6.1</a>, <a href="#rfc.iref.74"><b>6.3.6</b></a>, <a href="#rfc.xref.status.205.2">8.2.3</a></li>
    4560                   <li>2xx Successful (status code class)&nbsp;&nbsp;<a href="#rfc.iref.73"><b>6.3</b></a></li>
     4543                  <li>200 OK (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.200.1">6.1</a>, <a href="#rfc.iref.69"><b>6.3.1</b></a>, <a href="#rfc.xref.status.200.2">8.2.3</a></li>
     4544                  <li>201 Created (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.201.1">6.1</a>, <a href="#rfc.iref.69"><b>6.3.2</b></a>, <a href="#rfc.xref.status.201.2">8.2.3</a>, <a href="#rfc.xref.status.201.3">B</a></li>
     4545                  <li>202 Accepted (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.202.1">6.1</a>, <a href="#rfc.iref.69"><b>6.3.3</b></a>, <a href="#rfc.xref.status.202.2">8.2.3</a></li>
     4546                  <li>203 Non-Authoritative Information (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.203.1">6.1</a>, <a href="#rfc.iref.69"><b>6.3.4</b></a>, <a href="#rfc.xref.status.203.2">8.2.3</a>, <a href="#rfc.xref.status.203.3">B</a></li>
     4547                  <li>204 No Content (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.204.1">6.1</a>, <a href="#rfc.iref.69"><b>6.3.5</b></a>, <a href="#rfc.xref.status.204.2">8.2.3</a></li>
     4548                  <li>205 Reset Content (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.205.1">6.1</a>, <a href="#rfc.iref.69"><b>6.3.6</b></a>, <a href="#rfc.xref.status.205.2">8.2.3</a></li>
     4549                  <li>2xx Successful (status code class)&nbsp;&nbsp;<a href="#rfc.iref.68"><b>6.3</b></a></li>
    45614550               </ul>
    45624551            </li>
    45634552            <li><a id="rfc.index.3" href="#rfc.index.3"><b>3</b></a><ul>
    4564                   <li>300 Multiple Choices (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.300.1">6.1</a>, <a href="#rfc.iref.75"><b>6.4.1</b></a>, <a href="#rfc.xref.status.300.2">6.5.6</a>, <a href="#rfc.xref.status.300.3">8.2.3</a></li>
    4565                   <li>301 Moved Permanently (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.301.1">6.1</a>, <a href="#rfc.iref.75"><b>6.4.2</b></a>, <a href="#rfc.xref.status.301.2">8.2.3</a>, <a href="#rfc.xref.status.301.3">B</a></li>
    4566                   <li>302 Found (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.302.1">6.1</a>, <a href="#rfc.iref.75"><b>6.4.3</b></a>, <a href="#rfc.xref.status.302.2">8.2.3</a>, <a href="#rfc.xref.status.302.3">B</a></li>
    4567                   <li>303 See Other (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.303.1">6.1</a>, <a href="#rfc.iref.75"><b>6.4.4</b></a>, <a href="#rfc.xref.status.303.2">8.2.3</a>, <a href="#rfc.xref.status.303.3">B</a></li>
    4568                   <li>305 Use Proxy (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.305.1">6.1</a>, <a href="#rfc.iref.75"><b>6.4.5</b></a>, <a href="#rfc.xref.status.305.2">8.2.3</a>, <a href="#rfc.xref.status.305.3">B</a></li>
    4569                   <li>306 (Unused) (status code)&nbsp;&nbsp;<a href="#rfc.iref.75"><b>6.4.6</b></a>, <a href="#rfc.xref.status.306.1">8.2.3</a></li>
    4570                   <li>307 Temporary Redirect (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.307.1">6.1</a>, <a href="#rfc.iref.75"><b>6.4.7</b></a>, <a href="#rfc.xref.status.307.2">8.2.3</a></li>
    4571                   <li>3xx Redirection (status code class)&nbsp;&nbsp;<a href="#rfc.iref.74"><b>6.4</b></a>, <a href="#rfc.xref.status.3xx.1">B</a></li>
     4553                  <li>300 Multiple Choices (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.300.1">6.1</a>, <a href="#rfc.iref.70"><b>6.4.1</b></a>, <a href="#rfc.xref.status.300.2">6.5.6</a>, <a href="#rfc.xref.status.300.3">8.2.3</a></li>
     4554                  <li>301 Moved Permanently (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.301.1">6.1</a>, <a href="#rfc.iref.70"><b>6.4.2</b></a>, <a href="#rfc.xref.status.301.2">8.2.3</a>, <a href="#rfc.xref.status.301.3">B</a></li>
     4555                  <li>302 Found (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.302.1">6.1</a>, <a href="#rfc.iref.70"><b>6.4.3</b></a>, <a href="#rfc.xref.status.302.2">8.2.3</a>, <a href="#rfc.xref.status.302.3">B</a></li>
     4556                  <li>303 See Other (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.303.1">6.1</a>, <a href="#rfc.iref.70"><b>6.4.4</b></a>, <a href="#rfc.xref.status.303.2">8.2.3</a>, <a href="#rfc.xref.status.303.3">B</a></li>
     4557                  <li>305 Use Proxy (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.305.1">6.1</a>, <a href="#rfc.iref.70"><b>6.4.5</b></a>, <a href="#rfc.xref.status.305.2">8.2.3</a>, <a href="#rfc.xref.status.305.3">B</a></li>
     4558                  <li>306 (Unused) (status code)&nbsp;&nbsp;<a href="#rfc.iref.70"><b>6.4.6</b></a>, <a href="#rfc.xref.status.306.1">8.2.3</a></li>
     4559                  <li>307 Temporary Redirect (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.307.1">6.1</a>, <a href="#rfc.iref.70"><b>6.4.7</b></a>, <a href="#rfc.xref.status.307.2">8.2.3</a></li>
     4560                  <li>3xx Redirection (status code class)&nbsp;&nbsp;<a href="#rfc.iref.69"><b>6.4</b></a>, <a href="#rfc.xref.status.3xx.1">B</a></li>
    45724561               </ul>
    45734562            </li>
    45744563            <li><a id="rfc.index.4" href="#rfc.index.4"><b>4</b></a><ul>
    4575                   <li>400 Bad Request (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.400.1">6.1</a>, <a href="#rfc.iref.76"><b>6.5.1</b></a>, <a href="#rfc.xref.status.400.2">8.2.3</a>, <a href="#rfc.xref.status.400.3">B</a></li>
    4576                   <li>402 Payment Required (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.402.1">6.1</a>, <a href="#rfc.iref.76"><b>6.5.2</b></a>, <a href="#rfc.xref.status.402.2">8.2.3</a></li>
    4577                   <li>403 Forbidden (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.403.1">6.1</a>, <a href="#rfc.iref.76"><b>6.5.3</b></a>, <a href="#rfc.xref.status.403.2">8.2.3</a></li>
    4578                   <li>404 Not Found (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.404.1">6.1</a>, <a href="#rfc.iref.76"><b>6.5.4</b></a>, <a href="#rfc.xref.status.404.2">8.2.3</a></li>
    4579                   <li>405 Method Not Allowed (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.405.1">6.1</a>, <a href="#rfc.iref.76"><b>6.5.5</b></a>, <a href="#rfc.xref.status.405.2">8.2.3</a></li>
    4580                   <li>406 Not Acceptable (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.406.1">6.1</a>, <a href="#rfc.iref.76"><b>6.5.6</b></a>, <a href="#rfc.xref.status.406.2">8.2.3</a></li>
    4581                   <li>408 Request Timeout (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.408.1">6.1</a>, <a href="#rfc.iref.76"><b>6.5.7</b></a>, <a href="#rfc.xref.status.408.2">8.2.3</a></li>
    4582                   <li>409 Conflict (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.409.1">6.1</a>, <a href="#rfc.iref.76"><b>6.5.8</b></a>, <a href="#rfc.xref.status.409.2">8.2.3</a></li>
    4583                   <li>410 Gone (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.410.1">6.1</a>, <a href="#rfc.iref.76"><b>6.5.9</b></a>, <a href="#rfc.xref.status.410.2">8.2.3</a></li>
    4584                   <li>411 Length Required (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.411.1">6.1</a>, <a href="#rfc.iref.76"><b>6.5.10</b></a>, <a href="#rfc.xref.status.411.2">8.2.3</a></li>
    4585                   <li>413 Payload Too Large (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.413.1">6.1</a>, <a href="#rfc.iref.76"><b>6.5.11</b></a>, <a href="#rfc.xref.status.413.2">8.2.3</a></li>
    4586                   <li>414 URI Too Long (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.414.1">6.1</a>, <a href="#rfc.iref.76"><b>6.5.12</b></a>, <a href="#rfc.xref.status.414.2">8.2.3</a></li>
    4587                   <li>415 Unsupported Media Type (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.415.1">6.1</a>, <a href="#rfc.iref.76"><b>6.5.13</b></a>, <a href="#rfc.xref.status.415.2">8.2.3</a></li>
    4588                   <li>417 Expectation Failed (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.417.1">6.1</a>, <a href="#rfc.iref.76"><b>6.5.14</b></a>, <a href="#rfc.xref.status.417.2">8.2.3</a></li>
    4589                   <li>426 Upgrade Required (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.426.1">6.1</a>, <a href="#rfc.iref.76"><b>6.5.15</b></a>, <a href="#rfc.xref.status.426.2">8.2.3</a>, <a href="#rfc.xref.status.426.3">B</a></li>
    4590                   <li>4xx Client Error (status code class)&nbsp;&nbsp;<a href="#rfc.iref.75"><b>6.5</b></a></li>
     4564                  <li>400 Bad Request (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.400.1">6.1</a>, <a href="#rfc.iref.71"><b>6.5.1</b></a>, <a href="#rfc.xref.status.400.2">8.2.3</a>, <a href="#rfc.xref.status.400.3">B</a></li>
     4565                  <li>402 Payment Required (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.402.1">6.1</a>, <a href="#rfc.iref.71"><b>6.5.2</b></a>, <a href="#rfc.xref.status.402.2">8.2.3</a></li>
     4566                  <li>403 Forbidden (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.403.1">6.1</a>, <a href="#rfc.iref.71"><b>6.5.3</b></a>, <a href="#rfc.xref.status.403.2">8.2.3</a></li>
     4567                  <li>404 Not Found (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.404.1">6.1</a>, <a href="#rfc.iref.71"><b>6.5.4</b></a>, <a href="#rfc.xref.status.404.2">8.2.3</a></li>
     4568                  <li>405 Method Not Allowed (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.405.1">6.1</a>, <a href="#rfc.iref.71"><b>6.5.5</b></a>, <a href="#rfc.xref.status.405.2">8.2.3</a></li>
     4569                  <li>406 Not Acceptable (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.406.1">6.1</a>, <a href="#rfc.iref.71"><b>6.5.6</b></a>, <a href="#rfc.xref.status.406.2">8.2.3</a></li>
     4570                  <li>408 Request Timeout (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.408.1">6.1</a>, <a href="#rfc.iref.71"><b>6.5.7</b></a>, <a href="#rfc.xref.status.408.2">8.2.3</a></li>
     4571                  <li>409 Conflict (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.409.1">6.1</a>, <a href="#rfc.iref.71"><b>6.5.8</b></a>, <a href="#rfc.xref.status.409.2">8.2.3</a></li>
     4572                  <li>410 Gone (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.410.1">6.1</a>, <a href="#rfc.iref.71"><b>6.5.9</b></a>, <a href="#rfc.xref.status.410.2">8.2.3</a></li>
     4573                  <li>411 Length Required (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.411.1">6.1</a>, <a href="#rfc.iref.71"><b>6.5.10</b></a>, <a href="#rfc.xref.status.411.2">8.2.3</a></li>
     4574                  <li>413 Payload Too Large (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.413.1">6.1</a>, <a href="#rfc.iref.71"><b>6.5.11</b></a>, <a href="#rfc.xref.status.413.2">8.2.3</a></li>
     4575                  <li>414 URI Too Long (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.414.1">6.1</a>, <a href="#rfc.iref.71"><b>6.5.12</b></a>, <a href="#rfc.xref.status.414.2">8.2.3</a></li>
     4576                  <li>415 Unsupported Media Type (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.415.1">6.1</a>, <a href="#rfc.iref.71"><b>6.5.13</b></a>, <a href="#rfc.xref.status.415.2">8.2.3</a></li>
     4577                  <li>417 Expectation Failed (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.417.1">6.1</a>, <a href="#rfc.iref.71"><b>6.5.14</b></a>, <a href="#rfc.xref.status.417.2">8.2.3</a></li>
     4578                  <li>426 Upgrade Required (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.426.1">6.1</a>, <a href="#rfc.iref.71"><b>6.5.15</b></a>, <a href="#rfc.xref.status.426.2">8.2.3</a>, <a href="#rfc.xref.status.426.3">B</a></li>
     4579                  <li>4xx Client Error (status code class)&nbsp;&nbsp;<a href="#rfc.iref.70"><b>6.5</b></a></li>
    45914580               </ul>
    45924581            </li>
    45934582            <li><a id="rfc.index.5" href="#rfc.index.5"><b>5</b></a><ul>
    4594                   <li>500 Internal Server Error (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.500.1">6.1</a>, <a href="#rfc.iref.77"><b>6.6.1</b></a>, <a href="#rfc.xref.status.500.2">8.2.3</a></li>
    4595                   <li>501 Not Implemented (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.501.1">6.1</a>, <a href="#rfc.iref.77"><b>6.6.2</b></a>, <a href="#rfc.xref.status.501.2">8.2.3</a></li>
    4596                   <li>502 Bad Gateway (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.502.1">6.1</a>, <a href="#rfc.iref.77"><b>6.6.3</b></a>, <a href="#rfc.xref.status.502.2">8.2.3</a></li>
    4597                   <li>503 Service Unavailable (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.503.1">6.1</a>, <a href="#rfc.iref.77"><b>6.6.4</b></a>, <a href="#rfc.xref.status.503.2">8.2.3</a></li>
    4598                   <li>504 Gateway Timeout (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.504.1">6.1</a>, <a href="#rfc.iref.77"><b>6.6.5</b></a>, <a href="#rfc.xref.status.504.2">8.2.3</a></li>
    4599                   <li>505 HTTP Version Not Supported (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.505.1">6.1</a>, <a href="#rfc.iref.77"><b>6.6.6</b></a>, <a href="#rfc.xref.status.505.2">8.2.3</a></li>
    4600                   <li>5xx Server Error (status code class)&nbsp;&nbsp;<a href="#rfc.iref.76"><b>6.6</b></a></li>
     4583                  <li>500 Internal Server Error (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.500.1">6.1</a>, <a href="#rfc.iref.72"><b>6.6.1</b></a>, <a href="#rfc.xref.status.500.2">8.2.3</a></li>
     4584                  <li>501 Not Implemented (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.501.1">6.1</a>, <a href="#rfc.iref.72"><b>6.6.2</b></a>, <a href="#rfc.xref.status.501.2">8.2.3</a></li>
     4585                  <li>502 Bad Gateway (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.502.1">6.1</a>, <a href="#rfc.iref.72"><b>6.6.3</b></a>, <a href="#rfc.xref.status.502.2">8.2.3</a></li>
     4586                  <li>503 Service Unavailable (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.503.1">6.1</a>, <a href="#rfc.iref.72"><b>6.6.4</b></a>, <a href="#rfc.xref.status.503.2">8.2.3</a></li>
     4587                  <li>504 Gateway Timeout (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.504.1">6.1</a>, <a href="#rfc.iref.72"><b>6.6.5</b></a>, <a href="#rfc.xref.status.504.2">8.2.3</a></li>
     4588                  <li>505 HTTP Version Not Supported (status code)&nbsp;&nbsp;<a href="#rfc.xref.status.505.1">6.1</a>, <a href="#rfc.iref.72"><b>6.6.6</b></a>, <a href="#rfc.xref.status.505.2">8.2.3</a></li>
     4589                  <li>5xx Server Error (status code class)&nbsp;&nbsp;<a href="#rfc.iref.71"><b>6.6</b></a></li>
    46014590               </ul>
    46024591            </li>
     
    46354624            </li>
    46364625            <li><a id="rfc.index.E" href="#rfc.index.E"><b>E</b></a><ul>
    4637                   <li>Expect header field&nbsp;&nbsp;<a href="#rfc.xref.header.expect.1">5.1</a>, <a href="#rfc.iref.e.1"><b>5.1.1</b></a>, <a href="#rfc.xref.header.expect.2">6.5.14</a>, <a href="#rfc.xref.header.expect.3">8.3.2</a>, <a href="#rfc.xref.header.expect.4">B</a></li>
    4638                   <li>Expect Values&nbsp;&nbsp;
    4639                      <ul>
    4640                         <li>100-continue&nbsp;&nbsp;<a href="#rfc.iref.e.2"><b>5.1.1.1</b></a></li>
    4641                      </ul>
    4642                   </li>
     4626                  <li>Expect header field&nbsp;&nbsp;<a href="#rfc.xref.header.expect.1">5.1</a>, <a href="#rfc.iref.e.1"><b>5.1.1</b></a>, <a href="#rfc.xref.header.expect.2">6.2.1</a>, <a href="#rfc.xref.header.expect.3">6.5.14</a>, <a href="#rfc.xref.header.expect.4">8.3.2</a>, <a href="#rfc.xref.header.expect.5">B</a></li>
    46434627               </ul>
    46444628            </li>
     
    46514635                  <li><tt>Grammar</tt>&nbsp;&nbsp;
    46524636                     <ul>
    4653                         <li><tt>Accept</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.25"><b>5.3.2</b></a></li>
    4654                         <li><tt>Accept-Charset</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.29"><b>5.3.3</b></a></li>
    4655                         <li><tt>Accept-Encoding</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.30"><b>5.3.4</b></a></li>
    4656                         <li><tt>accept-ext</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.28"><b>5.3.2</b></a></li>
    4657                         <li><tt>Accept-Language</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.32"><b>5.3.5</b></a></li>
    4658                         <li><tt>accept-params</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.27"><b>5.3.2</b></a></li>
    4659                         <li><tt>Allow</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.60"><b>7.4.1</b></a></li>
    4660                         <li><tt>asctime-date</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.54"><b>7.1.1.1</b></a></li>
     4637                        <li><tt>Accept</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.21"><b>5.3.2</b></a></li>
     4638                        <li><tt>Accept-Charset</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.25"><b>5.3.3</b></a></li>
     4639                        <li><tt>Accept-Encoding</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.26"><b>5.3.4</b></a></li>
     4640                        <li><tt>accept-ext</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.24"><b>5.3.2</b></a></li>
     4641                        <li><tt>Accept-Language</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.28"><b>5.3.5</b></a></li>
     4642                        <li><tt>accept-params</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.23"><b>5.3.2</b></a></li>
     4643                        <li><tt>Allow</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.56"><b>7.4.1</b></a></li>
     4644                        <li><tt>asctime-date</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.50"><b>7.1.1.1</b></a></li>
    46614645                        <li><tt>attribute</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.5"><b>3.1.1.1</b></a></li>
    46624646                        <li><tt>charset</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.7"><b>3.1.1.2</b></a></li>
    4663                         <li><tt>codings</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.31"><b>5.3.4</b></a></li>
     4647                        <li><tt>codings</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.27"><b>5.3.4</b></a></li>
    46644648                        <li><tt>content-coding</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.10"><b>3.1.2.1</b></a></li>
    46654649                        <li><tt>Content-Encoding</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.11"><b>3.1.2.2</b></a></li>
     
    46674651                        <li><tt>Content-Location</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.14"><b>3.1.4.2</b></a></li>
    46684652                        <li><tt>Content-Type</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.8"><b>3.1.1.5</b></a></li>
    4669                         <li><tt>Date</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.55"><b>7.1.1.2</b></a></li>
    4670                         <li><tt>date1</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.41"><b>7.1.1.1</b></a></li>
    4671                         <li><tt>day</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.48"><b>7.1.1.1</b></a></li>
    4672                         <li><tt>day-name</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.46"><b>7.1.1.1</b></a></li>
    4673                         <li><tt>day-name-l</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.47"><b>7.1.1.1</b></a></li>
    4674                         <li><tt>delta-seconds</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.58"><b>7.1.3</b></a></li>
     4653                        <li><tt>Date</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.51"><b>7.1.1.2</b></a></li>
     4654                        <li><tt>date1</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.37"><b>7.1.1.1</b></a></li>
     4655                        <li><tt>day</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.44"><b>7.1.1.1</b></a></li>
     4656                        <li><tt>day-name</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.42"><b>7.1.1.1</b></a></li>
     4657                        <li><tt>day-name-l</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.43"><b>7.1.1.1</b></a></li>
     4658                        <li><tt>delta-seconds</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.54"><b>7.1.3</b></a></li>
    46754659                        <li><tt>Expect</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.17"><b>5.1.1</b></a></li>
    4676                         <li><tt>expect-name</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.21"><b>5.1.1</b></a></li>
    4677                         <li><tt>expect-param</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.19"><b>5.1.1</b></a></li>
    4678                         <li><tt>expect-value</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.20"><b>5.1.1</b></a></li>
    4679                         <li><tt>expectation</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.18"><b>5.1.1</b></a></li>
    4680                         <li><tt>From</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.34"><b>5.5.1</b></a></li>
    4681                         <li><tt>GMT</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.51"><b>7.1.1.1</b></a></li>
    4682                         <li><tt>hour</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.43"><b>7.1.1.1</b></a></li>
    4683                         <li><tt>HTTP-date</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.39"><b>7.1.1.1</b></a></li>
    4684                         <li><tt>IMF-fixdate</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.40"><b>7.1.1.1</b></a></li>
    4685                         <li><tt>language-range</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.33"><b>5.3.5</b></a></li>
     4660                        <li><tt>From</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.30"><b>5.5.1</b></a></li>
     4661                        <li><tt>GMT</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.47"><b>7.1.1.1</b></a></li>
     4662                        <li><tt>hour</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.39"><b>7.1.1.1</b></a></li>
     4663                        <li><tt>HTTP-date</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.35"><b>7.1.1.1</b></a></li>
     4664                        <li><tt>IMF-fixdate</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.36"><b>7.1.1.1</b></a></li>
     4665                        <li><tt>language-range</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.29"><b>5.3.5</b></a></li>
    46864666                        <li><tt>language-tag</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.12"><b>3.1.3.1</b></a></li>
    4687                         <li><tt>Location</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.56"><b>7.1.2</b></a></li>
    4688                         <li><tt>Max-Forwards</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.22"><b>5.1.2</b></a></li>
    4689                         <li><tt>media-range</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.26"><b>5.3.2</b></a></li>
     4667                        <li><tt>Location</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.52"><b>7.1.2</b></a></li>
     4668                        <li><tt>Max-Forwards</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.18"><b>5.1.2</b></a></li>
     4669                        <li><tt>media-range</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.22"><b>5.3.2</b></a></li>
    46904670                        <li><tt>media-type</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.1"><b>3.1.1.1</b></a></li>
    46914671                        <li><tt>method</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.15"><b>4.1</b></a></li>
    4692                         <li><tt>minute</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.44"><b>7.1.1.1</b></a></li>
    4693                         <li><tt>month</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.49"><b>7.1.1.1</b></a></li>
    4694                         <li><tt>obs-date</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.52"><b>7.1.1.1</b></a></li>
     4672                        <li><tt>minute</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.40"><b>7.1.1.1</b></a></li>
     4673                        <li><tt>month</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.45"><b>7.1.1.1</b></a></li>
     4674                        <li><tt>obs-date</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.48"><b>7.1.1.1</b></a></li>
    46954675                        <li><tt>parameter</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.4"><b>3.1.1.1</b></a></li>
    4696                         <li><tt>product</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.37"><b>5.5.3</b></a></li>
    4697                         <li><tt>product-version</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.38"><b>5.5.3</b></a></li>
    4698                         <li><tt>qvalue</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.24"><b>5.3.1</b></a></li>
    4699                         <li><tt>Referer</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.35"><b>5.5.2</b></a></li>
    4700                         <li><tt>Retry-After</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.57"><b>7.1.3</b></a></li>
    4701                         <li><tt>rfc850-date</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.53"><b>7.1.1.1</b></a></li>
    4702                         <li><tt>second</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.45"><b>7.1.1.1</b></a></li>
    4703                         <li><tt>Server</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.61"><b>7.4.2</b></a></li>
     4676                        <li><tt>product</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.33"><b>5.5.3</b></a></li>
     4677                        <li><tt>product-version</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.34"><b>5.5.3</b></a></li>
     4678                        <li><tt>qvalue</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.20"><b>5.3.1</b></a></li>
     4679                        <li><tt>Referer</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.31"><b>5.5.2</b></a></li>
     4680                        <li><tt>Retry-After</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.53"><b>7.1.3</b></a></li>
     4681                        <li><tt>rfc850-date</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.49"><b>7.1.1.1</b></a></li>
     4682                        <li><tt>second</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.41"><b>7.1.1.1</b></a></li>
     4683                        <li><tt>Server</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.57"><b>7.4.2</b></a></li>
    47044684                        <li><tt>subtype</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.3"><b>3.1.1.1</b></a></li>
    4705                         <li><tt>time-of-day</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.42"><b>7.1.1.1</b></a></li>
     4685                        <li><tt>time-of-day</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.38"><b>7.1.1.1</b></a></li>
    47064686                        <li><tt>type</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.2"><b>3.1.1.1</b></a></li>
    4707                         <li><tt>User-Agent</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.36"><b>5.5.3</b></a></li>
     4687                        <li><tt>User-Agent</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.32"><b>5.5.3</b></a></li>
    47084688                        <li><tt>value</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.6"><b>3.1.1.1</b></a></li>
    4709                         <li><tt>Vary</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.59"><b>7.1.4</b></a></li>
    4710                         <li><tt>weight</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.23"><b>5.3.1</b></a></li>
    4711                         <li><tt>year</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.50"><b>7.1.1.1</b></a></li>
     4689                        <li><tt>Vary</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.55"><b>7.1.4</b></a></li>
     4690                        <li><tt>weight</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.19"><b>5.3.1</b></a></li>
     4691                        <li><tt>year</tt>&nbsp;&nbsp;<a href="#rfc.iref.g.46"><b>7.1.1.1</b></a></li>
    47124692                     </ul>
    47134693                  </li>
     
    47334713            </li>
    47344714            <li><a id="rfc.index.O" href="#rfc.index.O"><b>O</b></a><ul>
    4735                   <li>OPTIONS method&nbsp;&nbsp;<a href="#rfc.xref.OPTIONS.1">4.1</a>, <a href="#rfc.iref.o.1"><b>4.3.7</b></a>, <a href="#rfc.xref.OPTIONS.2">5.1.2</a>, <a href="#rfc.xref.OPTIONS.3">8.1.3</a>, <a href="#rfc.extref.o.13">B</a>, <a href="#rfc.xref.OPTIONS.4">B</a>, <a href="#rfc.extref.o.14">B</a></li>
     4715                  <li>OPTIONS method&nbsp;&nbsp;<a href="#rfc.xref.OPTIONS.1">4.1</a>, <a href="#rfc.iref.o.1"><b>4.3.7</b></a>, <a href="#rfc.xref.OPTIONS.2">5.1.2</a>, <a href="#rfc.xref.OPTIONS.3">8.1.3</a>, <a href="#rfc.extref.o.11">B</a>, <a href="#rfc.xref.OPTIONS.4">B</a>, <a href="#rfc.extref.o.12">B</a></li>
    47364716               </ul>
    47374717            </li>
    47384718            <li><a id="rfc.index.P" href="#rfc.index.P"><b>P</b></a><ul>
    4739                   <li><em>Part1</em>&nbsp;&nbsp;<a href="#rfc.xref.Part1.1">1</a>, <a href="#rfc.xref.Part1.2">1.1</a>, <a href="#rfc.xref.Part1.3">1.2</a>, <a href="#rfc.xref.Part1.4">2</a>, <a href="#rfc.xref.Part1.5">2</a>, <a href="#rfc.xref.Part1.6">2</a>, <a href="#rfc.xref.Part1.7">3.1.2.1</a>, <a href="#rfc.xref.Part1.8">3.1.2.1</a>, <a href="#rfc.xref.Part1.9">3.1.2.1</a>, <a href="#rfc.xref.Part1.10">3.1.2.2</a>, <a href="#rfc.xref.Part1.11">3.1.4.1</a>, <a href="#rfc.xref.Part1.12">3.1.4.2</a>, <a href="#rfc.xref.Part1.13">3.3</a>, <a href="#rfc.xref.Part1.14">3.3</a>, <a href="#rfc.xref.Part1.15">4.3.6</a>, <a href="#rfc.xref.Part1.16">4.3.7</a>, <a href="#rfc.xref.Part1.17">4.3.8</a>, <a href="#rfc.xref.Part1.18">4.3.8</a>, <a href="#rfc.xref.Part1.19">5.1</a>, <a href="#rfc.xref.Part1.20">5.1</a>, <a href="#rfc.xref.Part1.21">5.1.1.1</a>, <a href="#rfc.xref.Part1.22">5.5.3</a>, <a href="#rfc.xref.Part1.23">6.2.2</a>, <a href="#rfc.xref.Part1.24">6.3.4</a>, <a href="#rfc.xref.Part1.25">6.5.7</a>, <a href="#rfc.xref.Part1.26">6.5.10</a>, <a href="#rfc.xref.Part1.27">6.5.12</a>, <a href="#rfc.xref.Part1.28">6.5.15</a>, <a href="#rfc.xref.Part1.29">6.6.6</a>, <a href="#rfc.xref.Part1.30">7.4.2</a>, <a href="#rfc.xref.Part1.31">8.1.2</a>, <a href="#rfc.xref.Part1.32">8.3.1</a>, <a href="#rfc.xref.Part1.33">8.3.1</a>, <a href="#rfc.xref.Part1.34">8.3.1</a>, <a href="#rfc.xref.Part1.35">8.3.1</a>, <a href="#rfc.xref.Part1.36">8.3.1</a>, <a href="#rfc.xref.Part1.37">8.3.1</a>, <a href="#rfc.xref.Part1.38">8.3.1</a>, <a href="#rfc.xref.Part1.39">8.4</a>, <a href="#rfc.xref.Part1.40">8.4.1</a>, <a href="#rfc.xref.Part1.41">8.4.1</a>, <a href="#rfc.xref.Part1.42">8.4.2</a>, <a href="#rfc.xref.Part1.43">8.4.2</a>, <a href="#rfc.xref.Part1.44">8.4.2</a>, <a href="#rfc.xref.Part1.45">8.4.2</a>, <a href="#rfc.xref.Part1.46">8.4.2</a>, <a href="#rfc.xref.Part1.47">9.4</a>, <a href="#rfc.xref.Part1.48">10</a>, <a href="#Part1"><b>11.1</b></a>, <a href="#rfc.xref.Part1.49">B</a>, <a href="#rfc.xref.Part1.50">C</a>, <a href="#rfc.xref.Part1.51">C</a>, <a href="#rfc.xref.Part1.52">C</a>, <a href="#rfc.xref.Part1.53">C</a>, <a href="#rfc.xref.Part1.54">C</a>, <a href="#rfc.xref.Part1.55">C</a>, <a href="#rfc.xref.Part1.56">C</a>, <a href="#rfc.xref.Part1.57">C</a>, <a href="#rfc.xref.Part1.58">C</a>, <a href="#rfc.xref.Part1.59">C</a>, <a href="#rfc.xref.Part1.60">C</a>, <a href="#rfc.xref.Part1.61">C</a>, <a href="#rfc.xref.Part1.62">D</a><ul>
     4719                  <li><em>Part1</em>&nbsp;&nbsp;<a href="#rfc.xref.Part1.1">1</a>, <a href="#rfc.xref.Part1.2">1.1</a>, <a href="#rfc.xref.Part1.3">1.2</a>, <a href="#rfc.xref.Part1.4">2</a>, <a href="#rfc.xref.Part1.5">2</a>, <a href="#rfc.xref.Part1.6">2</a>, <a href="#rfc.xref.Part1.7">3.1.2.1</a>, <a href="#rfc.xref.Part1.8">3.1.2.1</a>, <a href="#rfc.xref.Part1.9">3.1.2.1</a>, <a href="#rfc.xref.Part1.10">3.1.2.2</a>, <a href="#rfc.xref.Part1.11">3.1.4.1</a>, <a href="#rfc.xref.Part1.12">3.1.4.2</a>, <a href="#rfc.xref.Part1.13">3.3</a>, <a href="#rfc.xref.Part1.14">3.3</a>, <a href="#rfc.xref.Part1.15">4.3.6</a>, <a href="#rfc.xref.Part1.16">4.3.7</a>, <a href="#rfc.xref.Part1.17">4.3.8</a>, <a href="#rfc.xref.Part1.18">4.3.8</a>, <a href="#rfc.xref.Part1.19">5.1</a>, <a href="#rfc.xref.Part1.20">5.1</a>, <a href="#rfc.xref.Part1.21">5.1.1</a>, <a href="#rfc.xref.Part1.22">5.5.3</a>, <a href="#rfc.xref.Part1.23">6.2.2</a>, <a href="#rfc.xref.Part1.24">6.3.4</a>, <a href="#rfc.xref.Part1.25">6.5.7</a>, <a href="#rfc.xref.Part1.26">6.5.10</a>, <a href="#rfc.xref.Part1.27">6.5.12</a>, <a href="#rfc.xref.Part1.28">6.5.15</a>, <a href="#rfc.xref.Part1.29">6.6.6</a>, <a href="#rfc.xref.Part1.30">7.4.2</a>, <a href="#rfc.xref.Part1.31">8.1.2</a>, <a href="#rfc.xref.Part1.32">8.3.1</a>, <a href="#rfc.xref.Part1.33">8.3.1</a>, <a href="#rfc.xref.Part1.34">8.3.1</a>, <a href="#rfc.xref.Part1.35">8.3.1</a>, <a href="#rfc.xref.Part1.36">8.3.1</a>, <a href="#rfc.xref.Part1.37">8.3.1</a>, <a href="#rfc.xref.Part1.38">8.3.1</a>, <a href="#rfc.xref.Part1.39">8.4</a>, <a href="#rfc.xref.Part1.40">8.4.1</a>, <a href="#rfc.xref.Part1.41">8.4.1</a>, <a href="#rfc.xref.Part1.42">8.4.2</a>, <a href="#rfc.xref.Part1.43">8.4.2</a>, <a href="#rfc.xref.Part1.44">8.4.2</a>, <a href="#rfc.xref.Part1.45">8.4.2</a>, <a href="#rfc.xref.Part1.46">8.4.2</a>, <a href="#rfc.xref.Part1.47">9.4</a>, <a href="#rfc.xref.Part1.48">10</a>, <a href="#Part1"><b>11.1</b></a>, <a href="#rfc.xref.Part1.49">B</a>, <a href="#rfc.xref.Part1.50">C</a>, <a href="#rfc.xref.Part1.51">C</a>, <a href="#rfc.xref.Part1.52">C</a>, <a href="#rfc.xref.Part1.53">C</a>, <a href="#rfc.xref.Part1.54">C</a>, <a href="#rfc.xref.Part1.55">C</a>, <a href="#rfc.xref.Part1.56">C</a>, <a href="#rfc.xref.Part1.57">C</a>, <a href="#rfc.xref.Part1.58">C</a>, <a href="#rfc.xref.Part1.59">C</a>, <a href="#rfc.xref.Part1.60">C</a>, <a href="#rfc.xref.Part1.61">C</a>, <a href="#rfc.xref.Part1.62">D</a><ul>
    47404720                        <li><em>Section 1.2</em>&nbsp;&nbsp;<a href="#rfc.xref.Part1.62">D</a></li>
    47414721                        <li><em>Section 2.5</em>&nbsp;&nbsp;<a href="#rfc.xref.Part1.2">1.1</a></li>
     
    47624742                        <li><em>Section 5.7.2</em>&nbsp;&nbsp;<a href="#rfc.xref.Part1.24">6.3.4</a></li>
    47634743                        <li><em>Section 6.1</em>&nbsp;&nbsp;<a href="#rfc.xref.Part1.25">6.5.7</a>, <a href="#rfc.xref.Part1.37">8.3.1</a></li>
    4764                         <li><em>Section 6.6</em>&nbsp;&nbsp;<a href="#rfc.xref.Part1.21">5.1.1.1</a></li>
     4744                        <li><em>Section 6.6</em>&nbsp;&nbsp;<a href="#rfc.xref.Part1.21">5.1.1</a></li>
    47654745                        <li><em>Section 6.7</em>&nbsp;&nbsp;<a href="#rfc.xref.Part1.23">6.2.2</a>, <a href="#rfc.xref.Part1.28">6.5.15</a></li>
    47664746                        <li><em>Section 7</em>&nbsp;&nbsp;<a href="#rfc.xref.Part1.3">1.2</a>, <a href="#rfc.xref.Part1.33">8.3.1</a></li>
     
    49204900            </li>
    49214901            <li><a id="rfc.index.T" href="#rfc.index.T"><b>T</b></a><ul>
    4922                   <li>TRACE method&nbsp;&nbsp;<a href="#rfc.xref.TRACE.1">4.1</a>, <a href="#rfc.iref.t.1"><b>4.3.8</b></a>, <a href="#rfc.xref.TRACE.2">5.1.2</a>, <a href="#rfc.xref.TRACE.3">8.1.3</a>, <a href="#rfc.extref.t.50">B</a>, <a href="#rfc.xref.TRACE.4">B</a>, <a href="#rfc.extref.t.51">B</a></li>
     4902                  <li>TRACE method&nbsp;&nbsp;<a href="#rfc.xref.TRACE.1">4.1</a>, <a href="#rfc.iref.t.1"><b>4.3.8</b></a>, <a href="#rfc.xref.TRACE.2">5.1.2</a>, <a href="#rfc.xref.TRACE.3">8.1.3</a>, <a href="#rfc.extref.t.48">B</a>, <a href="#rfc.xref.TRACE.4">B</a>, <a href="#rfc.extref.t.49">B</a></li>
    49234903               </ul>
    49244904            </li>
  • draft-ietf-httpbis/latest/p2-semantics.xml

    r2376 r2380  
    18171817<section title="Expect" anchor="header.expect">
    18181818  <iref primary="true" item="Expect header field" x:for-anchor=""/>
     1819  <iref primary="true" item="100-continue (expect value)"/>
    18191820  <x:anchor-alias value="Expect"/>
    18201821  <x:anchor-alias value="expectation"/>
    1821   <x:anchor-alias value="expect-param"/>
    1822   <x:anchor-alias value="expect-name"/>
    1823   <x:anchor-alias value="expect-value"/>
    1824 <t>
    1825    The "Expect" header field in a request indicates that a certain set of
    1826    behaviors (expectations) need to be supported by all inbound servers in
    1827    order to properly handle this request.
    1828    A server that does not understand, or cannot comply with, one or more of
    1829    the received expectations &MUST; respond with an appropriate
    1830    <x:ref>4xx</x:ref> status code, indicating either
    1831    <x:ref>417 (Expectation Failed)</x:ref> or some other error status that was
    1832    determined prior to evaluating Expect.
    1833 </t>
    1834 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Expect"/><iref primary="true" item="Grammar" subitem="expectation"/><iref primary="true" item="Grammar" subitem="expect-param"/><iref primary="true" item="Grammar" subitem="expect-value"/><iref primary="true" item="Grammar" subitem="expect-name"/>
    1835   <x:ref>Expect</x:ref>       = 1#<x:ref>expectation</x:ref>
    1836  
    1837   <x:ref>expectation</x:ref>  = <x:ref>expect-name</x:ref> [ <x:ref>BWS</x:ref> "=" <x:ref>BWS</x:ref> <x:ref>expect-value</x:ref> ]
    1838                              *( <x:ref>OWS</x:ref> ";" [ <x:ref>OWS</x:ref> <x:ref>expect-param</x:ref> ] )
    1839   <x:ref>expect-param</x:ref> = <x:ref>expect-name</x:ref> [ <x:ref>BWS</x:ref> "=" <x:ref>BWS</x:ref> <x:ref>expect-value</x:ref> ]
    1840  
    1841   <x:ref>expect-name</x:ref>  = <x:ref>token</x:ref>
    1842   <x:ref>expect-value</x:ref> = <x:ref>token</x:ref> / <x:ref>quoted-string</x:ref>
     1822  <x:anchor-alias value="100-continue"/>
     1823<t>
     1824   The "Expect" header field in a request indicates a certain set of
     1825   behaviors (expectations) that need to be supported by the server in
     1826   order to properly handle this request. The only such expectation defined
     1827   by this specification is <x:ref>100-continue</x:ref>.
     1828</t>
     1829<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Expect"/>
     1830  <x:ref>Expect</x:ref>  = "100-continue"
    18431831</artwork></figure>
    18441832<t>
    1845    Comparison is case-insensitive for names (expect-name) and case-sensitive
    1846    for values (expect-value).
    1847 </t>
    1848 <t>
    1849    An intermediary forwarding a request &MUST; forward a received Expect
    1850    header field unless one of the expectations requires otherwise.
    1851 </t>
    1852 <t>
    1853    The Expect header field was added after the original publication of
    1854    HTTP/1.1 <xref target="RFC2068"/> and was not implemented by many of the
    1855    initial implementations. We are hoping that those implementations have long
    1856    since been replaced. However, it remains unlikely that any implementation
    1857    sending HTTP/1.0 messages will have implemented this field.
    1858    A server that receives an Expect header field in an HTTP/1.0 request &MUST;
    1859    respond with <x:ref>417 (Expectation Failed)</x:ref>, since this would
    1860    indicate that the message has been forwarded through an HTTP/1.0
    1861    intermediary that does not support Expect and won't be able to support
    1862    any expectation.
    1863 </t>
    1864 
    1865 <section title="100-continue Expectation" anchor="expect-100-continue">
    1866   <iref primary="true" item="100-continue (expect value)"/>
    1867   <iref primary="true" item="Expect Values" subitem="100-continue"/>
    1868   <x:anchor-alias value="100-continue"/>
    1869 <t>
    1870    The <x:dfn>100-continue</x:dfn> expectation informs recipients that the
    1871    client is about to send a (presumably large) payload in this request and
    1872    wishes to receive a <x:ref>100 (Continue)</x:ref> interim response if the
    1873    request-line and header fields are not sufficient to cause an immediate
     1833   The Expect field-value is case-insensitive.
     1834</t>
     1835<t>
     1836   A server that receives an Expect field-value other than
     1837   <x:ref>100-continue</x:ref> &MAY; respond with a
     1838   <x:ref>417 (Expectation Failed)</x:ref> status code to indicate that the
     1839   unexpected expectation cannot be met.
     1840</t>
     1841<t>
     1842   A <x:dfn>100-continue</x:dfn> expectation informs recipients that the
     1843   client is about to send a (presumably large) message body in this request
     1844   and wishes to receive a <x:ref>100 (Continue)</x:ref> interim response if
     1845   the request-line and header fields are not sufficient to cause an immediate
    18741846   success, redirect, or error response. This allows the client to wait for an
    1875    indication that it is worthwhile to send the payload body before actually
    1876    doing so, which can improve efficiency when the payload body is huge or
     1847   indication that it is worthwhile to send the message body before actually
     1848   doing so, which can improve efficiency when the message body is huge or
    18771849   when the client anticipates that an error is likely (e.g., when sending a
    18781850   state-changing method, for the first time, without previously verified
    18791851   authentication credentials).
     1852</t>
     1853<t>
     1854   For example, a request that begins with
     1855</t>
     1856<figure><artwork type="message/http; msgtype=&#34;request&#34;" x:indent-with="  ">
     1857PUT /somewhere/fun HTTP/1.1
     1858Host: origin.example.com
     1859Content-Type: video/h264
     1860Content-Length: 1234567890987
     1861Expect: 100-continue
     1862
     1863</artwork></figure>
     1864<t>
     1865   allows the origin server to immediately respond with an error message, such
     1866   as <x:ref>401 (Unauthorized)</x:ref> or <x:ref>405 (Method Not Allowed)</x:ref>,
     1867   before the client starts filling the pipes with an unnecessary data
     1868   transfer.
    18801869</t>
    18811870<t>
     
    18841873    <t>
    18851874     A client &MUST-NOT; generate a 100-continue expectation in a request that
    1886      does not include a payload body.
     1875     does not include a message body.
    18871876    </t>
    18881877    <t>
    18891878     A client that will wait for a <x:ref>100 (Continue)</x:ref> response
    1890      before sending the request payload body &MUST; send an
     1879     before sending the request message body &MUST; send an
    18911880     <x:ref>Expect</x:ref> header field containing a 100-continue expectation.
    18921881    </t>
     
    18941883     A client that sends a 100-continue expectation is not required to wait
    18951884     for any specific length of time; such a client &MAY; proceed to send the
    1896      payload body even if it has not yet received a response. Furthermore,
    1897      since <x:ref>100 (Continue)</x:ref> responses cannot be sent to an
    1898      HTTP/1.0 intermediary, and since some servers have failed to implement
    1899      Expect, such a client &SHOULD-NOT; wait for an indefinite period before
    1900      sending the payload body.
    1901     </t>
    1902     <t>
    1903      A client that sends a 100-continue expectation &MUST-NOT; send an
    1904      expect-value or expect-param within that expectation.
     1885     message body even if it has not yet received a response. Furthermore,
     1886     since <x:ref>100 (Continue)</x:ref> responses cannot be sent through an
     1887     HTTP/1.0 intermediary, such a client &SHOULD-NOT; wait for an indefinite
     1888     period before sending the message body.
    19051889    </t>
    19061890    <t>
     
    19141898</t>
    19151899<t>
    1916    Requirements for origin servers:
     1900   Requirements for servers:
    19171901  <list style="symbols">
    19181902    <t>
    1919      Upon receiving a request that includes a 100-continue expectation, an
    1920      origin server &MUST; either respond with <x:ref>100 (Continue)</x:ref>
    1921      status code and continue to read from the input stream, or respond with a
    1922      final status code. The origin server &MUST-NOT; wait for the payload body
    1923      before sending the <x:ref>100 (Continue)</x:ref> response.
     1903     A server that receives a 100-continue expectation in an HTTP/1.0 request
     1904     &MUST; ignore that expectation.
    19241905    </t>
    19251906    <t>
    1926      An origin server &MUST-NOT; send a <x:ref>100 (Continue)</x:ref> response
    1927      if such a request comes from an HTTP/1.0 client.
     1907     A server &MAY; omit sending a <x:ref>100 (Continue)</x:ref> response if
     1908     it has already received some or all of the message body for the
     1909     corresponding request, or if the framing indicates that there is no
     1910     message body.
    19281911    </t>
    19291912    <t>
    1930      An origin server &MAY; omit a <x:ref>100 (Continue)</x:ref> response if
    1931      it has already received some or all of the payload body for the
    1932      corresponding request.
     1913     A server that sends a <x:ref>100 (Continue)</x:ref> response &MUST;
     1914     ultimately send a final status code, once the message body is received
     1915     and processed, unless the connection is closed prematurely.
    19331916    </t>
    19341917    <t>
    1935      An origin server that sends a <x:ref>100 (Continue)</x:ref> response
    1936      &MUST; ultimately send a final status code, once the payload body is
    1937      received and processed, unless the connection is closed prematurely.
    1938     </t>
    1939     <t>
    1940      An origin server that responds with a final status code before reading
    1941      the entire payload body &SHOULD; indicate in that response whether it
     1918     A server that responds with a final status code before reading
     1919     the entire message body &SHOULD; indicate in that response whether it
    19421920     intends to close the connection or continue reading and discarding the
    1943      request payload body (see &persistent-tear-down;).
     1921     request message (see &persistent-tear-down;).
    19441922    </t>
    19451923  </list>
    19461924</t>
    19471925<t>
    1948    Requirements for proxies:
    1949   <list style="symbols">
    1950     <t>
    1951      A proxy that forwards a request received with a 100-continue expectation
    1952      &MUST; send a 100-continue expectation in the forwarded request.
    1953     </t>
    1954     <t>
    1955      A proxy &MUST-NOT; forward a request received with a 100-continue
    1956      expectation if it knows the advertised HTTP version of the next-hop
    1957      server is HTTP/1.0; instead, such a proxy &MUST; respond with a
    1958      <x:ref>417 (Expectation Failed)</x:ref> status code.
    1959     </t>
    1960     <t>
    1961      Proxies &SHOULD; maintain a record of the HTTP version numbers received
    1962      from recently-referenced next-hop servers.
    1963     </t>
    1964   </list>
    1965 </t>
    1966 </section>
     1926   An origin server &MUST;, upon receiving an HTTP/1.1 (or later) request-line
     1927   and a complete header section that contains a 100-continue expectation and
     1928   indicates a request message body will follow, either send an immediate
     1929   response with a final status code, if that status can be determined by
     1930   examining just the request-line and header fields, or send an immediate
     1931   <x:ref>100 (Continue)</x:ref> response to encourage the client to send the
     1932   request's message body. The origin server &MUST-NOT; wait for the message
     1933   body before sending the <x:ref>100 (Continue)</x:ref> response.
     1934</t>
     1935<t>
     1936   A proxy &MUST;, upon receiving an HTTP/1.1 (or later) request-line
     1937   and a complete header section that contains a 100-continue expectation and
     1938   indicates a request message body will follow, either send an immediate
     1939   response with a final status code, if that status can be determined by
     1940   examining just the request-line and header fields, or begin forwarding the
     1941   request toward the origin server by sending a corresponding request-line
     1942   and header section to the next inbound server. If the proxy believes (from
     1943   configuration or past interaction) that the next inbound server only
     1944   supports HTTP/1.0, the proxy &MAY; generate an immediate
     1945   <x:ref>100 (Continue)</x:ref> response to encourage the client to begin
     1946   sending the message body.
     1947</t>
     1948<x:note>
     1949  <t>
     1950    &Note; The Expect header field was added after the original publication of
     1951    HTTP/1.1 <xref target="RFC2068"/> as both the means to request an interim
     1952    100 response and the general mechanism for indicating must-understand
     1953    extensions. However, the extension mechanism has not been used by clients
     1954    and the must-understand requirements have not been implemented by many
     1955    servers, rendering the extension mechanism useless. This specification has
     1956    removed the extension mechanism in order to simplify the definition and
     1957    processing of 100-continue.
     1958  </t>
     1959</x:note>
    19671960</section>
    19681961
     
    27592752   includes a <x:ref>100-continue</x:ref> expectation, the 100 response
    27602753   indicates that the server wishes to receive the request payload body,
    2761    as described in <xref target="expect-100-continue"/>.  The client
     2754   as described in <xref target="header.expect"/>.  The client
    27622755   ought to continue sending the request and discard the 100 response.
    27632756</t>
     
    52075200  </front>
    52085201  <seriesInfo name="Internet-Draft" value="draft-ietf-httpbis-p7-auth-&ID-VERSION;"/>
    5209   <x:source href="p7-auth.xml" basename="p7-auth"/>
     5202  <x:source href="p7-auth.xml" basename="p7-auth">
     5203     <x:defines>401 (Unauthorized)</x:defines>
     5204  </x:source>
    52105205</reference>
    52115206
     
    61866181<x:ref>Date</x:ref> = HTTP-date
    61876182
    6188 <x:ref>Expect</x:ref> = *( "," OWS ) expectation *( OWS "," [ OWS expectation ] )
     6183<x:ref>Expect</x:ref> = "100-continue"
    61896184
    61906185<x:ref>From</x:ref> = mailbox
     
    62446239 / %x53.75.6E.64.61.79 ; Sunday
    62456240<x:ref>delta-seconds</x:ref> = 1*DIGIT
    6246 
    6247 <x:ref>expect-name</x:ref> = token
    6248 <x:ref>expect-param</x:ref> = expect-name [ BWS "=" BWS expect-value ]
    6249 <x:ref>expect-value</x:ref> = token / quoted-string
    6250 <x:ref>expectation</x:ref> = expect-name [ BWS "=" BWS expect-value ] *( OWS ";" [
    6251  OWS expect-param ] )
    62526241
    62536242<x:ref>field-name</x:ref> = &lt;comment, defined in [Part1], Section 3.2&gt;
Note: See TracChangeset for help on using the changeset viewer.