Changeset 337
- Timestamp:
- 10/11/08 21:32:01 (14 years ago)
- Location:
- draft-ietf-httpbis/latest-roy
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest-roy/p1-messaging.html
r335 r337 380 380 <link rel="Appendix" title="C Compatibility with Previous Versions" href="#rfc.section.C"> 381 381 <link rel="Appendix" title="D Change Log (to be removed by RFC Editor before publication)" href="#rfc.section.D"> 382 <link rel="Appendix" title="E Terminology" href="#rfc.section.E"> 382 383 <meta name="generator" content="http://greenbytes.de/tech/webdav/rfc2629.xslt, Revision 1.400, 2008-10-10 14:04:14, XSLT vendor: SAXON 8.9 from Saxonica http://www.saxonica.com/"> 383 384 <link rel="schema.DC" href="http://purl.org/dc/elements/1.1/"> … … 476 477 <tr> 477 478 <td class="header left"></td> 478 <td class="header right">November 6, 2008</td>479 <td class="header right">November 10, 2008</td> 479 480 </tr> 480 481 </table> … … 517 518 <li class="tocline1">1.1 <a href="#intro.purpose">Purpose</a></li> 518 519 <li class="tocline1">1.2 <a href="#intro.requirements">Requirements</a></li> 519 <li class="tocline1">1.3 <a href="#intro.terminology">Terminology</a></li> 520 <li class="tocline1">1.4 <a href="#intro.overall.operation">Overall Operation</a></li> 520 <li class="tocline1">1.3 <a href="#intro.overall.operation">Overall Operation</a></li> 521 521 </ul> 522 522 </li> … … 657 657 </ul> 658 658 </li> 659 <li class="tocline0">E. <a href="#intro.terminology">Terminology</a></li> 659 660 <li class="tocline0"><a href="#rfc.ipr">Intellectual Property and Copyright Statements</a></li> 660 661 <li class="tocline0"><a href="#rfc.index">Index</a></li> … … 695 696 <p id="rfc.section.1.2.p.2">An implementation is not compliant if it fails to satisfy one or more of the <em class="bcp14">MUST</em> or <em class="bcp14">REQUIRED</em> level requirements for the protocols it implements. An implementation that satisfies all the <em class="bcp14">MUST</em> or <em class="bcp14">REQUIRED</em> level and all the <em class="bcp14">SHOULD</em> level requirements for its protocols is said to be "unconditionally compliant"; one that satisfies all the <em class="bcp14">MUST</em> level requirements but not all the <em class="bcp14">SHOULD</em> level requirements for its protocols is said to be "conditionally compliant." 696 697 </p> 697 <h2 id="rfc.section.1.3"><a href="#rfc.section.1.3">1.3</a> <a id="intro.terminology" href="#intro.terminology">Terminology</a></h2> 698 <p id="rfc.section.1.3.p.1">This specification uses a number of terms to refer to the roles played by participants in, and objects of, the HTTP communication.</p> 699 <p id="rfc.section.1.3.p.2"> <span id="rfc.iref.c.1"></span> <dfn>connection</dfn> 700 </p> 701 <dl class="empty"> 702 <dd>A transport layer virtual circuit established between two programs for the purpose of communication.</dd> 703 </dl> 704 <p id="rfc.section.1.3.p.3"> <span id="rfc.iref.m.1"></span> <dfn>message</dfn> 705 </p> 706 <dl class="empty"> 707 <dd>The basic unit of HTTP communication, consisting of a structured sequence of octets matching the syntax defined in <a href="#http.message" title="HTTP Message">Section 4</a> and transmitted via the connection. 708 </dd> 709 </dl> 710 <p id="rfc.section.1.3.p.4"> <span id="rfc.iref.r.1"></span> <dfn>request</dfn> 711 </p> 712 <dl class="empty"> 713 <dd>An HTTP request message, as defined in <a href="#request" title="Request">Section 5</a>. 714 </dd> 715 </dl> 716 <p id="rfc.section.1.3.p.5"> <span id="rfc.iref.r.2"></span> <dfn>response</dfn> 717 </p> 718 <dl class="empty"> 719 <dd>An HTTP response message, as defined in <a href="#response" title="Response">Section 6</a>. 720 </dd> 721 </dl> 722 <p id="rfc.section.1.3.p.6"> <span id="rfc.iref.r.3"></span> <dfn>resource</dfn> 723 </p> 724 <dl class="empty"> 725 <dd>A network data object or service that can be identified by a URI, as defined in <a href="#uri" title="Uniform Resource Identifiers">Section 3.2</a>. Resources may be available in multiple representations (e.g. multiple languages, data formats, size, and resolutions) or 726 vary in other ways. 727 </dd> 728 </dl> 729 <p id="rfc.section.1.3.p.7"> <span id="rfc.iref.e.1"></span> <dfn>entity</dfn> 730 </p> 731 <dl class="empty"> 732 <dd>The information transferred as the payload of a request or response. An entity consists of metainformation in the form of 733 entity-header fields and content in the form of an entity-body, as described in <a href="p3-payload.html#entity" title="Entity">Section 4</a> of <a href="#Part3" id="rfc.xref.Part3.1"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>. 734 </dd> 735 </dl> 736 <p id="rfc.section.1.3.p.8"> <span id="rfc.iref.r.4"></span> <dfn>representation</dfn> 737 </p> 738 <dl class="empty"> 739 <dd>An entity included with a response that is subject to content negotiation, as described in <a href="p3-payload.html#content.negotiation" title="Content Negotiation">Section 5</a> of <a href="#Part3" id="rfc.xref.Part3.2"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>. There may exist multiple representations associated with a particular response status. 740 </dd> 741 </dl> 742 <p id="rfc.section.1.3.p.9"> <span id="rfc.iref.c.2"></span> <dfn>content negotiation</dfn> 743 </p> 744 <dl class="empty"> 745 <dd>The mechanism for selecting the appropriate representation when servicing a request, as described in <a href="p3-payload.html#content.negotiation" title="Content Negotiation">Section 5</a> of <a href="#Part3" id="rfc.xref.Part3.3"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>. The representation of entities in any response can be negotiated (including error responses). 746 </dd> 747 </dl> 748 <p id="rfc.section.1.3.p.10"> <span id="rfc.iref.v.1"></span> <dfn>variant</dfn> 749 </p> 750 <dl class="empty"> 751 <dd>A resource may have one, or more than one, representation(s) associated with it at any given instant. Each of these representations 752 is termed a `variant'. Use of the term `variant' does not necessarily imply that the resource is subject to content negotiation. 753 </dd> 754 </dl> 755 <p id="rfc.section.1.3.p.11"> <span id="rfc.iref.c.3"></span> <dfn>client</dfn> 756 </p> 757 <dl class="empty"> 758 <dd>A program that establishes connections for the purpose of sending requests.</dd> 759 </dl> 760 <p id="rfc.section.1.3.p.12"> <span id="rfc.iref.u.1"></span> <dfn>user agent</dfn> 761 </p> 762 <dl class="empty"> 763 <dd>The client which initiates a request. These are often browsers, editors, spiders (web-traversing robots), or other end user 764 tools. 765 </dd> 766 </dl> 767 <p id="rfc.section.1.3.p.13"> <span id="rfc.iref.s.1"></span> <dfn>server</dfn> 768 </p> 769 <dl class="empty"> 770 <dd>An application program that accepts connections in order to service requests by sending back responses. Any given program 771 may be capable of being both a client and a server; our use of these terms refers only to the role being performed by the 772 program for a particular connection, rather than to the program's capabilities in general. Likewise, any server may act as 773 an origin server, proxy, gateway, or tunnel, switching behavior based on the nature of each request. 774 </dd> 775 </dl> 776 <p id="rfc.section.1.3.p.14"> <span id="rfc.iref.o.1"></span> <dfn>origin server</dfn> 777 </p> 778 <dl class="empty"> 779 <dd>The server on which a given resource resides or is to be created.</dd> 780 </dl> 781 <p id="rfc.section.1.3.p.15"> <span id="rfc.iref.p.1"></span> <dfn>proxy</dfn> 782 </p> 783 <dl class="empty"> 784 <dd>An intermediary program which acts as both a server and a client for the purpose of making requests on behalf of other clients. 785 Requests are serviced internally or by passing them on, with possible translation, to other servers. A proxy <em class="bcp14">MUST</em> implement both the client and server requirements of this specification. A "transparent proxy" is a proxy that does not modify 786 the request or response beyond what is required for proxy authentication and identification. A "non-transparent proxy" is 787 a proxy that modifies the request or response in order to provide some added service to the user agent, such as group annotation 788 services, media type transformation, protocol reduction, or anonymity filtering. Except where either transparent or non-transparent 789 behavior is explicitly stated, the HTTP proxy requirements apply to both types of proxies. 790 </dd> 791 </dl> 792 <p id="rfc.section.1.3.p.16"> <span id="rfc.iref.g.1"></span> <dfn>gateway</dfn> 793 </p> 794 <dl class="empty"> 795 <dd>A server which acts as an intermediary for some other server. Unlike a proxy, a gateway receives requests as if it were the 796 origin server for the requested resource; the requesting client may not be aware that it is communicating with a gateway. 797 </dd> 798 </dl> 799 <p id="rfc.section.1.3.p.17"> <span id="rfc.iref.t.1"></span> <dfn>tunnel</dfn> 800 </p> 801 <dl class="empty"> 802 <dd>An intermediary program which is acting as a blind relay between two connections. Once active, a tunnel is not considered 803 a party to the HTTP communication, though the tunnel may have been initiated by an HTTP request. The tunnel ceases to exist 804 when both ends of the relayed connections are closed. 805 </dd> 806 </dl> 807 <p id="rfc.section.1.3.p.18"> <span id="rfc.iref.c.4"></span> <dfn>cache</dfn> 808 </p> 809 <dl class="empty"> 810 <dd>A program's local store of response messages and the subsystem that controls its message storage, retrieval, and deletion. 811 A cache stores cacheable responses in order to reduce the response time and network bandwidth consumption on future, equivalent 812 requests. Any client or server may include a cache, though a cache cannot be used by a server that is acting as a tunnel. 813 </dd> 814 </dl> 815 <p id="rfc.section.1.3.p.19"> <span id="rfc.iref.c.5"></span> <dfn>cacheable</dfn> 816 </p> 817 <dl class="empty"> 818 <dd>A response is cacheable if a cache is allowed to store a copy of the response message for use in answering subsequent requests. 819 The rules for determining the cacheability of HTTP responses are defined in <a href="p6-cache.html#caching" title="Introduction">Section 1</a> of <a href="#Part6" id="rfc.xref.Part6.1"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>. Even if a resource is cacheable, there may be additional constraints on whether a cache can use the cached copy for a particular 820 request. 821 </dd> 822 </dl> 823 <p id="rfc.section.1.3.p.20"> <span id="rfc.iref.u.2"></span> <span id="rfc.iref.d.1"></span> <dfn>upstream</dfn>/<dfn>downstream</dfn> 824 </p> 825 <dl class="empty"> 826 <dd>Upstream and downstream describe the flow of a message: all messages flow from upstream to downstream.</dd> 827 </dl> 828 <p id="rfc.section.1.3.p.21"> <span id="rfc.iref.i.1"></span> <span id="rfc.iref.o.2"></span> <dfn>inbound</dfn>/<dfn>outbound</dfn> 829 </p> 830 <dl class="empty"> 831 <dd>Inbound and outbound refer to the request and response paths for messages: "inbound" means "traveling toward the origin server", 832 and "outbound" means "traveling toward the user agent" 833 </dd> 834 </dl> 835 <h2 id="rfc.section.1.4"><a href="#rfc.section.1.4">1.4</a> <a id="intro.overall.operation" href="#intro.overall.operation">Overall Operation</a></h2> 836 <p id="rfc.section.1.4.p.1">HTTP is a request/response protocol. A client sends a request to the server in the form of a request method, URI, and protocol 698 <h2 id="rfc.section.1.3"><a href="#rfc.section.1.3">1.3</a> <a id="intro.overall.operation" href="#intro.overall.operation">Overall Operation</a></h2> 699 <p id="rfc.section.1.3.p.1">HTTP is a request/response protocol. A client sends a request to the server in the form of a request method, URI, and protocol 837 700 version, followed by a MIME-like message containing request modifiers, client information, and possible body content over 838 701 a connection with a server. The server responds with a status line, including the message's protocol version and a success 839 702 or error code, followed by a MIME-like message containing server information, entity metainformation, and possible entity-body 840 content. The relationship between HTTP and MIME is described in <a href="p3-payload.html#differences.between.http.entities.and.rfc.2045.entities" title="Differences Between HTTP Entities and RFC 2045 Entities">Appendix A</a> of <a href="#Part3" id="rfc.xref.Part3. 4"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>.841 </p> 842 <p id="rfc.section.1. 4.p.2">Most HTTP communication is initiated by a user agent and consists of a request to be applied to a resource on some origin703 content. The relationship between HTTP and MIME is described in <a href="p3-payload.html#differences.between.http.entities.and.rfc.2045.entities" title="Differences Between HTTP Entities and RFC 2045 Entities">Appendix A</a> of <a href="#Part3" id="rfc.xref.Part3.1"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>. 704 </p> 705 <p id="rfc.section.1.3.p.2">Most HTTP communication is initiated by a user agent and consists of a request to be applied to a resource on some origin 843 706 server. In the simplest case, this may be accomplished via a single connection (v) between the user agent (UA) and the origin 844 707 server (O). … … 847 710 UA -------------------v------------------- O 848 711 <----------------------- response chain 849 </pre><p id="rfc.section.1. 4.p.4">A more complicated situation occurs when one or more intermediaries are present in the request/response chain. There are three712 </pre><p id="rfc.section.1.3.p.4">A more complicated situation occurs when one or more intermediaries are present in the request/response chain. There are three 850 713 common forms of intermediary: proxy, gateway, and tunnel. A proxy is a forwarding agent, receiving requests for a URI in its 851 714 absolute form, rewriting all or part of the message, and forwarding the reformatted request toward the server identified by … … 858 721 UA -----v----- A -----v----- B -----v----- C -----v----- O 859 722 <------------------------------------- response chain 860 </pre><p id="rfc.section.1. 4.p.6">The figure above shows three intermediaries (A, B, and C) between the user agent and origin server. A request or response723 </pre><p id="rfc.section.1.3.p.6">The figure above shows three intermediaries (A, B, and C) between the user agent and origin server. A request or response 861 724 message that travels the whole chain will pass through four separate connections. This distinction is important because some 862 725 HTTP communication options may apply only to the connection with the nearest, non-tunnel neighbor, only to the end-points … … 865 728 to servers other than C, at the same time that it is handling A's request. 866 729 </p> 867 <p id="rfc.section.1. 4.p.7">Any party to the communication which is not acting as a tunnel may employ an internal cache for handling requests. The effect730 <p id="rfc.section.1.3.p.7">Any party to the communication which is not acting as a tunnel may employ an internal cache for handling requests. The effect 868 731 of a cache is that the request/response chain is shortened if one of the participants along the chain has a cached response 869 732 applicable to that request. The following illustrates the resulting chain if B has a cached copy of an earlier response from … … 873 736 UA -----v----- A -----v----- B - - - - - - C - - - - - - O 874 737 <--------- response chain 875 </pre><p id="rfc.section.1. 4.p.9">Not all responses are usefully cacheable, and some requests may contain modifiers which place special requirements on cache876 behavior. HTTP requirements for cache behavior and cacheable responses are defined in <a href="p6-cache.html#caching" title="Introduction">Section 1</a> of <a href="#Part6" id="rfc.xref.Part6. 2"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>.877 </p> 878 <p id="rfc.section.1. 4.p.10">In fact, there are a wide variety of architectures and configurations of caches and proxies currently being experimented with738 </pre><p id="rfc.section.1.3.p.9">Not all responses are usefully cacheable, and some requests may contain modifiers which place special requirements on cache 739 behavior. HTTP requirements for cache behavior and cacheable responses are defined in <a href="p6-cache.html#caching" title="Introduction">Section 1</a> of <a href="#Part6" id="rfc.xref.Part6.1"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>. 740 </p> 741 <p id="rfc.section.1.3.p.10">In fact, there are a wide variety of architectures and configurations of caches and proxies currently being experimented with 879 742 or deployed across the World Wide Web. These systems include national hierarchies of proxy caches to save transoceanic bandwidth, 880 743 systems that broadcast or multicast cache entries, organizations that distribute subsets of cached data via CD-ROM, and so … … 884 747 failing that, at least reliable indications of failure. 885 748 </p> 886 <p id="rfc.section.1. 4.p.11">HTTP communication usually takes place over TCP/IP connections. The default port is TCP 80 (<<a href="http://www.iana.org/assignments/port-numbers">http://www.iana.org/assignments/port-numbers</a>>), but other ports can be used. This does not preclude HTTP from being implemented on top of any other protocol on the Internet,749 <p id="rfc.section.1.3.p.11">HTTP communication usually takes place over TCP/IP connections. The default port is TCP 80 (<<a href="http://www.iana.org/assignments/port-numbers">http://www.iana.org/assignments/port-numbers</a>>), but other ports can be used. This does not preclude HTTP from being implemented on top of any other protocol on the Internet, 887 750 or on other networks. HTTP only presumes a reliable transport; any protocol that provides such guarantees can be used; the 888 751 mapping of the HTTP/1.1 request and response structures onto the transport data units of the protocol in question is outside 889 752 the scope of this specification. 890 753 </p> 891 <p id="rfc.section.1. 4.p.12">In HTTP/1.0, most implementations used a new connection for each request/response exchange. In HTTP/1.1, a connection may754 <p id="rfc.section.1.3.p.12">In HTTP/1.0, most implementations used a new connection for each request/response exchange. In HTTP/1.1, a connection may 892 755 be used for one or more request/response exchanges, although connections may be closed for a variety of reasons (see <a href="#persistent.connections" title="Persistent Connections">Section 7.1</a>). 893 756 </p> … … 909 772 least one; and "1#2element" allows one or two. 910 773 </p> 911 <div id="rfc.iref.i. 2"></div>774 <div id="rfc.iref.i.1"></div> 912 775 <h3 id="rfc.section.2.1.2"><a href="#rfc.section.2.1.2">2.1.2</a> <a id="implied.LWS" href="#implied.LWS">implied *LWS</a></h3> 913 776 <p id="rfc.section.2.1.2.p.1">The grammar described by this specification is word-based. Except where noted otherwise, linear white space (LWS) can be included … … 922 785 </p> 923 786 </div> 924 <div id="rfc.figure.u.6"></div><pre class="inline"><span id="rfc.iref.g. 2"></span><span id="rfc.iref.g.3"></span><span id="rfc.iref.g.4"></span><span id="rfc.iref.g.5"></span><span id="rfc.iref.g.6"></span><span id="rfc.iref.g.7"></span><span id="rfc.iref.g.8"></span><span id="rfc.iref.g.9"></span><span id="rfc.iref.g.10"></span><span id="rfc.iref.g.11"></span> <a href="#core.rules" class="smpl">OCTET</a> = %x00-FF787 <div id="rfc.figure.u.6"></div><pre class="inline"><span id="rfc.iref.g.1"></span><span id="rfc.iref.g.2"></span><span id="rfc.iref.g.3"></span><span id="rfc.iref.g.4"></span><span id="rfc.iref.g.5"></span><span id="rfc.iref.g.6"></span><span id="rfc.iref.g.7"></span><span id="rfc.iref.g.8"></span><span id="rfc.iref.g.9"></span><span id="rfc.iref.g.10"></span> <a href="#core.rules" class="smpl">OCTET</a> = %x00-FF 925 788 ; any 8-bit sequence of data 926 789 <a href="#core.rules" class="smpl">CHAR</a> = %x01-7F … … 944 807 </pre><div id="rule.CRLF"> 945 808 <p id="rfc.section.2.2.p.3"> HTTP/1.1 defines the sequence CR LF as the end-of-line marker for all protocol elements except the entity-body (see <a href="#tolerant.applications" title="Tolerant Applications">Appendix A</a> for tolerant applications). The end-of-line marker within an entity-body is defined by its associated media type, as described 946 in <a href="p3-payload.html#media.types" title="Media Types">Section 3.3</a> of <a href="#Part3" id="rfc.xref.Part3. 5"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>.809 in <a href="p3-payload.html#media.types" title="Media Types">Section 3.3</a> of <a href="#Part3" id="rfc.xref.Part3.2"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>. 947 810 </p> 948 811 </div> 949 <div id="rfc.figure.u.7"></div><pre class="inline"><span id="rfc.iref.g.1 2"></span> <a href="#rule.CRLF" class="smpl">CRLF</a> = <a href="#core.rules" class="smpl">CR</a> LF812 <div id="rfc.figure.u.7"></div><pre class="inline"><span id="rfc.iref.g.11"></span> <a href="#rule.CRLF" class="smpl">CRLF</a> = <a href="#core.rules" class="smpl">CR</a> LF 950 813 </pre><div id="rule.LWS"> 951 814 <p id="rfc.section.2.2.p.5"> HTTP/1.1 header field values can be folded onto multiple lines if the continuation line begins with a space or horizontal … … 953 816 </p> 954 817 </div> 955 <div id="rfc.figure.u.8"></div><pre class="inline"><span id="rfc.iref.g.1 3"></span> <a href="#rule.LWS" class="smpl">LWS</a> = [<a href="#rule.CRLF" class="smpl">CRLF</a>] 1*( <a href="#core.rules" class="smpl">SP</a> / <a href="#core.rules" class="smpl">HTAB</a> )818 <div id="rfc.figure.u.8"></div><pre class="inline"><span id="rfc.iref.g.12"></span> <a href="#rule.LWS" class="smpl">LWS</a> = [<a href="#rule.CRLF" class="smpl">CRLF</a>] 1*( <a href="#core.rules" class="smpl">SP</a> / <a href="#core.rules" class="smpl">HTAB</a> ) 956 819 </pre><div id="rule.TEXT"> 957 820 <p id="rfc.section.2.2.p.7"> The TEXT rule is only used for descriptive field contents and values that are not intended to be interpreted by the message … … 959 822 </p> 960 823 </div> 961 <div id="rfc.figure.u.9"></div><pre class="inline"><span id="rfc.iref.g.1 4"></span> <a href="#rule.TEXT" class="smpl">TEXT</a> = %x20-7E / %x80-FF / <a href="#rule.LWS" class="smpl">LWS</a>824 <div id="rfc.figure.u.9"></div><pre class="inline"><span id="rfc.iref.g.13"></span> <a href="#rule.TEXT" class="smpl">TEXT</a> = %x20-7E / %x80-FF / <a href="#rule.LWS" class="smpl">LWS</a> 962 825 ; any <a href="#core.rules" class="smpl">OCTET</a> except <a href="#core.rules" class="smpl">CTL</a>s, but including <a href="#rule.LWS" class="smpl">LWS</a> 963 826 </pre><p id="rfc.section.2.2.p.9">A CRLF is allowed in the definition of TEXT only as part of a header field continuation. It is expected that the folding LWS … … 967 830 <p id="rfc.section.2.2.p.10"> Hexadecimal numeric characters are used in several protocol elements.</p> 968 831 </div> 969 <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g.1 5"></span> <a href="#rule.HEXDIG" class="smpl">HEXDIG</a> = "A" / "B" / "C" / "D" / "E" / "F"832 <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g.14"></span> <a href="#rule.HEXDIG" class="smpl">HEXDIG</a> = "A" / "B" / "C" / "D" / "E" / "F" 970 833 / "a" / "b" / "c" / "d" / "e" / "f" / <a href="#core.rules" class="smpl">DIGIT</a> 971 834 </pre><div id="rule.token.separators"> … … 973 836 </p> 974 837 </div> 975 <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.1 6"></span><span id="rfc.iref.g.17"></span><span id="rfc.iref.g.18"></span> <a href="#rule.token.separators" class="smpl">separators</a> = "(" / ")" / "<" / ">" / "@"838 <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.15"></span><span id="rfc.iref.g.16"></span><span id="rfc.iref.g.17"></span> <a href="#rule.token.separators" class="smpl">separators</a> = "(" / ")" / "<" / ">" / "@" 976 839 / "," / ";" / ":" / "\" / <a href="#core.rules" class="smpl">DQUOTE</a> 977 840 / "/" / "[" / "]" / "?" / "=" … … 990 853 </p> 991 854 </div> 992 <div id="rfc.figure.u.12"></div><pre class="inline"><span id="rfc.iref.g.1 9"></span><span id="rfc.iref.g.20"></span> <a href="#rule.comment" class="smpl">comment</a> = "(" *( <a href="#rule.comment" class="smpl">ctext</a> / <a href="#rule.quoted-pair" class="smpl">quoted-pair</a> / <a href="#rule.comment" class="smpl">comment</a> ) ")"855 <div id="rfc.figure.u.12"></div><pre class="inline"><span id="rfc.iref.g.18"></span><span id="rfc.iref.g.19"></span> <a href="#rule.comment" class="smpl">comment</a> = "(" *( <a href="#rule.comment" class="smpl">ctext</a> / <a href="#rule.quoted-pair" class="smpl">quoted-pair</a> / <a href="#rule.comment" class="smpl">comment</a> ) ")" 993 856 <a href="#rule.comment" class="smpl">ctext</a> = <any <a href="#rule.TEXT" class="smpl">TEXT</a> excluding "(" and ")"> 994 857 </pre><div id="rule.quoted-string"> 995 858 <p id="rfc.section.2.2.p.16"> A string of text is parsed as a single word if it is quoted using double-quote marks.</p> 996 859 </div> 997 <div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.2 1"></span><span id="rfc.iref.g.22"></span> <a href="#rule.quoted-string" class="smpl">quoted-string</a> = ( <a href="#core.rules" class="smpl">DQUOTE</a> *(<a href="#rule.quoted-string" class="smpl">qdtext</a> / <a href="#rule.quoted-pair" class="smpl">quoted-pair</a> ) <a href="#core.rules" class="smpl">DQUOTE</a> )860 <div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.20"></span><span id="rfc.iref.g.21"></span> <a href="#rule.quoted-string" class="smpl">quoted-string</a> = ( <a href="#core.rules" class="smpl">DQUOTE</a> *(<a href="#rule.quoted-string" class="smpl">qdtext</a> / <a href="#rule.quoted-pair" class="smpl">quoted-pair</a> ) <a href="#core.rules" class="smpl">DQUOTE</a> ) 998 861 <a href="#rule.quoted-string" class="smpl">qdtext</a> = <any <a href="#rule.TEXT" class="smpl">TEXT</a> excluding <a href="#core.rules" class="smpl">DQUOTE</a> and "\"> 999 862 </pre><div id="rule.quoted-pair"> … … 1001 864 </p> 1002 865 </div> 1003 <div id="rfc.figure.u.14"></div><pre class="inline"><span id="rfc.iref.g.2 3"></span><span id="rfc.iref.g.24"></span> <a href="#rule.quoted-pair" class="smpl">quoted-text</a> = %x01-09 /866 <div id="rfc.figure.u.14"></div><pre class="inline"><span id="rfc.iref.g.22"></span><span id="rfc.iref.g.23"></span> <a href="#rule.quoted-pair" class="smpl">quoted-text</a> = %x01-09 / 1004 867 %x0B-0C / 1005 868 %x0E-FF ; Characters excluding NUL, <a href="#core.rules" class="smpl">CR</a> and <a href="#core.rules" class="smpl">LF</a> … … 1009 872 <div id="rfc.figure.u.15"></div><pre class="inline"> <a href="#abnf.dependencies" class="smpl">request-header</a> = <request-header, defined in <a href="#Part2" id="rfc.xref.Part2.1"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>, <a href="p2-semantics.html#request.header.fields" title="Request Header Fields">Section 4</a>> 1010 873 <a href="#abnf.dependencies" class="smpl">response-header</a> = <response-header, defined in <a href="#Part2" id="rfc.xref.Part2.2"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>, <a href="p2-semantics.html#response.header.fields" title="Response Header Fields">Section 6</a>> 1011 </pre><div id="rfc.figure.u.16"></div><pre class="inline"> <a href="#abnf.dependencies" class="smpl">accept-params</a> = <accept-params, defined in <a href="#Part3" id="rfc.xref.Part3. 6"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, <a href="p3-payload.html#header.accept" title="Accept">Section 6.1</a>>1012 <a href="#abnf.dependencies" class="smpl">entity-body</a> = <entity-body, defined in <a href="#Part3" id="rfc.xref.Part3. 7"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, <a href="p3-payload.html#entity.body" title="Entity Body">Section 4.2</a>>1013 <a href="#abnf.dependencies" class="smpl">entity-header</a> = <entity-header, defined in <a href="#Part3" id="rfc.xref.Part3. 8"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, <a href="p3-payload.html#entity.header.fields" title="Entity Header Fields">Section 4.1</a>>1014 </pre><div id="rfc.figure.u.17"></div><pre class="inline"> <a href="#abnf.dependencies" class="smpl">Cache-Control</a> = <Cache-Control, defined in <a href="#Part6" id="rfc.xref.Part6. 3"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.pragma" title="Pragma">Section 16.4</a>>1015 <a href="#abnf.dependencies" class="smpl">Pragma</a> = <Pragma, defined in <a href="#Part6" id="rfc.xref.Part6. 4"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.pragma" title="Pragma">Section 16.4</a>>1016 <a href="#abnf.dependencies" class="smpl">Warning</a> = <Warning, defined in <a href="#Part6" id="rfc.xref.Part6. 5"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.warning" title="Warning">Section 16.6</a>>874 </pre><div id="rfc.figure.u.16"></div><pre class="inline"> <a href="#abnf.dependencies" class="smpl">accept-params</a> = <accept-params, defined in <a href="#Part3" id="rfc.xref.Part3.3"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, <a href="p3-payload.html#header.accept" title="Accept">Section 6.1</a>> 875 <a href="#abnf.dependencies" class="smpl">entity-body</a> = <entity-body, defined in <a href="#Part3" id="rfc.xref.Part3.4"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, <a href="p3-payload.html#entity.body" title="Entity Body">Section 4.2</a>> 876 <a href="#abnf.dependencies" class="smpl">entity-header</a> = <entity-header, defined in <a href="#Part3" id="rfc.xref.Part3.5"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, <a href="p3-payload.html#entity.header.fields" title="Entity Header Fields">Section 4.1</a>> 877 </pre><div id="rfc.figure.u.17"></div><pre class="inline"> <a href="#abnf.dependencies" class="smpl">Cache-Control</a> = <Cache-Control, defined in <a href="#Part6" id="rfc.xref.Part6.2"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.pragma" title="Pragma">Section 16.4</a>> 878 <a href="#abnf.dependencies" class="smpl">Pragma</a> = <Pragma, defined in <a href="#Part6" id="rfc.xref.Part6.3"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.pragma" title="Pragma">Section 16.4</a>> 879 <a href="#abnf.dependencies" class="smpl">Warning</a> = <Warning, defined in <a href="#Part6" id="rfc.xref.Part6.4"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.warning" title="Warning">Section 16.6</a>> 1017 880 </pre><h1 id="rfc.section.3"><a href="#rfc.section.3">3.</a> <a id="protocol.parameters" href="#protocol.parameters">Protocol Parameters</a></h1> 1018 881 <h2 id="rfc.section.3.1"><a href="#rfc.section.3.1">3.1</a> <a id="http.version" href="#http.version">HTTP Version</a></h2> … … 1026 889 </p> 1027 890 <p id="rfc.section.3.1.p.2">The version of an HTTP message is indicated by an HTTP-Version field in the first line of the message. HTTP-Version is case-sensitive.</p> 1028 <div id="rfc.figure.u.18"></div><pre class="inline"><span id="rfc.iref.g.2 5"></span><span id="rfc.iref.g.26"></span> <a href="#http.version" class="smpl">HTTP-Version</a> = <a href="#http.version" class="smpl">HTTP-Prot-Name</a> "/" 1*<a href="#core.rules" class="smpl">DIGIT</a> "." 1*<a href="#core.rules" class="smpl">DIGIT</a>891 <div id="rfc.figure.u.18"></div><pre class="inline"><span id="rfc.iref.g.24"></span><span id="rfc.iref.g.25"></span> <a href="#http.version" class="smpl">HTTP-Version</a> = <a href="#http.version" class="smpl">HTTP-Prot-Name</a> "/" 1*<a href="#core.rules" class="smpl">DIGIT</a> "." 1*<a href="#core.rules" class="smpl">DIGIT</a> 1029 892 <a href="#http.version" class="smpl">HTTP-Prot-Name</a> = %x48.54.54.50 ; "HTTP", case-sensitive 1030 893 </pre><p id="rfc.section.3.1.p.4">Note that the major and minor numbers <em class="bcp14">MUST</em> be treated as separate integers and that each <em class="bcp14">MAY</em> be incremented higher than a single digit. Thus, HTTP/2.4 is a lower version than HTTP/2.13, which in turn is lower than HTTP/12.3. … … 1057 920 "abs_path", "query", and "authority" from that specification: 1058 921 </p> 1059 <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g.2 7"></span><span id="rfc.iref.g.28"></span><span id="rfc.iref.g.29"></span><span id="rfc.iref.g.30"></span><span id="rfc.iref.g.31"></span><span id="rfc.iref.g.32"></span><span id="rfc.iref.g.33"></span> <a href="#general.syntax" class="smpl">absoluteURI</a> = <absoluteURI, defined in <a href="#RFC2396" id="rfc.xref.RFC2396.2"><cite title="Uniform Resource Identifiers (URI): Generic Syntax">[RFC2396]</cite></a>, <a href="http://tools.ietf.org/html/rfc2396#section-3">Section 3</a>>922 <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g.26"></span><span id="rfc.iref.g.27"></span><span id="rfc.iref.g.28"></span><span id="rfc.iref.g.29"></span><span id="rfc.iref.g.30"></span><span id="rfc.iref.g.31"></span><span id="rfc.iref.g.32"></span> <a href="#general.syntax" class="smpl">absoluteURI</a> = <absoluteURI, defined in <a href="#RFC2396" id="rfc.xref.RFC2396.2"><cite title="Uniform Resource Identifiers (URI): Generic Syntax">[RFC2396]</cite></a>, <a href="http://tools.ietf.org/html/rfc2396#section-3">Section 3</a>> 1060 923 <a href="#general.syntax" class="smpl">authority</a> = <authority, defined in <a href="#RFC2396" id="rfc.xref.RFC2396.3"><cite title="Uniform Resource Identifiers (URI): Generic Syntax">[RFC2396]</cite></a>, <a href="http://tools.ietf.org/html/rfc2396#section-3.2">Section 3.2</a>> 1061 924 <a href="#general.syntax" class="smpl">fragment</a> = <fragment, defined in <a href="#RFC2396" id="rfc.xref.RFC2396.4"><cite title="Uniform Resource Identifiers (URI): Generic Syntax">[RFC2396]</cite></a>, <a href="http://tools.ietf.org/html/rfc2396#section-4.1">Section 4.1</a>> … … 1075 938 <h3 id="rfc.section.3.2.2"><a href="#rfc.section.3.2.2">3.2.2</a> <a id="http.url" href="#http.url">http URL</a></h3> 1076 939 <div id="rfc.iref.h.1"></div> 1077 <div id="rfc.iref.u. 3"></div>940 <div id="rfc.iref.u.1"></div> 1078 941 <p id="rfc.section.3.2.2.p.1">The "http" scheme is used to locate network resources via the HTTP protocol. This section defines the scheme-specific syntax 1079 942 and semantics for http URLs. 1080 943 </p> 1081 <div id="rfc.figure.u.20"></div><pre class="inline"><span id="rfc.iref.g.3 4"></span> <a href="#http.url" class="smpl">http-URL</a> = "http:" "//" <a href="#general.syntax" class="smpl">uri-host</a> [ ":" <a href="#general.syntax" class="smpl">port</a> ]944 <div id="rfc.figure.u.20"></div><pre class="inline"><span id="rfc.iref.g.33"></span> <a href="#http.url" class="smpl">http-URL</a> = "http:" "//" <a href="#general.syntax" class="smpl">uri-host</a> [ ":" <a href="#general.syntax" class="smpl">port</a> ] 1082 945 [ <a href="#general.syntax" class="smpl">path-absolute</a> [ "?" <a href="#general.syntax" class="smpl">query</a> ]] 1083 946 </pre><p id="rfc.section.3.2.2.p.3">If the port is empty or not given, port 80 is assumed. The semantics are that the identified resource is located at the server … … 1085 948 </p> 1086 949 <dl class="empty"> 1087 <dd> <span id="rfc.iref.h.2"></span> <span id="rfc.iref.u. 4"></span> <b>Note:</b> the "https" scheme is defined in <a href="#RFC2818" id="rfc.xref.RFC2818.1"><cite title="HTTP Over TLS">[RFC2818]</cite></a>.950 <dd> <span id="rfc.iref.h.2"></span> <span id="rfc.iref.u.2"></span> <b>Note:</b> the "https" scheme is defined in <a href="#RFC2818" id="rfc.xref.RFC2818.1"><cite title="HTTP Over TLS">[RFC2818]</cite></a>. 1088 951 </dd> 1089 952 </dl> … … 1123 986 time zone, and <em class="bcp14">MUST</em> be assumed when reading the asctime format. HTTP-date is case sensitive and <em class="bcp14">MUST NOT</em> include additional LWS beyond that specifically included as SP in the grammar. 1124 987 </p> 1125 <div id="rfc.figure.u.23"></div><pre class="inline"><span id="rfc.iref.g.3 5"></span><span id="rfc.iref.g.36"></span><span id="rfc.iref.g.37"></span><span id="rfc.iref.g.38"></span><span id="rfc.iref.g.39"></span><span id="rfc.iref.g.40"></span><span id="rfc.iref.g.41"></span><span id="rfc.iref.g.42"></span><span id="rfc.iref.g.43"></span><span id="rfc.iref.g.44"></span><span id="rfc.iref.g.45"></span><span id="rfc.iref.g.46"></span> <a href="#full.date" class="smpl">HTTP-date</a> = <a href="#full.date" class="smpl">rfc1123-date</a> / <a href="#full.date" class="smpl">obsolete-date</a>988 <div id="rfc.figure.u.23"></div><pre class="inline"><span id="rfc.iref.g.34"></span><span id="rfc.iref.g.35"></span><span id="rfc.iref.g.36"></span><span id="rfc.iref.g.37"></span><span id="rfc.iref.g.38"></span><span id="rfc.iref.g.39"></span><span id="rfc.iref.g.40"></span><span id="rfc.iref.g.41"></span><span id="rfc.iref.g.42"></span><span id="rfc.iref.g.43"></span><span id="rfc.iref.g.44"></span><span id="rfc.iref.g.45"></span> <a href="#full.date" class="smpl">HTTP-date</a> = <a href="#full.date" class="smpl">rfc1123-date</a> / <a href="#full.date" class="smpl">obsolete-date</a> 1126 989 <a href="#full.date" class="smpl">obsolete-date</a> = <a href="#full.date" class="smpl">rfc850-date</a> / <a href="#full.date" class="smpl">asctime-date</a> 1127 990 <a href="#full.date" class="smpl">rfc1123-date</a> = <a href="#full.date" class="smpl">wkday</a> "," <a href="#core.rules" class="smpl">SP</a> date1 <a href="#core.rules" class="smpl">SP</a> time <a href="#core.rules" class="smpl">SP</a> GMT … … 1182 1045 is a property of the message, not of the original entity. 1183 1046 </p> 1184 <div id="rfc.figure.u.24"></div><pre class="inline"><span id="rfc.iref.g.4 7"></span><span id="rfc.iref.g.48"></span> <a href="#transfer.codings" class="smpl">transfer-coding</a> = "chunked" / <a href="#transfer.codings" class="smpl">transfer-extension</a>1047 <div id="rfc.figure.u.24"></div><pre class="inline"><span id="rfc.iref.g.46"></span><span id="rfc.iref.g.47"></span> <a href="#transfer.codings" class="smpl">transfer-coding</a> = "chunked" / <a href="#transfer.codings" class="smpl">transfer-extension</a> 1185 1048 <a href="#transfer.codings" class="smpl">transfer-extension</a> = <a href="#rule.token.separators" class="smpl">token</a> *( ";" <a href="#transfer.codings" class="smpl">parameter</a> ) 1186 1049 </pre><div id="rule.parameter"> 1187 1050 <p id="rfc.section.3.4.p.3"> Parameters are in the form of attribute/value pairs.</p> 1188 1051 </div> 1189 <div id="rfc.figure.u.25"></div><pre class="inline"><span id="rfc.iref.g.4 9"></span><span id="rfc.iref.g.50"></span><span id="rfc.iref.g.51"></span> <a href="#transfer.codings" class="smpl">parameter</a> = <a href="#rule.parameter" class="smpl">attribute</a> "=" <a href="#rule.parameter" class="smpl">value</a>1052 <div id="rfc.figure.u.25"></div><pre class="inline"><span id="rfc.iref.g.48"></span><span id="rfc.iref.g.49"></span><span id="rfc.iref.g.50"></span> <a href="#transfer.codings" class="smpl">parameter</a> = <a href="#rule.parameter" class="smpl">attribute</a> "=" <a href="#rule.parameter" class="smpl">value</a> 1190 1053 <a href="#rule.parameter" class="smpl">attribute</a> = <a href="#rule.token.separators" class="smpl">token</a> 1191 1054 <a href="#rule.parameter" class="smpl">value</a> = <a href="#rule.token.separators" class="smpl">token</a> / <a href="#rule.quoted-string" class="smpl">quoted-string</a> … … 1201 1064 </p> 1202 1065 <p id="rfc.section.3.4.p.8">The Internet Assigned Numbers Authority (IANA) acts as a registry for transfer-coding value tokens. Initially, the registry 1203 contains the following tokens: "chunked" (<a href="#chunked.transfer.encoding" title="Chunked Transfer Coding">Section 3.4.1</a>), "gzip", "compress", and "deflate" (<a href="p3-payload.html#content.codings" title="Content Codings">Section 3.2</a> of <a href="#Part3" id="rfc.xref.Part3. 9"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>).1204 </p> 1205 <p id="rfc.section.3.4.p.9">New transfer-coding value tokens <em class="bcp14">SHOULD</em> be registered in the same way as new content-coding value tokens (<a href="p3-payload.html#content.codings" title="Content Codings">Section 3.2</a> of <a href="#Part3" id="rfc.xref.Part3. 10"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>).1066 contains the following tokens: "chunked" (<a href="#chunked.transfer.encoding" title="Chunked Transfer Coding">Section 3.4.1</a>), "gzip", "compress", and "deflate" (<a href="p3-payload.html#content.codings" title="Content Codings">Section 3.2</a> of <a href="#Part3" id="rfc.xref.Part3.6"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>). 1067 </p> 1068 <p id="rfc.section.3.4.p.9">New transfer-coding value tokens <em class="bcp14">SHOULD</em> be registered in the same way as new content-coding value tokens (<a href="p3-payload.html#content.codings" title="Content Codings">Section 3.2</a> of <a href="#Part3" id="rfc.xref.Part3.7"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>). 1206 1069 </p> 1207 1070 <p id="rfc.section.3.4.p.10">A server which receives an entity-body with a transfer-coding it does not understand <em class="bcp14">SHOULD</em> return 501 (Not Implemented), and close the connection. A server <em class="bcp14">MUST NOT</em> send transfer-codings to an HTTP/1.0 client. … … 1212 1075 necessary for the recipient to verify that it has received the full message. 1213 1076 </p> 1214 <div id="rfc.figure.u.26"></div><pre class="inline"><span id="rfc.iref.g.5 2"></span><span id="rfc.iref.g.53"></span><span id="rfc.iref.g.54"></span><span id="rfc.iref.g.55"></span><span id="rfc.iref.g.56"></span><span id="rfc.iref.g.57"></span><span id="rfc.iref.g.58"></span><span id="rfc.iref.g.59"></span><span id="rfc.iref.g.60"></span> <a href="#chunked.transfer.encoding" class="smpl">Chunked-Body</a> = *<a href="#chunked.transfer.encoding" class="smpl">chunk</a>1077 <div id="rfc.figure.u.26"></div><pre class="inline"><span id="rfc.iref.g.51"></span><span id="rfc.iref.g.52"></span><span id="rfc.iref.g.53"></span><span id="rfc.iref.g.54"></span><span id="rfc.iref.g.55"></span><span id="rfc.iref.g.56"></span><span id="rfc.iref.g.57"></span><span id="rfc.iref.g.58"></span><span id="rfc.iref.g.59"></span> <a href="#chunked.transfer.encoding" class="smpl">Chunked-Body</a> = *<a href="#chunked.transfer.encoding" class="smpl">chunk</a> 1215 1078 <a href="#chunked.transfer.encoding" class="smpl">last-chunk</a> 1216 1079 <a href="#chunked.transfer.encoding" class="smpl">trailer-part</a> … … 1271 1134 space. By convention, the products are listed in order of their significance for identifying the application. 1272 1135 </p> 1273 <div id="rfc.figure.u.28"></div><pre class="inline"><span id="rfc.iref.g.6 1"></span><span id="rfc.iref.g.62"></span> <a href="#product.tokens" class="smpl">product</a> = <a href="#rule.token.separators" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>]1136 <div id="rfc.figure.u.28"></div><pre class="inline"><span id="rfc.iref.g.60"></span><span id="rfc.iref.g.61"></span> <a href="#product.tokens" class="smpl">product</a> = <a href="#rule.token.separators" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>] 1274 1137 <a href="#product.tokens" class="smpl">product-version</a> = <a href="#rule.token.separators" class="smpl">token</a> 1275 1138 </pre><p id="rfc.section.3.5.p.3">Examples:</p> … … 1281 1144 <h2 id="rfc.section.4.1"><a href="#rfc.section.4.1">4.1</a> <a id="message.types" href="#message.types">Message Types</a></h2> 1282 1145 <p id="rfc.section.4.1.p.1">HTTP messages consist of requests from client to server and responses from server to client.</p> 1283 <div id="rfc.figure.u.30"></div><pre class="inline"><span id="rfc.iref.g.6 3"></span> <a href="#message.types" class="smpl">HTTP-message</a> = <a href="#request" class="smpl">Request</a> / <a href="#response" class="smpl">Response</a> ; HTTP/1.1 messages1146 <div id="rfc.figure.u.30"></div><pre class="inline"><span id="rfc.iref.g.62"></span> <a href="#message.types" class="smpl">HTTP-message</a> = <a href="#request" class="smpl">Request</a> / <a href="#response" class="smpl">Response</a> ; HTTP/1.1 messages 1284 1147 </pre><p id="rfc.section.4.1.p.3">Request (<a href="#request" title="Request">Section 5</a>) and Response (<a href="#response" title="Response">Section 6</a>) messages use the generic message format of <a href="#RFC5322" id="rfc.xref.RFC5322.2"><cite title="Internet Message Format">[RFC5322]</cite></a> for transferring entities (the payload of the message). Both types of message consist of a start-line, zero or more header 1285 1148 fields (also known as "headers"), an empty line (i.e., a line with nothing preceding the CRLF) indicating the end of the header 1286 1149 fields, and possibly a message-body. 1287 1150 </p> 1288 <div id="rfc.figure.u.31"></div><pre class="inline"><span id="rfc.iref.g.6 4"></span><span id="rfc.iref.g.65"></span> <a href="#message.types" class="smpl">generic-message</a> = <a href="#message.types" class="smpl">start-line</a>1151 <div id="rfc.figure.u.31"></div><pre class="inline"><span id="rfc.iref.g.63"></span><span id="rfc.iref.g.64"></span> <a href="#message.types" class="smpl">generic-message</a> = <a href="#message.types" class="smpl">start-line</a> 1289 1152 *(<a href="#message.headers" class="smpl">message-header</a> <a href="#rule.CRLF" class="smpl">CRLF</a>) 1290 1153 <a href="#rule.CRLF" class="smpl">CRLF</a> … … 1298 1161 </p> 1299 1162 <h2 id="rfc.section.4.2"><a href="#rfc.section.4.2">4.2</a> <a id="message.headers" href="#message.headers">Message Headers</a></h2> 1300 <p id="rfc.section.4.2.p.1">HTTP header fields, which include general-header (<a href="#general.header.fields" title="General Header Fields">Section 4.5</a>), request-header (<a href="p2-semantics.html#request.header.fields" title="Request Header Fields">Section 4</a> of <a href="#Part2" id="rfc.xref.Part2.4"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>), response-header (<a href="p2-semantics.html#response.header.fields" title="Response Header Fields">Section 6</a> of <a href="#Part2" id="rfc.xref.Part2.5"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>), and entity-header (<a href="p3-payload.html#entity.header.fields" title="Entity Header Fields">Section 4.1</a> of <a href="#Part3" id="rfc.xref.Part3. 11"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>) fields, follow the same generic format as that given in <a href="http://tools.ietf.org/html/rfc5322#section-2.1">Section 2.1</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.3"><cite title="Internet Message Format">[RFC5322]</cite></a>. Each header field consists of a name followed by a colon (":") and the field value. Field names are case-insensitive. The1163 <p id="rfc.section.4.2.p.1">HTTP header fields, which include general-header (<a href="#general.header.fields" title="General Header Fields">Section 4.5</a>), request-header (<a href="p2-semantics.html#request.header.fields" title="Request Header Fields">Section 4</a> of <a href="#Part2" id="rfc.xref.Part2.4"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>), response-header (<a href="p2-semantics.html#response.header.fields" title="Response Header Fields">Section 6</a> of <a href="#Part2" id="rfc.xref.Part2.5"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>), and entity-header (<a href="p3-payload.html#entity.header.fields" title="Entity Header Fields">Section 4.1</a> of <a href="#Part3" id="rfc.xref.Part3.8"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>) fields, follow the same generic format as that given in <a href="http://tools.ietf.org/html/rfc5322#section-2.1">Section 2.1</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.3"><cite title="Internet Message Format">[RFC5322]</cite></a>. Each header field consists of a name followed by a colon (":") and the field value. Field names are case-insensitive. The 1301 1164 field value <em class="bcp14">MAY</em> be preceded by any amount of LWS, though a single SP is preferred. Header fields can be extended over multiple lines by preceding 1302 1165 each extra line with at least one SP or HTAB. Applications ought to follow "common form", where one is known or indicated, … … 1304 1167 forms. 1305 1168 </p> 1306 <div id="rfc.figure.u.32"></div><pre class="inline"><span id="rfc.iref.g.6 6"></span><span id="rfc.iref.g.67"></span><span id="rfc.iref.g.68"></span><span id="rfc.iref.g.69"></span> <a href="#message.headers" class="smpl">message-header</a> = <a href="#message.headers" class="smpl">field-name</a> ":" [ <a href="#message.headers" class="smpl">field-value</a> ]1169 <div id="rfc.figure.u.32"></div><pre class="inline"><span id="rfc.iref.g.65"></span><span id="rfc.iref.g.66"></span><span id="rfc.iref.g.67"></span><span id="rfc.iref.g.68"></span> <a href="#message.headers" class="smpl">message-header</a> = <a href="#message.headers" class="smpl">field-name</a> ":" [ <a href="#message.headers" class="smpl">field-value</a> ] 1307 1170 <a href="#message.headers" class="smpl">field-name</a> = <a href="#rule.token.separators" class="smpl">token</a> 1308 1171 <a href="#message.headers" class="smpl">field-value</a> = *( <a href="#message.headers" class="smpl">field-content</a> / <a href="#rule.LWS" class="smpl">LWS</a> ) … … 1335 1198 header field (<a href="#header.transfer-encoding" id="rfc.xref.header.transfer-encoding.2" title="Transfer-Encoding">Section 8.7</a>). 1336 1199 </p> 1337 <div id="rfc.figure.u.33"></div><pre class="inline"><span id="rfc.iref.g. 70"></span> <a href="#message.body" class="smpl">message-body</a> = <a href="#abnf.dependencies" class="smpl">entity-body</a>1200 <div id="rfc.figure.u.33"></div><pre class="inline"><span id="rfc.iref.g.69"></span> <a href="#message.body" class="smpl">message-body</a> = <a href="#abnf.dependencies" class="smpl">entity-body</a> 1338 1201 / <entity-body encoded as per <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a>> 1339 1202 </pre><p id="rfc.section.4.3.p.3">Transfer-Encoding <em class="bcp14">MUST</em> be used to indicate any transfer-codings applied by an application to ensure safe and proper transfer of the message. Transfer-Encoding … … 1403 1266 to the entity being transferred. These header fields apply only to the message being transmitted. 1404 1267 </p> 1405 <div id="rfc.figure.u.34"></div><pre class="inline"><span id="rfc.iref.g.7 1"></span> <a href="#general.header.fields" class="smpl">general-header</a> = <a href="#abnf.dependencies" class="smpl">Cache-Control</a> ; <a href="#Part6" id="rfc.xref.Part6.6"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 16.2</a>1268 <div id="rfc.figure.u.34"></div><pre class="inline"><span id="rfc.iref.g.70"></span> <a href="#general.header.fields" class="smpl">general-header</a> = <a href="#abnf.dependencies" class="smpl">Cache-Control</a> ; <a href="#Part6" id="rfc.xref.Part6.5"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 16.2</a> 1406 1269 / <a href="#header.connection" class="smpl">Connection</a> ; <a href="#header.connection" id="rfc.xref.header.connection.1" title="Connection">Section 8.1</a> 1407 1270 / <a href="#header.date" class="smpl">Date</a> ; <a href="#header.date" id="rfc.xref.header.date.1" title="Date">Section 8.3</a> 1408 / <a href="#abnf.dependencies" class="smpl">Pragma</a> ; <a href="#Part6" id="rfc.xref.Part6. 7"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.pragma" title="Pragma">Section 16.4</a>1271 / <a href="#abnf.dependencies" class="smpl">Pragma</a> ; <a href="#Part6" id="rfc.xref.Part6.6"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.pragma" title="Pragma">Section 16.4</a> 1409 1272 / <a href="#header.trailer" class="smpl">Trailer</a> ; <a href="#header.trailer" id="rfc.xref.header.trailer.2" title="Trailer">Section 8.6</a> 1410 1273 / <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a> ; <a href="#header.transfer-encoding" id="rfc.xref.header.transfer-encoding.4" title="Transfer-Encoding">Section 8.7</a> 1411 1274 / <a href="#header.upgrade" class="smpl">Upgrade</a> ; <a href="#header.upgrade" id="rfc.xref.header.upgrade.1" title="Upgrade">Section 8.8</a> 1412 1275 / <a href="#header.via" class="smpl">Via</a> ; <a href="#header.via" id="rfc.xref.header.via.1" title="Via">Section 8.9</a> 1413 / <a href="#abnf.dependencies" class="smpl">Warning</a> ; <a href="#Part6" id="rfc.xref.Part6. 8"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.warning" title="Warning">Section 16.6</a>1276 / <a href="#abnf.dependencies" class="smpl">Warning</a> ; <a href="#Part6" id="rfc.xref.Part6.7"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>, <a href="p6-cache.html#header.warning" title="Warning">Section 16.6</a> 1414 1277 </pre><p id="rfc.section.4.5.p.3">General-header field names can be extended reliably only in combination with a change in the protocol version. However, new 1415 1278 or experimental header fields may be given the semantics of general header fields if all parties in the communication recognize … … 1420 1283 resource, the identifier of the resource, and the protocol version in use. 1421 1284 </p> 1422 <div id="rfc.figure.u.35"></div><pre class="inline"><span id="rfc.iref.g.7 2"></span> <a href="#request" class="smpl">Request</a> = <a href="#request-line" class="smpl">Request-Line</a> ; <a href="#request-line" title="Request-Line">Section 5.1</a>1285 <div id="rfc.figure.u.35"></div><pre class="inline"><span id="rfc.iref.g.71"></span> <a href="#request" class="smpl">Request</a> = <a href="#request-line" class="smpl">Request-Line</a> ; <a href="#request-line" title="Request-Line">Section 5.1</a> 1423 1286 *(( <a href="#general.header.fields" class="smpl">general-header</a> ; <a href="#general.header.fields" title="General Header Fields">Section 4.5</a> 1424 1287 / <a href="#abnf.dependencies" class="smpl">request-header</a> ; <a href="#Part2" id="rfc.xref.Part2.7"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>, <a href="p2-semantics.html#request.header.fields" title="Request Header Fields">Section 4</a> 1425 / <a href="#abnf.dependencies" class="smpl">entity-header</a> ) <a href="#rule.CRLF" class="smpl">CRLF</a>) ; <a href="#Part3" id="rfc.xref.Part3. 12"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, <a href="p3-payload.html#entity.header.fields" title="Entity Header Fields">Section 4.1</a>1288 / <a href="#abnf.dependencies" class="smpl">entity-header</a> ) <a href="#rule.CRLF" class="smpl">CRLF</a>) ; <a href="#Part3" id="rfc.xref.Part3.9"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, <a href="p3-payload.html#entity.header.fields" title="Entity Header Fields">Section 4.1</a> 1426 1289 <a href="#rule.CRLF" class="smpl">CRLF</a> 1427 1290 [ <a href="#message.body" class="smpl">message-body</a> ] ; <a href="#message.body" title="Message Body">Section 4.3</a> … … 1430 1293 elements are separated by SP characters. No CR or LF is allowed except in the final CRLF sequence. 1431 1294 </p> 1432 <div id="rfc.figure.u.36"></div><pre class="inline"><span id="rfc.iref.g.7 3"></span> <a href="#request-line" class="smpl">Request-Line</a> = <a href="#method" class="smpl">Method</a> <a href="#core.rules" class="smpl">SP</a> <a href="#request-uri" class="smpl">Request-URI</a> <a href="#core.rules" class="smpl">SP</a> <a href="#http.version" class="smpl">HTTP-Version</a> <a href="#rule.CRLF" class="smpl">CRLF</a>1295 <div id="rfc.figure.u.36"></div><pre class="inline"><span id="rfc.iref.g.72"></span> <a href="#request-line" class="smpl">Request-Line</a> = <a href="#method" class="smpl">Method</a> <a href="#core.rules" class="smpl">SP</a> <a href="#request-uri" class="smpl">Request-URI</a> <a href="#core.rules" class="smpl">SP</a> <a href="#http.version" class="smpl">HTTP-Version</a> <a href="#rule.CRLF" class="smpl">CRLF</a> 1433 1296 </pre><h3 id="rfc.section.5.1.1"><a href="#rfc.section.5.1.1">5.1.1</a> <a id="method" href="#method">Method</a></h3> 1434 1297 <p id="rfc.section.5.1.1.p.1">The Method token indicates the method to be performed on the resource identified by the Request-URI. The method is case-sensitive.</p> 1435 <div id="rfc.figure.u.37"></div><pre class="inline"><span id="rfc.iref.g.7 4"></span><span id="rfc.iref.g.75"></span> <a href="#method" class="smpl">Method</a> = <a href="#rule.token.separators" class="smpl">token</a>1298 <div id="rfc.figure.u.37"></div><pre class="inline"><span id="rfc.iref.g.73"></span><span id="rfc.iref.g.74"></span> <a href="#method" class="smpl">Method</a> = <a href="#rule.token.separators" class="smpl">token</a> 1436 1299 </pre><h3 id="rfc.section.5.1.2"><a href="#rfc.section.5.1.2">5.1.2</a> <a id="request-uri" href="#request-uri">Request-URI</a></h3> 1437 1300 <p id="rfc.section.5.1.2.p.1">The Request-URI is a Uniform Resource Identifier (<a href="#uri" title="Uniform Resource Identifiers">Section 3.2</a>) and identifies the resource upon which to apply the request. 1438 1301 </p> 1439 <div id="rfc.figure.u.38"></div><pre class="inline"><span id="rfc.iref.g.7 6"></span> <a href="#request-uri" class="smpl">Request-URI</a> = "*"1302 <div id="rfc.figure.u.38"></div><pre class="inline"><span id="rfc.iref.g.75"></span> <a href="#request-uri" class="smpl">Request-URI</a> = "*" 1440 1303 / <a href="#general.syntax" class="smpl">absoluteURI</a> 1441 1304 / ( <a href="#general.syntax" class="smpl">path-absolute</a> [ "?" <a href="#general.syntax" class="smpl">query</a> ] ) … … 1498 1361 <h1 id="rfc.section.6"><a href="#rfc.section.6">6.</a> <a id="response" href="#response">Response</a></h1> 1499 1362 <p id="rfc.section.6.p.1">After receiving and interpreting a request message, a server responds with an HTTP response message.</p> 1500 <div id="rfc.figure.u.42"></div><pre class="inline"><span id="rfc.iref.g.7 7"></span> <a href="#response" class="smpl">Response</a> = <a href="#status-line" class="smpl">Status-Line</a> ; <a href="#status-line" title="Status-Line">Section 6.1</a>1363 <div id="rfc.figure.u.42"></div><pre class="inline"><span id="rfc.iref.g.76"></span> <a href="#response" class="smpl">Response</a> = <a href="#status-line" class="smpl">Status-Line</a> ; <a href="#status-line" title="Status-Line">Section 6.1</a> 1501 1364 *(( <a href="#general.header.fields" class="smpl">general-header</a> ; <a href="#general.header.fields" title="General Header Fields">Section 4.5</a> 1502 1365 / <a href="#abnf.dependencies" class="smpl">response-header</a> ; <a href="#Part2" id="rfc.xref.Part2.9"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>, <a href="p2-semantics.html#response.header.fields" title="Response Header Fields">Section 6</a> 1503 / <a href="#abnf.dependencies" class="smpl">entity-header</a> ) <a href="#rule.CRLF" class="smpl">CRLF</a>) ; <a href="#Part3" id="rfc.xref.Part3.1 3"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, <a href="p3-payload.html#entity.header.fields" title="Entity Header Fields">Section 4.1</a>1366 / <a href="#abnf.dependencies" class="smpl">entity-header</a> ) <a href="#rule.CRLF" class="smpl">CRLF</a>) ; <a href="#Part3" id="rfc.xref.Part3.10"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, <a href="p3-payload.html#entity.header.fields" title="Entity Header Fields">Section 4.1</a> 1504 1367 <a href="#rule.CRLF" class="smpl">CRLF</a> 1505 1368 [ <a href="#message.body" class="smpl">message-body</a> ] ; <a href="#message.body" title="Message Body">Section 4.3</a> … … 1509 1372 CRLF sequence. 1510 1373 </p> 1511 <div id="rfc.figure.u.43"></div><pre class="inline"><span id="rfc.iref.g.7 8"></span> <a href="#status-line" class="smpl">Status-Line</a> = <a href="#http.version" class="smpl">HTTP-Version</a> <a href="#core.rules" class="smpl">SP</a> <a href="#status.code.and.reason.phrase" class="smpl">Status-Code</a> <a href="#core.rules" class="smpl">SP</a> <a href="#status.code.and.reason.phrase" class="smpl">Reason-Phrase</a> <a href="#rule.CRLF" class="smpl">CRLF</a>1374 <div id="rfc.figure.u.43"></div><pre class="inline"><span id="rfc.iref.g.77"></span> <a href="#status-line" class="smpl">Status-Line</a> = <a href="#http.version" class="smpl">HTTP-Version</a> <a href="#core.rules" class="smpl">SP</a> <a href="#status.code.and.reason.phrase" class="smpl">Status-Code</a> <a href="#core.rules" class="smpl">SP</a> <a href="#status.code.and.reason.phrase" class="smpl">Reason-Phrase</a> <a href="#rule.CRLF" class="smpl">CRLF</a> 1512 1375 </pre><h3 id="rfc.section.6.1.1"><a href="#rfc.section.6.1.1">6.1.1</a> <a id="status.code.and.reason.phrase" href="#status.code.and.reason.phrase">Status Code and Reason Phrase</a></h3> 1513 1376 <p id="rfc.section.6.1.1.p.1">The Status-Code element is a 3-digit integer result code of the attempt to understand and satisfy the request. These codes … … 1526 1389 <li>5xx: Server Error - The server failed to fulfill an apparently valid request</li> 1527 1390 </ul> 1528 <div id="rfc.figure.u.44"></div><pre class="inline"><span id="rfc.iref.g.7 9"></span><span id="rfc.iref.g.80"></span><span id="rfc.iref.g.81"></span> <a href="#status.code.and.reason.phrase" class="smpl">Status-Code</a> = 3<a href="#core.rules" class="smpl">DIGIT</a>1391 <div id="rfc.figure.u.44"></div><pre class="inline"><span id="rfc.iref.g.78"></span><span id="rfc.iref.g.79"></span><span id="rfc.iref.g.80"></span> <a href="#status.code.and.reason.phrase" class="smpl">Status-Code</a> = 3<a href="#core.rules" class="smpl">DIGIT</a> 1529 1392 <a href="#status.code.and.reason.phrase" class="smpl">Reason-Phrase</a> = *<<a href="#rule.TEXT" class="smpl">TEXT</a>, excluding <a href="#core.rules" class="smpl">CR</a>, <a href="#core.rules" class="smpl">LF</a>> 1530 1393 </pre><h1 id="rfc.section.7"><a href="#rfc.section.7">7.</a> <a id="connections" href="#connections">Connections</a></h1> … … 1711 1574 receives the entity. 1712 1575 </p> 1713 <div id="rfc.iref.c. 6"></div>1576 <div id="rfc.iref.c.1"></div> 1714 1577 <div id="rfc.iref.h.3"></div> 1715 1578 <h2 id="rfc.section.8.1"><a href="#rfc.section.8.1">8.1</a> <a id="header.connection" href="#header.connection">Connection</a></h2> … … 1717 1580 </p> 1718 1581 <p id="rfc.section.8.1.p.2">The Connection header has the following grammar:</p> 1719 <div id="rfc.figure.u.45"></div><pre class="inline"><span id="rfc.iref.g.8 2"></span><span id="rfc.iref.g.83"></span> <a href="#header.connection" class="smpl">Connection</a> = "Connection" ":" 1#(<a href="#header.connection" class="smpl">connection-token</a>)1582 <div id="rfc.figure.u.45"></div><pre class="inline"><span id="rfc.iref.g.81"></span><span id="rfc.iref.g.82"></span> <a href="#header.connection" class="smpl">Connection</a> = "Connection" ":" 1#(<a href="#header.connection" class="smpl">connection-token</a>) 1720 1583 <a href="#header.connection" class="smpl">connection-token</a> = <a href="#rule.token.separators" class="smpl">token</a> 1721 1584 </pre><p id="rfc.section.8.1.p.4">HTTP/1.1 proxies <em class="bcp14">MUST</em> parse the Connection header field before a message is forwarded and, for each connection-token in this field, remove any header … … 1739 1602 connection-token. This protects against mistaken forwarding of such header fields by pre-HTTP/1.1 proxies. See <a href="#compatibility.with.http.1.0.persistent.connections" title="Compatibility with HTTP/1.0 Persistent Connections">Appendix C.2</a>. 1740 1603 </p> 1741 <div id="rfc.iref.c. 7"></div>1604 <div id="rfc.iref.c.2"></div> 1742 1605 <div id="rfc.iref.h.4"></div> 1743 1606 <h2 id="rfc.section.8.2"><a href="#rfc.section.8.2">8.2</a> <a id="header.content-length" href="#header.content-length">Content-Length</a></h2> … … 1745 1608 or, in the case of the HEAD method, the size of the entity-body that would have been sent had the request been a GET. 1746 1609 </p> 1747 <div id="rfc.figure.u.47"></div><pre class="inline"><span id="rfc.iref.g.8 4"></span> <a href="#header.content-length" class="smpl">Content-Length</a> = "Content-Length" ":" 1*<a href="#core.rules" class="smpl">DIGIT</a>1610 <div id="rfc.figure.u.47"></div><pre class="inline"><span id="rfc.iref.g.83"></span> <a href="#header.content-length" class="smpl">Content-Length</a> = "Content-Length" ":" 1*<a href="#core.rules" class="smpl">DIGIT</a> 1748 1611 </pre><p id="rfc.section.8.2.p.3">An example is</p> 1749 1612 <div id="rfc.figure.u.48"></div><pre class="text"> Content-Length: 3495 … … 1756 1619 in <a href="#message.length" title="Message Length">Section 4.4</a>. 1757 1620 </p> 1758 <div id="rfc.iref.d. 2"></div>1621 <div id="rfc.iref.d.1"></div> 1759 1622 <div id="rfc.iref.h.5"></div> 1760 1623 <h2 id="rfc.section.8.3"><a href="#rfc.section.8.3">8.3</a> <a id="header.date" href="#header.date">Date</a></h2> … … 1762 1625 as orig-date in <a href="http://tools.ietf.org/html/rfc5322#section-3.6.1">Section 3.6.1</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.4"><cite title="Internet Message Format">[RFC5322]</cite></a>. The field value is an HTTP-date, as described in <a href="#full.date" title="Full Date">Section 3.3.1</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format. 1763 1626 </p> 1764 <div id="rfc.figure.u.49"></div><pre class="inline"><span id="rfc.iref.g.8 5"></span> <a href="#header.date" class="smpl">Date</a> = "Date" ":" <a href="#full.date" class="smpl">HTTP-date</a>1627 <div id="rfc.figure.u.49"></div><pre class="inline"><span id="rfc.iref.g.84"></span> <a href="#header.date" class="smpl">Date</a> = "Date" ":" <a href="#full.date" class="smpl">HTTP-date</a> 1765 1628 </pre><p id="rfc.section.8.3.p.3">An example is</p> 1766 1629 <div id="rfc.figure.u.50"></div><pre class="text"> Date: Tue, 15 Nov 1994 08:12:31 GMT … … 1800 1663 a single IP address. 1801 1664 </p> 1802 <div id="rfc.figure.u.51"></div><pre class="inline"><span id="rfc.iref.g.8 6"></span> <a href="#header.host" class="smpl">Host</a> = "Host" ":" <a href="#general.syntax" class="smpl">uri-host</a> [ ":" <a href="#general.syntax" class="smpl">port</a> ] ; <a href="#http.url" title="http URL">Section 3.2.2</a>1665 <div id="rfc.figure.u.51"></div><pre class="inline"><span id="rfc.iref.g.85"></span> <a href="#header.host" class="smpl">Host</a> = "Host" ":" <a href="#general.syntax" class="smpl">uri-host</a> [ ":" <a href="#general.syntax" class="smpl">port</a> ] ; <a href="#http.url" title="http URL">Section 3.2.2</a> 1803 1666 </pre><p id="rfc.section.8.4.p.3">A "host" without any trailing port information implies the default port for the service requested (e.g., "80" for an HTTP 1804 1667 URL). For example, a request on the origin server for <http://www.example.org/pub/WWW/> would properly include: … … 1812 1675 <p id="rfc.section.8.4.p.6">See Sections <a href="#the.resource.identified.by.a.request" title="The Resource Identified by a Request">5.2</a> and <a href="#changes.to.simplify.multi-homed.web.servers.and.conserve.ip.addresses" title="Changes to Simplify Multi-homed Web Servers and Conserve IP Addresses">C.1.1</a> for other requirements relating to Host. 1813 1676 </p> 1814 <div id="rfc.iref.t. 2"></div>1677 <div id="rfc.iref.t.1"></div> 1815 1678 <div id="rfc.iref.h.8"></div> 1816 1679 <h2 id="rfc.section.8.5"><a href="#rfc.section.8.5">8.5</a> <a id="header.te" href="#header.te">TE</a></h2> … … 1819 1682 and/or a comma-separated list of extension transfer-coding names with optional accept parameters (as described in <a href="#transfer.codings" title="Transfer Codings">Section 3.4</a>). 1820 1683 </p> 1821 <div id="rfc.figure.u.53"></div><pre class="inline"><span id="rfc.iref.g.8 7"></span><span id="rfc.iref.g.88"></span> <a href="#header.te" class="smpl">TE</a> = "TE" ":" #( <a href="#header.te" class="smpl">t-codings</a> )1684 <div id="rfc.figure.u.53"></div><pre class="inline"><span id="rfc.iref.g.86"></span><span id="rfc.iref.g.87"></span> <a href="#header.te" class="smpl">TE</a> = "TE" ":" #( <a href="#header.te" class="smpl">t-codings</a> ) 1822 1685 <a href="#header.te" class="smpl">t-codings</a> = "trailers" / ( <a href="#transfer.codings" class="smpl">transfer-extension</a> [ <a href="#abnf.dependencies" class="smpl">accept-params</a> ] ) 1823 1686 </pre><p id="rfc.section.8.5.p.3">The presence of the keyword "trailers" indicates that the client is willing to accept trailer fields in a chunked transfer-coding, … … 1844 1707 <li> 1845 1708 <p>If the transfer-coding being tested is one of the transfer-codings listed in the TE field, then it is acceptable unless it 1846 is accompanied by a qvalue of 0. (As defined in <a href="p3-payload.html#quality.values" title="Quality Values">Section 3.4</a> of <a href="#Part3" id="rfc.xref.Part3.1 4"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, a qvalue of 0 means "not acceptable.")1709 is accompanied by a qvalue of 0. (As defined in <a href="p3-payload.html#quality.values" title="Quality Values">Section 3.4</a> of <a href="#Part3" id="rfc.xref.Part3.11"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, a qvalue of 0 means "not acceptable.") 1847 1710 </p> 1848 1711 </li> … … 1856 1719 is always acceptable. 1857 1720 </p> 1858 <div id="rfc.iref.t. 3"></div>1721 <div id="rfc.iref.t.2"></div> 1859 1722 <div id="rfc.iref.h.9"></div> 1860 1723 <h2 id="rfc.section.8.6"><a href="#rfc.section.8.6">8.6</a> <a id="header.trailer" href="#header.trailer">Trailer</a></h2> … … 1862 1725 with chunked transfer-coding. 1863 1726 </p> 1864 <div id="rfc.figure.u.55"></div><pre class="inline"><span id="rfc.iref.g.8 9"></span> <a href="#header.trailer" class="smpl">Trailer</a> = "Trailer" ":" 1#<a href="#message.headers" class="smpl">field-name</a>1727 <div id="rfc.figure.u.55"></div><pre class="inline"><span id="rfc.iref.g.88"></span> <a href="#header.trailer" class="smpl">Trailer</a> = "Trailer" ":" 1#<a href="#message.headers" class="smpl">field-name</a> 1865 1728 </pre><p id="rfc.section.8.6.p.3">An HTTP/1.1 message <em class="bcp14">SHOULD</em> include a Trailer header field in a message using chunked transfer-coding with a non-empty trailer. Doing so allows the recipient 1866 1729 to know which header fields to expect in the trailer. … … 1875 1738 <li>Trailer</li> 1876 1739 </ul> 1877 <div id="rfc.iref.t. 4"></div>1740 <div id="rfc.iref.t.3"></div> 1878 1741 <div id="rfc.iref.h.10"></div> 1879 1742 <h2 id="rfc.section.8.7"><a href="#rfc.section.8.7">8.7</a> <a id="header.transfer-encoding" href="#header.transfer-encoding">Transfer-Encoding</a></h2> … … 1882 1745 transfer-coding is a property of the message, not of the entity. 1883 1746 </p> 1884 <div id="rfc.figure.u.56"></div><pre class="inline"><span id="rfc.iref.g. 90"></span> <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a> = "Transfer-Encoding" ":" 1#<a href="#transfer.codings" class="smpl">transfer-coding</a>1747 <div id="rfc.figure.u.56"></div><pre class="inline"><span id="rfc.iref.g.89"></span> <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a> = "Transfer-Encoding" ":" 1#<a href="#transfer.codings" class="smpl">transfer-coding</a> 1885 1748 </pre><p id="rfc.section.8.7.p.3">Transfer-codings are defined in <a href="#transfer.codings" title="Transfer Codings">Section 3.4</a>. An example is: 1886 1749 </p> … … 1889 1752 </p> 1890 1753 <p id="rfc.section.8.7.p.6">Many older HTTP/1.0 applications do not understand the Transfer-Encoding header.</p> 1891 <div id="rfc.iref.u. 5"></div>1754 <div id="rfc.iref.u.3"></div> 1892 1755 <div id="rfc.iref.h.11"></div> 1893 1756 <h2 id="rfc.section.8.8"><a href="#rfc.section.8.8">8.8</a> <a id="header.upgrade" href="#header.upgrade">Upgrade</a></h2> … … 1895 1758 to use if the server finds it appropriate to switch protocols. The server <em class="bcp14">MUST</em> use the Upgrade header field within a 101 (Switching Protocols) response to indicate which protocol(s) are being switched. 1896 1759 </p> 1897 <div id="rfc.figure.u.58"></div><pre class="inline"><span id="rfc.iref.g.9 1"></span> <a href="#header.upgrade" class="smpl">Upgrade</a> = "Upgrade" ":" 1#<a href="#product.tokens" class="smpl">product</a>1760 <div id="rfc.figure.u.58"></div><pre class="inline"><span id="rfc.iref.g.90"></span> <a href="#header.upgrade" class="smpl">Upgrade</a> = "Upgrade" ":" 1#<a href="#product.tokens" class="smpl">product</a> 1898 1761 </pre><p id="rfc.section.8.8.p.3">For example,</p> 1899 1762 <div id="rfc.figure.u.59"></div><pre class="text"> Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11 … … 1919 1782 the client and server associate the name with the same protocol. 1920 1783 </p> 1921 <div id="rfc.iref.v. 2"></div>1784 <div id="rfc.iref.v.1"></div> 1922 1785 <div id="rfc.iref.h.12"></div> 1923 1786 <h2 id="rfc.section.8.9"><a href="#rfc.section.8.9">8.9</a> <a id="header.via" href="#header.via">Via</a></h2> … … 1926 1789 of all senders along the request/response chain. 1927 1790 </p> 1928 <div id="rfc.figure.u.60"></div><pre class="inline"><span id="rfc.iref.g.9 2"></span><span id="rfc.iref.g.93"></span><span id="rfc.iref.g.94"></span><span id="rfc.iref.g.95"></span><span id="rfc.iref.g.96"></span><span id="rfc.iref.g.97"></span> <a href="#header.via" class="smpl">Via</a> = "Via" ":" 1#( <a href="#header.via" class="smpl">received-protocol</a> <a href="#header.via" class="smpl">received-by</a> [ <a href="#rule.comment" class="smpl">comment</a> ] )1791 <div id="rfc.figure.u.60"></div><pre class="inline"><span id="rfc.iref.g.91"></span><span id="rfc.iref.g.92"></span><span id="rfc.iref.g.93"></span><span id="rfc.iref.g.94"></span><span id="rfc.iref.g.95"></span><span id="rfc.iref.g.96"></span> <a href="#header.via" class="smpl">Via</a> = "Via" ":" 1#( <a href="#header.via" class="smpl">received-protocol</a> <a href="#header.via" class="smpl">received-by</a> [ <a href="#rule.comment" class="smpl">comment</a> ] ) 1929 1792 <a href="#header.via" class="smpl">received-protocol</a> = [ <a href="#header.via" class="smpl">protocol-name</a> "/" ] <a href="#header.via" class="smpl">protocol-version</a> 1930 1793 <a href="#header.via" class="smpl">protocol-name</a> = <a href="#rule.token.separators" class="smpl">token</a> … … 2051 1914 is to be registered with IANA (see <a href="#RFC4288" id="rfc.xref.RFC4288.1"><cite title="Media Type Specifications and Registration Procedures">[RFC4288]</cite></a>). 2052 1915 </p> 1916 <div id="rfc.iref.m.1"></div> 2053 1917 <div id="rfc.iref.m.2"></div> 2054 <div id="rfc.iref.m.3"></div>2055 1918 <h3 id="rfc.section.9.3.1"><a href="#rfc.section.9.3.1">9.3.1</a> <a id="internet.media.type.message.http" href="#internet.media.type.message.http">Internet Media Type message/http</a></h3> 2056 1919 <p id="rfc.section.9.3.1.p.1">The message/http type can be used to enclose a single HTTP request or response message, provided that it obeys the MIME restrictions … … 2106 1969 <dd>IESG</dd> 2107 1970 </dl> 2108 <div id="rfc.iref.m. 4"></div>1971 <div id="rfc.iref.m.3"></div> 2109 1972 <div id="rfc.iref.a.1"></div> 2110 1973 <h3 id="rfc.section.9.3.2"><a href="#rfc.section.9.3.2">9.3.2</a> <a id="internet.media.type.application.http" href="#internet.media.type.application.http">Internet Media Type application/http</a></h3> … … 2501 2364 </p> 2502 2365 <p id="rfc.section.A.p.4">The character set of an entity-body <em class="bcp14">SHOULD</em> be labeled as the lowest common denominator of the character codes used within that body, with the exception that not labeling 2503 the entity is preferred over labeling the entity with the labels US-ASCII or ISO-8859-1. See <a href="#Part3" id="rfc.xref.Part3.1 5"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>.2366 the entity is preferred over labeling the entity with the labels US-ASCII or ISO-8859-1. See <a href="#Part3" id="rfc.xref.Part3.12"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>. 2504 2367 </p> 2505 2368 <p id="rfc.section.A.p.5">Additional rules for requirements on parsing and encoding of dates and other potential problems with date encodings include:</p> … … 2584 2447 <p id="rfc.section.C.3.p.2">Transfer-coding and message lengths all interact in ways that required fixing exactly when chunked encoding is used (to allow 2585 2448 for transfer encoding that may not be self delimiting); it was important to straighten out exactly how message lengths are 2586 computed. (Sections <a href="#transfer.codings" title="Transfer Codings">3.4</a>, <a href="#message.length" title="Message Length">4.4</a>, <a href="#header.content-length" id="rfc.xref.header.content-length.3" title="Content-Length">8.2</a>, see also <a href="#Part3" id="rfc.xref.Part3.1 6"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, <a href="#Part5" id="rfc.xref.Part5.1"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a> and <a href="#Part6" id="rfc.xref.Part6.9"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>)2449 computed. (Sections <a href="#transfer.codings" title="Transfer Codings">3.4</a>, <a href="#message.length" title="Message Length">4.4</a>, <a href="#header.content-length" id="rfc.xref.header.content-length.3" title="Content-Length">8.2</a>, see also <a href="#Part3" id="rfc.xref.Part3.13"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>, <a href="#Part5" id="rfc.xref.Part5.1"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a> and <a href="#Part6" id="rfc.xref.Part6.8"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) 2587 2450 </p> 2588 2451 <p id="rfc.section.C.3.p.3">The use and interpretation of HTTP version numbers has been clarified by <a href="#RFC2145" id="rfc.xref.RFC2145.3"><cite title="Use and Interpretation of HTTP Version Numbers">[RFC2145]</cite></a>. Require proxies to upgrade requests to highest protocol version they support to deal with problems discovered in HTTP/1.0 … … 2743 2606 <li>Get rid of RFC822 dependency; use RFC5234 plus extensions instead.</li> 2744 2607 </ul> 2608 <h1 id="rfc.section.E"><a href="#rfc.section.E">E.</a> <a id="intro.terminology" href="#intro.terminology">Terminology</a></h1> 2609 <p id="rfc.section.E.p.1">This specification uses a number of terms to refer to the roles played by participants in, and objects of, the HTTP communication.</p> 2610 <p id="rfc.section.E.p.2"> <span id="rfc.iref.c.3"></span> <dfn>connection</dfn> 2611 </p> 2612 <dl class="empty"> 2613 <dd>A transport layer virtual circuit established between two programs for the purpose of communication.</dd> 2614 </dl> 2615 <p id="rfc.section.E.p.3"> <span id="rfc.iref.m.4"></span> <dfn>message</dfn> 2616 </p> 2617 <dl class="empty"> 2618 <dd>The basic unit of HTTP communication, consisting of a structured sequence of octets matching the syntax defined in <a href="#http.message" title="HTTP Message">Section 4</a> and transmitted via the connection. 2619 </dd> 2620 </dl> 2621 <p id="rfc.section.E.p.4"> <span id="rfc.iref.r.1"></span> <dfn>request</dfn> 2622 </p> 2623 <dl class="empty"> 2624 <dd>An HTTP request message, as defined in <a href="#request" title="Request">Section 5</a>. 2625 </dd> 2626 </dl> 2627 <p id="rfc.section.E.p.5"> <span id="rfc.iref.r.2"></span> <dfn>response</dfn> 2628 </p> 2629 <dl class="empty"> 2630 <dd>An HTTP response message, as defined in <a href="#response" title="Response">Section 6</a>. 2631 </dd> 2632 </dl> 2633 <p id="rfc.section.E.p.6"> <span id="rfc.iref.r.3"></span> <dfn>resource</dfn> 2634 </p> 2635 <dl class="empty"> 2636 <dd>A network data object or service that can be identified by a URI, as defined in <a href="#uri" title="Uniform Resource Identifiers">Section 3.2</a>. Resources may be available in multiple representations (e.g. multiple languages, data formats, size, and resolutions) or 2637 vary in other ways. 2638 </dd> 2639 </dl> 2640 <p id="rfc.section.E.p.7"> <span id="rfc.iref.e.1"></span> <dfn>entity</dfn> 2641 </p> 2642 <dl class="empty"> 2643 <dd>The information transferred as the payload of a request or response. An entity consists of metainformation in the form of 2644 entity-header fields and content in the form of an entity-body, as described in <a href="p3-payload.html#entity" title="Entity">Section 4</a> of <a href="#Part3" id="rfc.xref.Part3.14"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>. 2645 </dd> 2646 </dl> 2647 <p id="rfc.section.E.p.8"> <span id="rfc.iref.r.4"></span> <dfn>representation</dfn> 2648 </p> 2649 <dl class="empty"> 2650 <dd>An entity included with a response that is subject to content negotiation, as described in <a href="p3-payload.html#content.negotiation" title="Content Negotiation">Section 5</a> of <a href="#Part3" id="rfc.xref.Part3.15"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>. There may exist multiple representations associated with a particular response status. 2651 </dd> 2652 </dl> 2653 <p id="rfc.section.E.p.9"> <span id="rfc.iref.c.4"></span> <dfn>content negotiation</dfn> 2654 </p> 2655 <dl class="empty"> 2656 <dd>The mechanism for selecting the appropriate representation when servicing a request, as described in <a href="p3-payload.html#content.negotiation" title="Content Negotiation">Section 5</a> of <a href="#Part3" id="rfc.xref.Part3.16"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>. The representation of entities in any response can be negotiated (including error responses). 2657 </dd> 2658 </dl> 2659 <p id="rfc.section.E.p.10"> <span id="rfc.iref.v.2"></span> <dfn>variant</dfn> 2660 </p> 2661 <dl class="empty"> 2662 <dd>A resource may have one, or more than one, representation(s) associated with it at any given instant. Each of these representations 2663 is termed a `variant'. Use of the term `variant' does not necessarily imply that the resource is subject to content negotiation. 2664 </dd> 2665 </dl> 2666 <p id="rfc.section.E.p.11"> <span id="rfc.iref.c.5"></span> <dfn>client</dfn> 2667 </p> 2668 <dl class="empty"> 2669 <dd>A program that establishes connections for the purpose of sending requests.</dd> 2670 </dl> 2671 <p id="rfc.section.E.p.12"> <span id="rfc.iref.u.4"></span> <dfn>user agent</dfn> 2672 </p> 2673 <dl class="empty"> 2674 <dd>The client which initiates a request. These are often browsers, editors, spiders (web-traversing robots), or other end user 2675 tools. 2676 </dd> 2677 </dl> 2678 <p id="rfc.section.E.p.13"> <span id="rfc.iref.s.1"></span> <dfn>server</dfn> 2679 </p> 2680 <dl class="empty"> 2681 <dd>An application program that accepts connections in order to service requests by sending back responses. Any given program 2682 may be capable of being both a client and a server; our use of these terms refers only to the role being performed by the 2683 program for a particular connection, rather than to the program's capabilities in general. Likewise, any server may act as 2684 an origin server, proxy, gateway, or tunnel, switching behavior based on the nature of each request. 2685 </dd> 2686 </dl> 2687 <p id="rfc.section.E.p.14"> <span id="rfc.iref.o.1"></span> <dfn>origin server</dfn> 2688 </p> 2689 <dl class="empty"> 2690 <dd>The server on which a given resource resides or is to be created.</dd> 2691 </dl> 2692 <p id="rfc.section.E.p.15"> <span id="rfc.iref.p.1"></span> <dfn>proxy</dfn> 2693 </p> 2694 <dl class="empty"> 2695 <dd>An intermediary program which acts as both a server and a client for the purpose of making requests on behalf of other clients. 2696 Requests are serviced internally or by passing them on, with possible translation, to other servers. A proxy <em class="bcp14">MUST</em> implement both the client and server requirements of this specification. A "transparent proxy" is a proxy that does not modify 2697 the request or response beyond what is required for proxy authentication and identification. A "non-transparent proxy" is 2698 a proxy that modifies the request or response in order to provide some added service to the user agent, such as group annotation 2699 services, media type transformation, protocol reduction, or anonymity filtering. Except where either transparent or non-transparent 2700 behavior is explicitly stated, the HTTP proxy requirements apply to both types of proxies. 2701 </dd> 2702 </dl> 2703 <p id="rfc.section.E.p.16"> <span id="rfc.iref.g.97"></span> <dfn>gateway</dfn> 2704 </p> 2705 <dl class="empty"> 2706 <dd>A server which acts as an intermediary for some other server. Unlike a proxy, a gateway receives requests as if it were the 2707 origin server for the requested resource; the requesting client may not be aware that it is communicating with a gateway. 2708 </dd> 2709 </dl> 2710 <p id="rfc.section.E.p.17"> <span id="rfc.iref.t.4"></span> <dfn>tunnel</dfn> 2711 </p> 2712 <dl class="empty"> 2713 <dd>An intermediary program which is acting as a blind relay between two connections. Once active, a tunnel is not considered 2714 a party to the HTTP communication, though the tunnel may have been initiated by an HTTP request. The tunnel ceases to exist 2715 when both ends of the relayed connections are closed. 2716 </dd> 2717 </dl> 2718 <p id="rfc.section.E.p.18"> <span id="rfc.iref.c.6"></span> <dfn>cache</dfn> 2719 </p> 2720 <dl class="empty"> 2721 <dd>A program's local store of response messages and the subsystem that controls its message storage, retrieval, and deletion. 2722 A cache stores cacheable responses in order to reduce the response time and network bandwidth consumption on future, equivalent 2723 requests. Any client or server may include a cache, though a cache cannot be used by a server that is acting as a tunnel. 2724 </dd> 2725 </dl> 2726 <p id="rfc.section.E.p.19"> <span id="rfc.iref.c.7"></span> <dfn>cacheable</dfn> 2727 </p> 2728 <dl class="empty"> 2729 <dd>A response is cacheable if a cache is allowed to store a copy of the response message for use in answering subsequent requests. 2730 The rules for determining the cacheability of HTTP responses are defined in <a href="p6-cache.html#caching" title="Introduction">Section 1</a> of <a href="#Part6" id="rfc.xref.Part6.9"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>. Even if a resource is cacheable, there may be additional constraints on whether a cache can use the cached copy for a particular 2731 request. 2732 </dd> 2733 </dl> 2734 <p id="rfc.section.E.p.20"> <span id="rfc.iref.u.5"></span> <span id="rfc.iref.d.2"></span> <dfn>upstream</dfn>/<dfn>downstream</dfn> 2735 </p> 2736 <dl class="empty"> 2737 <dd>Upstream and downstream describe the flow of a message: all messages flow from upstream to downstream.</dd> 2738 </dl> 2739 <p id="rfc.section.E.p.21"> <span id="rfc.iref.i.2"></span> <span id="rfc.iref.o.2"></span> <dfn>inbound</dfn>/<dfn>outbound</dfn> 2740 </p> 2741 <dl class="empty"> 2742 <dd>Inbound and outbound refer to the request and response paths for messages: "inbound" means "traveling toward the origin server", 2743 and "outbound" means "traveling toward the user agent" 2744 </dd> 2745 </dl> 2745 2746 <h1><a id="rfc.copyright" href="#rfc.copyright">Full Copyright Statement</a></h1> 2746 2747 <p>This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the … … 2777 2778 </li> 2778 2779 <li class="indline0"><a id="rfc.index.C" href="#rfc.index.C"><b>C</b></a><ul class="ind"> 2779 <li class="indline1">cache <a class="iref" href="#rfc.iref.c. 4">1.3</a></li>2780 <li class="indline1">cacheable <a class="iref" href="#rfc.iref.c. 5">1.3</a></li>2781 <li class="indline1">client <a class="iref" href="#rfc.iref.c. 3">1.3</a></li>2782 <li class="indline1">connection <a class="iref" href="#rfc.iref.c. 1">1.3</a></li>2783 <li class="indline1">Connection header <a class="iref" href="#rfc.xref.header.connection.1">4.5</a>, <a class="iref" href="#rfc.xref.header.connection.2">7.1.2</a>, <a class="iref" href="#rfc.xref.header.connection.3">7.1.3</a>, <a class="iref" href="#rfc.iref.c. 6"><b>8.1</b></a>, <a class="iref" href="#rfc.xref.header.connection.4">8.5</a>, <a class="iref" href="#rfc.xref.header.connection.5">8.8</a>, <a class="iref" href="#rfc.xref.header.connection.6">9.1</a>, <a class="iref" href="#rfc.xref.header.connection.7">C.2</a>, <a class="iref" href="#rfc.xref.header.connection.8">C.4</a></li>2784 <li class="indline1">content negotiation <a class="iref" href="#rfc.iref.c. 2">1.3</a></li>2785 <li class="indline1">Content-Length header <a class="iref" href="#rfc.xref.header.content-length.1">4.4</a>, <a class="iref" href="#rfc.iref.c. 7"><b>8.2</b></a>, <a class="iref" href="#rfc.xref.header.content-length.2">9.1</a>, <a class="iref" href="#rfc.xref.header.content-length.3">C.3</a></li>2780 <li class="indline1">cache <a class="iref" href="#rfc.iref.c.6">E</a></li> 2781 <li class="indline1">cacheable <a class="iref" href="#rfc.iref.c.7">E</a></li> 2782 <li class="indline1">client <a class="iref" href="#rfc.iref.c.5">E</a></li> 2783 <li class="indline1">connection <a class="iref" href="#rfc.iref.c.3">E</a></li> 2784 <li class="indline1">Connection header <a class="iref" href="#rfc.xref.header.connection.1">4.5</a>, <a class="iref" href="#rfc.xref.header.connection.2">7.1.2</a>, <a class="iref" href="#rfc.xref.header.connection.3">7.1.3</a>, <a class="iref" href="#rfc.iref.c.1"><b>8.1</b></a>, <a class="iref" href="#rfc.xref.header.connection.4">8.5</a>, <a class="iref" href="#rfc.xref.header.connection.5">8.8</a>, <a class="iref" href="#rfc.xref.header.connection.6">9.1</a>, <a class="iref" href="#rfc.xref.header.connection.7">C.2</a>, <a class="iref" href="#rfc.xref.header.connection.8">C.4</a></li> 2785 <li class="indline1">content negotiation <a class="iref" href="#rfc.iref.c.4">E</a></li> 2786 <li class="indline1">Content-Length header <a class="iref" href="#rfc.xref.header.content-length.1">4.4</a>, <a class="iref" href="#rfc.iref.c.2"><b>8.2</b></a>, <a class="iref" href="#rfc.xref.header.content-length.2">9.1</a>, <a class="iref" href="#rfc.xref.header.content-length.3">C.3</a></li> 2786 2787 </ul> 2787 2788 </li> 2788 2789 <li class="indline0"><a id="rfc.index.D" href="#rfc.index.D"><b>D</b></a><ul class="ind"> 2789 <li class="indline1">Date header <a class="iref" href="#rfc.xref.header.date.1">4.5</a>, <a class="iref" href="#rfc.iref.d. 2"><b>8.3</b></a>, <a class="iref" href="#rfc.xref.header.date.2">9.1</a></li>2790 <li class="indline1">downstream <a class="iref" href="#rfc.iref.d. 1">1.3</a></li>2790 <li class="indline1">Date header <a class="iref" href="#rfc.xref.header.date.1">4.5</a>, <a class="iref" href="#rfc.iref.d.1"><b>8.3</b></a>, <a class="iref" href="#rfc.xref.header.date.2">9.1</a></li> 2791 <li class="indline1">downstream <a class="iref" href="#rfc.iref.d.2">E</a></li> 2791 2792 </ul> 2792 2793 </li> 2793 2794 <li class="indline0"><a id="rfc.index.E" href="#rfc.index.E"><b>E</b></a><ul class="ind"> 2794 <li class="indline1">entity <a class="iref" href="#rfc.iref.e.1"> 1.3</a></li>2795 <li class="indline1">entity <a class="iref" href="#rfc.iref.e.1">E</a></li> 2795 2796 </ul> 2796 2797 </li> 2797 2798 <li class="indline0"><a id="rfc.index.G" href="#rfc.index.G"><b>G</b></a><ul class="ind"> 2798 <li class="indline1">gateway <a class="iref" href="#rfc.iref.g. 1">1.3</a></li>2799 <li class="indline1">gateway <a class="iref" href="#rfc.iref.g.97">E</a></li> 2799 2800 <li class="indline1"><tt>Grammar</tt> 2800 2801 <ul class="ind"> 2801 <li class="indline1"><tt>absoluteURI</tt> <a class="iref" href="#rfc.iref.g.2 7"><b>3.2.1</b></a></li>2802 <li class="indline1"><tt>ALPHA</tt> <a class="iref" href="#rfc.iref.g. 4"><b>2.2</b></a></li>2803 <li class="indline1"><tt>asctime-date</tt> <a class="iref" href="#rfc.iref.g.3 9"><b>3.3.1</b></a></li>2804 <li class="indline1"><tt>attribute</tt> <a class="iref" href="#rfc.iref.g. 50"><b>3.4</b></a></li>2805 <li class="indline1"><tt>authority</tt> <a class="iref" href="#rfc.iref.g.2 8"><b>3.2.1</b></a></li>2806 <li class="indline1"><tt>CHAR</tt> <a class="iref" href="#rfc.iref.g. 3"><b>2.2</b></a></li>2807 <li class="indline1"><tt>chunk</tt> <a class="iref" href="#rfc.iref.g.5 3"><b>3.4.1</b></a></li>2808 <li class="indline1"><tt>chunk-data</tt> <a class="iref" href="#rfc.iref.g.5 9"><b>3.4.1</b></a></li>2809 <li class="indline1"><tt>chunk-ext-name</tt> <a class="iref" href="#rfc.iref.g.5 7"><b>3.4.1</b></a></li>2810 <li class="indline1"><tt>chunk-ext-val</tt> <a class="iref" href="#rfc.iref.g.5 8"><b>3.4.1</b></a></li>2811 <li class="indline1"><tt>chunk-extension</tt> <a class="iref" href="#rfc.iref.g.5 6"><b>3.4.1</b></a></li>2812 <li class="indline1"><tt>chunk-size</tt> <a class="iref" href="#rfc.iref.g.5 4"><b>3.4.1</b></a></li>2813 <li class="indline1"><tt>Chunked-Body</tt> <a class="iref" href="#rfc.iref.g.5 2"><b>3.4.1</b></a></li>2814 <li class="indline1"><tt>comment</tt> <a class="iref" href="#rfc.iref.g.1 9"><b>2.2</b></a></li>2815 <li class="indline1"><tt>Connection</tt> <a class="iref" href="#rfc.iref.g.8 2"><b>8.1</b></a></li>2816 <li class="indline1"><tt>connection-token</tt> <a class="iref" href="#rfc.iref.g.8 3"><b>8.1</b></a></li>2817 <li class="indline1"><tt>Content-Length</tt> <a class="iref" href="#rfc.iref.g.8 4"><b>8.2</b></a></li>2818 <li class="indline1"><tt>CR</tt> <a class="iref" href="#rfc.iref.g. 7"><b>2.2</b></a></li>2819 <li class="indline1"><tt>CRLF</tt> <a class="iref" href="#rfc.iref.g.1 2"><b>2.2</b></a></li>2820 <li class="indline1"><tt>ctext</tt> <a class="iref" href="#rfc.iref.g. 20"><b>2.2</b></a></li>2821 <li class="indline1"><tt>CTL</tt> <a class="iref" href="#rfc.iref.g. 6"><b>2.2</b></a></li>2822 <li class="indline1"><tt>Date</tt> <a class="iref" href="#rfc.iref.g.8 5"><b>8.3</b></a></li>2823 <li class="indline1"><tt>date1</tt> <a class="iref" href="#rfc.iref.g. 40"><b>3.3.1</b></a></li>2824 <li class="indline1"><tt>date2</tt> <a class="iref" href="#rfc.iref.g.4 1"><b>3.3.1</b></a></li>2825 <li class="indline1"><tt>date3</tt> <a class="iref" href="#rfc.iref.g.4 2"><b>3.3.1</b></a></li>2826 <li class="indline1"><tt>DIGIT</tt> <a class="iref" href="#rfc.iref.g. 5"><b>2.2</b></a></li>2827 <li class="indline1"><tt>DQUOTE</tt> <a class="iref" href="#rfc.iref.g.1 1"><b>2.2</b></a></li>2828 <li class="indline1"><tt>extension-code</tt> <a class="iref" href="#rfc.iref.g. 80"><b>6.1.1</b></a></li>2829 <li class="indline1"><tt>extension-method</tt> <a class="iref" href="#rfc.iref.g.7 5"><b>5.1.1</b></a></li>2830 <li class="indline1"><tt>field-content</tt> <a class="iref" href="#rfc.iref.g.6 9"><b>4.2</b></a></li>2831 <li class="indline1"><tt>field-name</tt> <a class="iref" href="#rfc.iref.g.6 7"><b>4.2</b></a></li>2832 <li class="indline1"><tt>field-value</tt> <a class="iref" href="#rfc.iref.g.6 8"><b>4.2</b></a></li>2833 <li class="indline1"><tt>general-header</tt> <a class="iref" href="#rfc.iref.g.7 1"><b>4.5</b></a></li>2834 <li class="indline1"><tt>generic-message</tt> <a class="iref" href="#rfc.iref.g.6 4"><b>4.1</b></a></li>2835 <li class="indline1"><tt>HEXDIG</tt> <a class="iref" href="#rfc.iref.g.1 5"><b>2.2</b></a></li>2836 <li class="indline1"><tt>Host</tt> <a class="iref" href="#rfc.iref.g.8 6"><b>8.4</b></a></li>2837 <li class="indline1"><tt>HTAB</tt> <a class="iref" href="#rfc.iref.g. 10"><b>2.2</b></a></li>2838 <li class="indline1"><tt>HTTP-date</tt> <a class="iref" href="#rfc.iref.g.3 5"><b>3.3.1</b></a></li>2839 <li class="indline1"><tt>HTTP-message</tt> <a class="iref" href="#rfc.iref.g.6 3"><b>4.1</b></a></li>2840 <li class="indline1"><tt>HTTP-Prot-Name</tt> <a class="iref" href="#rfc.iref.g.2 6"><b>3.1</b></a></li>2841 <li class="indline1"><tt>http-URL</tt> <a class="iref" href="#rfc.iref.g.3 4"><b>3.2.2</b></a></li>2842 <li class="indline1"><tt>HTTP-Version</tt> <a class="iref" href="#rfc.iref.g.2 5"><b>3.1</b></a></li>2843 <li class="indline1"><tt>last-chunk</tt> <a class="iref" href="#rfc.iref.g.5 5"><b>3.4.1</b></a></li>2844 <li class="indline1"><tt>LF</tt> <a class="iref" href="#rfc.iref.g. 8"><b>2.2</b></a></li>2845 <li class="indline1"><tt>LWS</tt> <a class="iref" href="#rfc.iref.g.1 3"><b>2.2</b></a></li>2846 <li class="indline1"><tt>message-body</tt> <a class="iref" href="#rfc.iref.g. 70"><b>4.3</b></a></li>2847 <li class="indline1"><tt>message-header</tt> <a class="iref" href="#rfc.iref.g.6 6"><b>4.2</b></a></li>2848 <li class="indline1"><tt>Method</tt> <a class="iref" href="#rfc.iref.g.7 4"><b>5.1.1</b></a></li>2849 <li class="indline1"><tt>month</tt> <a class="iref" href="#rfc.iref.g.4 6"><b>3.3.1</b></a></li>2850 <li class="indline1"><tt>obsolete-date</tt> <a class="iref" href="#rfc.iref.g.3 7"><b>3.3.1</b></a></li>2851 <li class="indline1"><tt>OCTET</tt> <a class="iref" href="#rfc.iref.g. 2"><b>2.2</b></a></li>2852 <li class="indline1"><tt>parameter</tt> <a class="iref" href="#rfc.iref.g.4 9"><b>3.4</b></a></li>2853 <li class="indline1"><tt>path-absolute</tt> <a class="iref" href="#rfc.iref.g.2 9"><b>3.2.1</b></a></li>2854 <li class="indline1"><tt>port</tt> <a class="iref" href="#rfc.iref.g. 30"><b>3.2.1</b></a></li>2855 <li class="indline1"><tt>product</tt> <a class="iref" href="#rfc.iref.g.6 1"><b>3.5</b></a></li>2856 <li class="indline1"><tt>product-version</tt> <a class="iref" href="#rfc.iref.g.6 2"><b>3.5</b></a></li>2857 <li class="indline1"><tt>protocol-name</tt> <a class="iref" href="#rfc.iref.g.9 4"><b>8.9</b></a></li>2858 <li class="indline1"><tt>protocol-version</tt> <a class="iref" href="#rfc.iref.g.9 5"><b>8.9</b></a></li>2859 <li class="indline1"><tt>pseudonym</tt> <a class="iref" href="#rfc.iref.g.9 7"><b>8.9</b></a></li>2860 <li class="indline1"><tt>qdtext</tt> <a class="iref" href="#rfc.iref.g.2 2"><b>2.2</b></a></li>2861 <li class="indline1"><tt>query</tt> <a class="iref" href="#rfc.iref.g.3 1"><b>3.2.1</b></a></li>2862 <li class="indline1"><tt>quoted-pair</tt> <a class="iref" href="#rfc.iref.g.2 4"><b>2.2</b></a></li>2863 <li class="indline1"><tt>quoted-string</tt> <a class="iref" href="#rfc.iref.g.2 1"><b>2.2</b></a></li>2864 <li class="indline1"><tt>quoted-text</tt> <a class="iref" href="#rfc.iref.g.2 3"><b>2.2</b></a></li>2865 <li class="indline1"><tt>Reason-Phrase</tt> <a class="iref" href="#rfc.iref.g.8 1"><b>6.1.1</b></a></li>2866 <li class="indline1"><tt>received-by</tt> <a class="iref" href="#rfc.iref.g.9 6"><b>8.9</b></a></li>2867 <li class="indline1"><tt>received-protocol</tt> <a class="iref" href="#rfc.iref.g.9 3"><b>8.9</b></a></li>2868 <li class="indline1"><tt>relativeURI</tt> <a class="iref" href="#rfc.iref.g.3 2"><b>3.2.1</b></a></li>2869 <li class="indline1"><tt>Request</tt> <a class="iref" href="#rfc.iref.g.7 2"><b>5</b></a></li>2870 <li class="indline1"><tt>Request-Line</tt> <a class="iref" href="#rfc.iref.g.7 3"><b>5.1</b></a></li>2871 <li class="indline1"><tt>Request-URI</tt> <a class="iref" href="#rfc.iref.g.7 6"><b>5.1.2</b></a></li>2872 <li class="indline1"><tt>Response</tt> <a class="iref" href="#rfc.iref.g.7 7"><b>6</b></a></li>2873 <li class="indline1"><tt>rfc1123-date</tt> <a class="iref" href="#rfc.iref.g.3 6"><b>3.3.1</b></a></li>2874 <li class="indline1"><tt>rfc850-date</tt> <a class="iref" href="#rfc.iref.g.3 8"><b>3.3.1</b></a></li>2875 <li class="indline1"><tt>separators</tt> <a class="iref" href="#rfc.iref.g.1 8"><b>2.2</b></a></li>2876 <li class="indline1"><tt>SP</tt> <a class="iref" href="#rfc.iref.g. 9"><b>2.2</b></a></li>2877 <li class="indline1"><tt>start-line</tt> <a class="iref" href="#rfc.iref.g.6 5"><b>4.1</b></a></li>2878 <li class="indline1"><tt>Status-Code</tt> <a class="iref" href="#rfc.iref.g.7 9"><b>6.1.1</b></a></li>2879 <li class="indline1"><tt>Status-Line</tt> <a class="iref" href="#rfc.iref.g.7 8"><b>6.1</b></a></li>2880 <li class="indline1"><tt>t-codings</tt> <a class="iref" href="#rfc.iref.g.8 8"><b>8.5</b></a></li>2881 <li class="indline1"><tt>tchar</tt> <a class="iref" href="#rfc.iref.g.1 7"><b>2.2</b></a></li>2882 <li class="indline1"><tt>TE</tt> <a class="iref" href="#rfc.iref.g.8 7"><b>8.5</b></a></li>2883 <li class="indline1"><tt>TEXT</tt> <a class="iref" href="#rfc.iref.g.1 4"><b>2.2</b></a></li>2884 <li class="indline1"><tt>time</tt> <a class="iref" href="#rfc.iref.g.4 3"><b>3.3.1</b></a></li>2885 <li class="indline1"><tt>token</tt> <a class="iref" href="#rfc.iref.g.1 6"><b>2.2</b></a></li>2886 <li class="indline1"><tt>Trailer</tt> <a class="iref" href="#rfc.iref.g.8 9"><b>8.6</b></a></li>2887 <li class="indline1"><tt>trailer-part</tt> <a class="iref" href="#rfc.iref.g. 60"><b>3.4.1</b></a></li>2888 <li class="indline1"><tt>transfer-coding</tt> <a class="iref" href="#rfc.iref.g.4 7"><b>3.4</b></a></li>2889 <li class="indline1"><tt>Transfer-Encoding</tt> <a class="iref" href="#rfc.iref.g. 90"><b>8.7</b></a></li>2890 <li class="indline1"><tt>transfer-extension</tt> <a class="iref" href="#rfc.iref.g.4 8"><b>3.4</b></a></li>2891 <li class="indline1"><tt>Upgrade</tt> <a class="iref" href="#rfc.iref.g.9 1"><b>8.8</b></a></li>2892 <li class="indline1"><tt>uri-host</tt> <a class="iref" href="#rfc.iref.g.3 3"><b>3.2.1</b></a></li>2893 <li class="indline1"><tt>value</tt> <a class="iref" href="#rfc.iref.g.5 1"><b>3.4</b></a></li>2894 <li class="indline1"><tt>Via</tt> <a class="iref" href="#rfc.iref.g.9 2"><b>8.9</b></a></li>2895 <li class="indline1"><tt>weekday</tt> <a class="iref" href="#rfc.iref.g.4 5"><b>3.3.1</b></a></li>2896 <li class="indline1"><tt>wkday</tt> <a class="iref" href="#rfc.iref.g.4 4"><b>3.3.1</b></a></li>2802 <li class="indline1"><tt>absoluteURI</tt> <a class="iref" href="#rfc.iref.g.26"><b>3.2.1</b></a></li> 2803 <li class="indline1"><tt>ALPHA</tt> <a class="iref" href="#rfc.iref.g.3"><b>2.2</b></a></li> 2804 <li class="indline1"><tt>asctime-date</tt> <a class="iref" href="#rfc.iref.g.38"><b>3.3.1</b></a></li> 2805 <li class="indline1"><tt>attribute</tt> <a class="iref" href="#rfc.iref.g.49"><b>3.4</b></a></li> 2806 <li class="indline1"><tt>authority</tt> <a class="iref" href="#rfc.iref.g.27"><b>3.2.1</b></a></li> 2807 <li class="indline1"><tt>CHAR</tt> <a class="iref" href="#rfc.iref.g.2"><b>2.2</b></a></li> 2808 <li class="indline1"><tt>chunk</tt> <a class="iref" href="#rfc.iref.g.52"><b>3.4.1</b></a></li> 2809 <li class="indline1"><tt>chunk-data</tt> <a class="iref" href="#rfc.iref.g.58"><b>3.4.1</b></a></li> 2810 <li class="indline1"><tt>chunk-ext-name</tt> <a class="iref" href="#rfc.iref.g.56"><b>3.4.1</b></a></li> 2811 <li class="indline1"><tt>chunk-ext-val</tt> <a class="iref" href="#rfc.iref.g.57"><b>3.4.1</b></a></li> 2812 <li class="indline1"><tt>chunk-extension</tt> <a class="iref" href="#rfc.iref.g.55"><b>3.4.1</b></a></li> 2813 <li class="indline1"><tt>chunk-size</tt> <a class="iref" href="#rfc.iref.g.53"><b>3.4.1</b></a></li> 2814 <li class="indline1"><tt>Chunked-Body</tt> <a class="iref" href="#rfc.iref.g.51"><b>3.4.1</b></a></li> 2815 <li class="indline1"><tt>comment</tt> <a class="iref" href="#rfc.iref.g.18"><b>2.2</b></a></li> 2816 <li class="indline1"><tt>Connection</tt> <a class="iref" href="#rfc.iref.g.81"><b>8.1</b></a></li> 2817 <li class="indline1"><tt>connection-token</tt> <a class="iref" href="#rfc.iref.g.82"><b>8.1</b></a></li> 2818 <li class="indline1"><tt>Content-Length</tt> <a class="iref" href="#rfc.iref.g.83"><b>8.2</b></a></li> 2819 <li class="indline1"><tt>CR</tt> <a class="iref" href="#rfc.iref.g.6"><b>2.2</b></a></li> 2820 <li class="indline1"><tt>CRLF</tt> <a class="iref" href="#rfc.iref.g.11"><b>2.2</b></a></li> 2821 <li class="indline1"><tt>ctext</tt> <a class="iref" href="#rfc.iref.g.19"><b>2.2</b></a></li> 2822 <li class="indline1"><tt>CTL</tt> <a class="iref" href="#rfc.iref.g.5"><b>2.2</b></a></li> 2823 <li class="indline1"><tt>Date</tt> <a class="iref" href="#rfc.iref.g.84"><b>8.3</b></a></li> 2824 <li class="indline1"><tt>date1</tt> <a class="iref" href="#rfc.iref.g.39"><b>3.3.1</b></a></li> 2825 <li class="indline1"><tt>date2</tt> <a class="iref" href="#rfc.iref.g.40"><b>3.3.1</b></a></li> 2826 <li class="indline1"><tt>date3</tt> <a class="iref" href="#rfc.iref.g.41"><b>3.3.1</b></a></li> 2827 <li class="indline1"><tt>DIGIT</tt> <a class="iref" href="#rfc.iref.g.4"><b>2.2</b></a></li> 2828 <li class="indline1"><tt>DQUOTE</tt> <a class="iref" href="#rfc.iref.g.10"><b>2.2</b></a></li> 2829 <li class="indline1"><tt>extension-code</tt> <a class="iref" href="#rfc.iref.g.79"><b>6.1.1</b></a></li> 2830 <li class="indline1"><tt>extension-method</tt> <a class="iref" href="#rfc.iref.g.74"><b>5.1.1</b></a></li> 2831 <li class="indline1"><tt>field-content</tt> <a class="iref" href="#rfc.iref.g.68"><b>4.2</b></a></li> 2832 <li class="indline1"><tt>field-name</tt> <a class="iref" href="#rfc.iref.g.66"><b>4.2</b></a></li> 2833 <li class="indline1"><tt>field-value</tt> <a class="iref" href="#rfc.iref.g.67"><b>4.2</b></a></li> 2834 <li class="indline1"><tt>general-header</tt> <a class="iref" href="#rfc.iref.g.70"><b>4.5</b></a></li> 2835 <li class="indline1"><tt>generic-message</tt> <a class="iref" href="#rfc.iref.g.63"><b>4.1</b></a></li> 2836 <li class="indline1"><tt>HEXDIG</tt> <a class="iref" href="#rfc.iref.g.14"><b>2.2</b></a></li> 2837 <li class="indline1"><tt>Host</tt> <a class="iref" href="#rfc.iref.g.85"><b>8.4</b></a></li> 2838 <li class="indline1"><tt>HTAB</tt> <a class="iref" href="#rfc.iref.g.9"><b>2.2</b></a></li> 2839 <li class="indline1"><tt>HTTP-date</tt> <a class="iref" href="#rfc.iref.g.34"><b>3.3.1</b></a></li> 2840 <li class="indline1"><tt>HTTP-message</tt> <a class="iref" href="#rfc.iref.g.62"><b>4.1</b></a></li> 2841 <li class="indline1"><tt>HTTP-Prot-Name</tt> <a class="iref" href="#rfc.iref.g.25"><b>3.1</b></a></li> 2842 <li class="indline1"><tt>http-URL</tt> <a class="iref" href="#rfc.iref.g.33"><b>3.2.2</b></a></li> 2843 <li class="indline1"><tt>HTTP-Version</tt> <a class="iref" href="#rfc.iref.g.24"><b>3.1</b></a></li> 2844 <li class="indline1"><tt>last-chunk</tt> <a class="iref" href="#rfc.iref.g.54"><b>3.4.1</b></a></li> 2845 <li class="indline1"><tt>LF</tt> <a class="iref" href="#rfc.iref.g.7"><b>2.2</b></a></li> 2846 <li class="indline1"><tt>LWS</tt> <a class="iref" href="#rfc.iref.g.12"><b>2.2</b></a></li> 2847 <li class="indline1"><tt>message-body</tt> <a class="iref" href="#rfc.iref.g.69"><b>4.3</b></a></li> 2848 <li class="indline1"><tt>message-header</tt> <a class="iref" href="#rfc.iref.g.65"><b>4.2</b></a></li> 2849 <li class="indline1"><tt>Method</tt> <a class="iref" href="#rfc.iref.g.73"><b>5.1.1</b></a></li> 2850 <li class="indline1"><tt>month</tt> <a class="iref" href="#rfc.iref.g.45"><b>3.3.1</b></a></li> 2851 <li class="indline1"><tt>obsolete-date</tt> <a class="iref" href="#rfc.iref.g.36"><b>3.3.1</b></a></li> 2852 <li class="indline1"><tt>OCTET</tt> <a class="iref" href="#rfc.iref.g.1"><b>2.2</b></a></li> 2853 <li class="indline1"><tt>parameter</tt> <a class="iref" href="#rfc.iref.g.48"><b>3.4</b></a></li> 2854 <li class="indline1"><tt>path-absolute</tt> <a class="iref" href="#rfc.iref.g.28"><b>3.2.1</b></a></li> 2855 <li class="indline1"><tt>port</tt> <a class="iref" href="#rfc.iref.g.29"><b>3.2.1</b></a></li> 2856 <li class="indline1"><tt>product</tt> <a class="iref" href="#rfc.iref.g.60"><b>3.5</b></a></li> 2857 <li class="indline1"><tt>product-version</tt> <a class="iref" href="#rfc.iref.g.61"><b>3.5</b></a></li> 2858 <li class="indline1"><tt>protocol-name</tt> <a class="iref" href="#rfc.iref.g.93"><b>8.9</b></a></li> 2859 <li class="indline1"><tt>protocol-version</tt> <a class="iref" href="#rfc.iref.g.94"><b>8.9</b></a></li> 2860 <li class="indline1"><tt>pseudonym</tt> <a class="iref" href="#rfc.iref.g.96"><b>8.9</b></a></li> 2861 <li class="indline1"><tt>qdtext</tt> <a class="iref" href="#rfc.iref.g.21"><b>2.2</b></a></li> 2862 <li class="indline1"><tt>query</tt> <a class="iref" href="#rfc.iref.g.30"><b>3.2.1</b></a></li> 2863 <li class="indline1"><tt>quoted-pair</tt> <a class="iref" href="#rfc.iref.g.23"><b>2.2</b></a></li> 2864 <li class="indline1"><tt>quoted-string</tt> <a class="iref" href="#rfc.iref.g.20"><b>2.2</b></a></li> 2865 <li class="indline1"><tt>quoted-text</tt> <a class="iref" href="#rfc.iref.g.22"><b>2.2</b></a></li> 2866 <li class="indline1"><tt>Reason-Phrase</tt> <a class="iref" href="#rfc.iref.g.80"><b>6.1.1</b></a></li> 2867 <li class="indline1"><tt>received-by</tt> <a class="iref" href="#rfc.iref.g.95"><b>8.9</b></a></li> 2868 <li class="indline1"><tt>received-protocol</tt> <a class="iref" href="#rfc.iref.g.92"><b>8.9</b></a></li> 2869 <li class="indline1"><tt>relativeURI</tt> <a class="iref" href="#rfc.iref.g.31"><b>3.2.1</b></a></li> 2870 <li class="indline1"><tt>Request</tt> <a class="iref" href="#rfc.iref.g.71"><b>5</b></a></li> 2871 <li class="indline1"><tt>Request-Line</tt> <a class="iref" href="#rfc.iref.g.72"><b>5.1</b></a></li> 2872 <li class="indline1"><tt>Request-URI</tt> <a class="iref" href="#rfc.iref.g.75"><b>5.1.2</b></a></li> 2873 <li class="indline1"><tt>Response</tt> <a class="iref" href="#rfc.iref.g.76"><b>6</b></a></li> 2874 <li class="indline1"><tt>rfc1123-date</tt> <a class="iref" href="#rfc.iref.g.35"><b>3.3.1</b></a></li> 2875 <li class="indline1"><tt>rfc850-date</tt> <a class="iref" href="#rfc.iref.g.37"><b>3.3.1</b></a></li> 2876 <li class="indline1"><tt>separators</tt> <a class="iref" href="#rfc.iref.g.17"><b>2.2</b></a></li> 2877 <li class="indline1"><tt>SP</tt> <a class="iref" href="#rfc.iref.g.8"><b>2.2</b></a></li> 2878 <li class="indline1"><tt>start-line</tt> <a class="iref" href="#rfc.iref.g.64"><b>4.1</b></a></li> 2879 <li class="indline1"><tt>Status-Code</tt> <a class="iref" href="#rfc.iref.g.78"><b>6.1.1</b></a></li> 2880 <li class="indline1"><tt>Status-Line</tt> <a class="iref" href="#rfc.iref.g.77"><b>6.1</b></a></li> 2881 <li class="indline1"><tt>t-codings</tt> <a class="iref" href="#rfc.iref.g.87"><b>8.5</b></a></li> 2882 <li class="indline1"><tt>tchar</tt> <a class="iref" href="#rfc.iref.g.16"><b>2.2</b></a></li> 2883 <li class="indline1"><tt>TE</tt> <a class="iref" href="#rfc.iref.g.86"><b>8.5</b></a></li> 2884 <li class="indline1"><tt>TEXT</tt> <a class="iref" href="#rfc.iref.g.13"><b>2.2</b></a></li> 2885 <li class="indline1"><tt>time</tt> <a class="iref" href="#rfc.iref.g.42"><b>3.3.1</b></a></li> 2886 <li class="indline1"><tt>token</tt> <a class="iref" href="#rfc.iref.g.15"><b>2.2</b></a></li> 2887 <li class="indline1"><tt>Trailer</tt> <a class="iref" href="#rfc.iref.g.88"><b>8.6</b></a></li> 2888 <li class="indline1"><tt>trailer-part</tt> <a class="iref" href="#rfc.iref.g.59"><b>3.4.1</b></a></li> 2889 <li class="indline1"><tt>transfer-coding</tt> <a class="iref" href="#rfc.iref.g.46"><b>3.4</b></a></li> 2890 <li class="indline1"><tt>Transfer-Encoding</tt> <a class="iref" href="#rfc.iref.g.89"><b>8.7</b></a></li> 2891 <li class="indline1"><tt>transfer-extension</tt> <a class="iref" href="#rfc.iref.g.47"><b>3.4</b></a></li> 2892 <li class="indline1"><tt>Upgrade</tt> <a class="iref" href="#rfc.iref.g.90"><b>8.8</b></a></li> 2893 <li class="indline1"><tt>uri-host</tt> <a class="iref" href="#rfc.iref.g.32"><b>3.2.1</b></a></li> 2894 <li class="indline1"><tt>value</tt> <a class="iref" href="#rfc.iref.g.50"><b>3.4</b></a></li> 2895 <li class="indline1"><tt>Via</tt> <a class="iref" href="#rfc.iref.g.91"><b>8.9</b></a></li> 2896 <li class="indline1"><tt>weekday</tt> <a class="iref" href="#rfc.iref.g.44"><b>3.3.1</b></a></li> 2897 <li class="indline1"><tt>wkday</tt> <a class="iref" href="#rfc.iref.g.43"><b>3.3.1</b></a></li> 2897 2898 </ul> 2898 2899 </li> … … 2919 2920 </li> 2920 2921 <li class="indline0"><a id="rfc.index.I" href="#rfc.index.I"><b>I</b></a><ul class="ind"> 2921 <li class="indline1">implied *LWS <a class="iref" href="#rfc.iref.i. 2"><b>2.1.2</b></a></li>2922 <li class="indline1">inbound <a class="iref" href="#rfc.iref.i. 1">1.3</a></li>2922 <li class="indline1">implied *LWS <a class="iref" href="#rfc.iref.i.1"><b>2.1.2</b></a></li> 2923 <li class="indline1">inbound <a class="iref" href="#rfc.iref.i.2">E</a></li> 2923 2924 <li class="indline1"><em>ISO-8859-1</em> <a class="iref" href="#rfc.xref.ISO-8859-1.1">2.2</a>, <a class="iref" href="#ISO-8859-1"><b>12.1</b></a></li> 2924 2925 </ul> … … 2931 2932 <li class="indline1">Media Type 2932 2933 <ul class="ind"> 2933 <li class="indline1">application/http <a class="iref" href="#rfc.iref.m. 4"><b>9.3.2</b></a></li>2934 <li class="indline1">message/http <a class="iref" href="#rfc.iref.m. 2"><b>9.3.1</b></a></li>2934 <li class="indline1">application/http <a class="iref" href="#rfc.iref.m.3"><b>9.3.2</b></a></li> 2935 <li class="indline1">message/http <a class="iref" href="#rfc.iref.m.1"><b>9.3.1</b></a></li> 2935 2936 </ul> 2936 2937 </li> 2937 <li class="indline1">message <a class="iref" href="#rfc.iref.m. 1">1.3</a></li>2938 <li class="indline1">message/http Media Type <a class="iref" href="#rfc.iref.m. 3"><b>9.3.1</b></a></li>2938 <li class="indline1">message <a class="iref" href="#rfc.iref.m.4">E</a></li> 2939 <li class="indline1">message/http Media Type <a class="iref" href="#rfc.iref.m.2"><b>9.3.1</b></a></li> 2939 2940 </ul> 2940 2941 </li> … … 2944 2945 </li> 2945 2946 <li class="indline0"><a id="rfc.index.O" href="#rfc.index.O"><b>O</b></a><ul class="ind"> 2946 <li class="indline1">origin server <a class="iref" href="#rfc.iref.o.1"> 1.3</a></li>2947 <li class="indline1">outbound <a class="iref" href="#rfc.iref.o.2"> 1.3</a></li>2947 <li class="indline1">origin server <a class="iref" href="#rfc.iref.o.1">E</a></li> 2948 <li class="indline1">outbound <a class="iref" href="#rfc.iref.o.2">E</a></li> 2948 2949 </ul> 2949 2950 </li> … … 2963 2964 </ul> 2964 2965 </li> 2965 <li class="indline1"><em>Part3</em> <a class="iref" href="#rfc.xref.Part3.1">1.3</a>, <a class="iref" href="#rfc.xref.Part3.2"> 1.3</a>, <a class="iref" href="#rfc.xref.Part3.3">1.3</a>, <a class="iref" href="#rfc.xref.Part3.4">1.4</a>, <a class="iref" href="#rfc.xref.Part3.5">2.2</a>, <a class="iref" href="#rfc.xref.Part3.6">2.3</a>, <a class="iref" href="#rfc.xref.Part3.7">2.3</a>, <a class="iref" href="#rfc.xref.Part3.8">2.3</a>, <a class="iref" href="#rfc.xref.Part3.9">3.4</a>, <a class="iref" href="#rfc.xref.Part3.10">3.4</a>, <a class="iref" href="#rfc.xref.Part3.11">4.2</a>, <a class="iref" href="#rfc.xref.Part3.12">5</a>, <a class="iref" href="#rfc.xref.Part3.13">6</a>, <a class="iref" href="#rfc.xref.Part3.14">8.5</a>, <a class="iref" href="#Part3"><b>12.1</b></a>, <a class="iref" href="#rfc.xref.Part3.15">A</a>, <a class="iref" href="#rfc.xref.Part3.16">C.3</a><ul class="ind">2966 <li class="indline1"><em>Section 3.2</em> <a class="iref" href="#rfc.xref.Part3. 9">3.4</a>, <a class="iref" href="#rfc.xref.Part3.10">3.4</a></li>2967 <li class="indline1"><em>Section 3.3</em> <a class="iref" href="#rfc.xref.Part3. 5">2.2</a></li>2968 <li class="indline1"><em>Section 3.4</em> <a class="iref" href="#rfc.xref.Part3.1 4">8.5</a></li>2969 <li class="indline1"><em>Section 4 </em> <a class="iref" href="#rfc.xref.Part3.1">1.3</a></li>2970 <li class="indline1"><em>Section 4 .1</em> <a class="iref" href="#rfc.xref.Part3.8">2.3</a>, <a class="iref" href="#rfc.xref.Part3.11">4.2</a>, <a class="iref" href="#rfc.xref.Part3.12">5</a>, <a class="iref" href="#rfc.xref.Part3.13">6</a></li>2971 <li class="indline1"><em>Section 4.2</em> <a class="iref" href="#rfc.xref.Part3. 7">2.3</a></li>2972 <li class="indline1"><em>Section 5</em> <a class="iref" href="#rfc.xref.Part3. 2">1.3</a>, <a class="iref" href="#rfc.xref.Part3.3">1.3</a></li>2973 <li class="indline1"><em>Section 6.1</em> <a class="iref" href="#rfc.xref.Part3. 6">2.3</a></li>2974 <li class="indline1"><em>Appendix A</em> <a class="iref" href="#rfc.xref.Part3. 4">1.4</a></li>2966 <li class="indline1"><em>Part3</em> <a class="iref" href="#rfc.xref.Part3.1">1.3</a>, <a class="iref" href="#rfc.xref.Part3.2">2.2</a>, <a class="iref" href="#rfc.xref.Part3.3">2.3</a>, <a class="iref" href="#rfc.xref.Part3.4">2.3</a>, <a class="iref" href="#rfc.xref.Part3.5">2.3</a>, <a class="iref" href="#rfc.xref.Part3.6">3.4</a>, <a class="iref" href="#rfc.xref.Part3.7">3.4</a>, <a class="iref" href="#rfc.xref.Part3.8">4.2</a>, <a class="iref" href="#rfc.xref.Part3.9">5</a>, <a class="iref" href="#rfc.xref.Part3.10">6</a>, <a class="iref" href="#rfc.xref.Part3.11">8.5</a>, <a class="iref" href="#Part3"><b>12.1</b></a>, <a class="iref" href="#rfc.xref.Part3.12">A</a>, <a class="iref" href="#rfc.xref.Part3.13">C.3</a>, <a class="iref" href="#rfc.xref.Part3.14">E</a>, <a class="iref" href="#rfc.xref.Part3.15">E</a>, <a class="iref" href="#rfc.xref.Part3.16">E</a><ul class="ind"> 2967 <li class="indline1"><em>Section 3.2</em> <a class="iref" href="#rfc.xref.Part3.6">3.4</a>, <a class="iref" href="#rfc.xref.Part3.7">3.4</a></li> 2968 <li class="indline1"><em>Section 3.3</em> <a class="iref" href="#rfc.xref.Part3.2">2.2</a></li> 2969 <li class="indline1"><em>Section 3.4</em> <a class="iref" href="#rfc.xref.Part3.11">8.5</a></li> 2970 <li class="indline1"><em>Section 4.1</em> <a class="iref" href="#rfc.xref.Part3.5">2.3</a>, <a class="iref" href="#rfc.xref.Part3.8">4.2</a>, <a class="iref" href="#rfc.xref.Part3.9">5</a>, <a class="iref" href="#rfc.xref.Part3.10">6</a></li> 2971 <li class="indline1"><em>Section 4</em> <a class="iref" href="#rfc.xref.Part3.14">E</a></li> 2972 <li class="indline1"><em>Section 4.2</em> <a class="iref" href="#rfc.xref.Part3.4">2.3</a></li> 2973 <li class="indline1"><em>Section 5</em> <a class="iref" href="#rfc.xref.Part3.15">E</a>, <a class="iref" href="#rfc.xref.Part3.16">E</a></li> 2974 <li class="indline1"><em>Section 6.1</em> <a class="iref" href="#rfc.xref.Part3.3">2.3</a></li> 2975 <li class="indline1"><em>Appendix A</em> <a class="iref" href="#rfc.xref.Part3.1">1.3</a></li> 2975 2976 </ul> 2976 2977 </li> 2977 2978 <li class="indline1"><em>Part5</em> <a class="iref" href="#Part5"><b>12.1</b></a>, <a class="iref" href="#rfc.xref.Part5.1">C.3</a></li> 2978 <li class="indline1"><em>Part6</em> <a class="iref" href="#rfc.xref.Part6.1">1.3</a>, <a class="iref" href="#rfc.xref.Part6.2"> 1.4</a>, <a class="iref" href="#rfc.xref.Part6.3">2.3</a>, <a class="iref" href="#rfc.xref.Part6.4">2.3</a>, <a class="iref" href="#rfc.xref.Part6.5">2.3</a>, <a class="iref" href="#rfc.xref.Part6.6">4.5</a>, <a class="iref" href="#rfc.xref.Part6.7">4.5</a>, <a class="iref" href="#rfc.xref.Part6.8">4.5</a>, <a class="iref" href="#Part6"><b>12.1</b></a>, <a class="iref" href="#rfc.xref.Part6.9">C.3</a><ul class="ind">2979 <li class="indline1"><em>Section 1</em> <a class="iref" href="#rfc.xref.Part6.1">1.3</a>, <a class="iref" href="#rfc.xref.Part6. 2">1.4</a></li>2980 <li class="indline1"><em>Section 16.2</em> <a class="iref" href="#rfc.xref.Part6. 6">4.5</a></li>2981 <li class="indline1"><em>Section 16.4</em> <a class="iref" href="#rfc.xref.Part6. 3">2.3</a>, <a class="iref" href="#rfc.xref.Part6.4">2.3</a>, <a class="iref" href="#rfc.xref.Part6.7">4.5</a></li>2982 <li class="indline1"><em>Section 16.6</em> <a class="iref" href="#rfc.xref.Part6. 5">2.3</a>, <a class="iref" href="#rfc.xref.Part6.8">4.5</a></li>2979 <li class="indline1"><em>Part6</em> <a class="iref" href="#rfc.xref.Part6.1">1.3</a>, <a class="iref" href="#rfc.xref.Part6.2">2.3</a>, <a class="iref" href="#rfc.xref.Part6.3">2.3</a>, <a class="iref" href="#rfc.xref.Part6.4">2.3</a>, <a class="iref" href="#rfc.xref.Part6.5">4.5</a>, <a class="iref" href="#rfc.xref.Part6.6">4.5</a>, <a class="iref" href="#rfc.xref.Part6.7">4.5</a>, <a class="iref" href="#Part6"><b>12.1</b></a>, <a class="iref" href="#rfc.xref.Part6.8">C.3</a>, <a class="iref" href="#rfc.xref.Part6.9">E</a><ul class="ind"> 2980 <li class="indline1"><em>Section 1</em> <a class="iref" href="#rfc.xref.Part6.1">1.3</a>, <a class="iref" href="#rfc.xref.Part6.9">E</a></li> 2981 <li class="indline1"><em>Section 16.2</em> <a class="iref" href="#rfc.xref.Part6.5">4.5</a></li> 2982 <li class="indline1"><em>Section 16.4</em> <a class="iref" href="#rfc.xref.Part6.2">2.3</a>, <a class="iref" href="#rfc.xref.Part6.3">2.3</a>, <a class="iref" href="#rfc.xref.Part6.6">4.5</a></li> 2983 <li class="indline1"><em>Section 16.6</em> <a class="iref" href="#rfc.xref.Part6.4">2.3</a>, <a class="iref" href="#rfc.xref.Part6.7">4.5</a></li> 2983 2984 </ul> 2984 2985 </li> 2985 <li class="indline1">proxy <a class="iref" href="#rfc.iref.p.1"> 1.3</a></li>2986 <li class="indline1">proxy <a class="iref" href="#rfc.iref.p.1">E</a></li> 2986 2987 </ul> 2987 2988 </li> 2988 2989 <li class="indline0"><a id="rfc.index.R" href="#rfc.index.R"><b>R</b></a><ul class="ind"> 2989 <li class="indline1">representation <a class="iref" href="#rfc.iref.r.4"> 1.3</a></li>2990 <li class="indline1">request <a class="iref" href="#rfc.iref.r.1"> 1.3</a></li>2991 <li class="indline1">resource <a class="iref" href="#rfc.iref.r.3"> 1.3</a></li>2992 <li class="indline1">response <a class="iref" href="#rfc.iref.r.2"> 1.3</a></li>2990 <li class="indline1">representation <a class="iref" href="#rfc.iref.r.4">E</a></li> 2991 <li class="indline1">request <a class="iref" href="#rfc.iref.r.1">E</a></li> 2992 <li class="indline1">resource <a class="iref" href="#rfc.iref.r.3">E</a></li> 2993 <li class="indline1">response <a class="iref" href="#rfc.iref.r.2">E</a></li> 2993 2994 <li class="indline1"><em>RFC1123</em> <a class="iref" href="#rfc.xref.RFC1123.1">3.3.1</a>, <a class="iref" href="#RFC1123"><b>12.2</b></a></li> 2994 2995 <li class="indline1"><em>RFC1305</em> <a class="iref" href="#rfc.xref.RFC1305.1">8.3</a>, <a class="iref" href="#RFC1305"><b>12.2</b></a></li> … … 3041 3042 </li> 3042 3043 <li class="indline0"><a id="rfc.index.S" href="#rfc.index.S"><b>S</b></a><ul class="ind"> 3043 <li class="indline1">server <a class="iref" href="#rfc.iref.s.1"> 1.3</a></li>3044 <li class="indline1">server <a class="iref" href="#rfc.iref.s.1">E</a></li> 3044 3045 <li class="indline1"><em>Spe</em> <a class="iref" href="#rfc.xref.Spe.1">7.1.1</a>, <a class="iref" href="#Spe"><b>12.2</b></a></li> 3045 3046 </ul> 3046 3047 </li> 3047 3048 <li class="indline0"><a id="rfc.index.T" href="#rfc.index.T"><b>T</b></a><ul class="ind"> 3048 <li class="indline1">TE header <a class="iref" href="#rfc.xref.header.te.1">3.4</a>, <a class="iref" href="#rfc.xref.header.te.2">3.4.1</a>, <a class="iref" href="#rfc.iref.t. 2"><b>8.5</b></a>, <a class="iref" href="#rfc.xref.header.te.3">9.1</a>, <a class="iref" href="#rfc.xref.header.te.4">C.3</a></li>3049 <li class="indline1">TE header <a class="iref" href="#rfc.xref.header.te.1">3.4</a>, <a class="iref" href="#rfc.xref.header.te.2">3.4.1</a>, <a class="iref" href="#rfc.iref.t.1"><b>8.5</b></a>, <a class="iref" href="#rfc.xref.header.te.3">9.1</a>, <a class="iref" href="#rfc.xref.header.te.4">C.3</a></li> 3049 3050 <li class="indline1"><em>Tou1998</em> <a class="iref" href="#rfc.xref.Tou1998.1">7.1.1</a>, <a class="iref" href="#Tou1998"><b>12.2</b></a></li> 3050 <li class="indline1">Trailer header <a class="iref" href="#rfc.xref.header.trailer.1">3.4.1</a>, <a class="iref" href="#rfc.xref.header.trailer.2">4.5</a>, <a class="iref" href="#rfc.iref.t. 3"><b>8.6</b></a>, <a class="iref" href="#rfc.xref.header.trailer.3">9.1</a></li>3051 <li class="indline1">Transfer-Encoding header <a class="iref" href="#rfc.xref.header.transfer-encoding.1">3.4</a>, <a class="iref" href="#rfc.xref.header.transfer-encoding.2">4.3</a>, <a class="iref" href="#rfc.xref.header.transfer-encoding.3">4.4</a>, <a class="iref" href="#rfc.xref.header.transfer-encoding.4">4.5</a>, <a class="iref" href="#rfc.iref.t. 4"><b>8.7</b></a>, <a class="iref" href="#rfc.xref.header.transfer-encoding.5">9.1</a></li>3052 <li class="indline1">tunnel <a class="iref" href="#rfc.iref.t. 1">1.3</a></li>3051 <li class="indline1">Trailer header <a class="iref" href="#rfc.xref.header.trailer.1">3.4.1</a>, <a class="iref" href="#rfc.xref.header.trailer.2">4.5</a>, <a class="iref" href="#rfc.iref.t.2"><b>8.6</b></a>, <a class="iref" href="#rfc.xref.header.trailer.3">9.1</a></li> 3052 <li class="indline1">Transfer-Encoding header <a class="iref" href="#rfc.xref.header.transfer-encoding.1">3.4</a>, <a class="iref" href="#rfc.xref.header.transfer-encoding.2">4.3</a>, <a class="iref" href="#rfc.xref.header.transfer-encoding.3">4.4</a>, <a class="iref" href="#rfc.xref.header.transfer-encoding.4">4.5</a>, <a class="iref" href="#rfc.iref.t.3"><b>8.7</b></a>, <a class="iref" href="#rfc.xref.header.transfer-encoding.5">9.1</a></li> 3053 <li class="indline1">tunnel <a class="iref" href="#rfc.iref.t.4">E</a></li> 3053 3054 </ul> 3054 3055 </li> 3055 3056 <li class="indline0"><a id="rfc.index.U" href="#rfc.index.U"><b>U</b></a><ul class="ind"> 3056 <li class="indline1">Upgrade header <a class="iref" href="#rfc.xref.header.upgrade.1">4.5</a>, <a class="iref" href="#rfc.iref.u. 5"><b>8.8</b></a>, <a class="iref" href="#rfc.xref.header.upgrade.2">9.1</a></li>3057 <li class="indline1">upstream <a class="iref" href="#rfc.iref.u. 2">1.3</a></li>3057 <li class="indline1">Upgrade header <a class="iref" href="#rfc.xref.header.upgrade.1">4.5</a>, <a class="iref" href="#rfc.iref.u.3"><b>8.8</b></a>, <a class="iref" href="#rfc.xref.header.upgrade.2">9.1</a></li> 3058 <li class="indline1">upstream <a class="iref" href="#rfc.iref.u.5">E</a></li> 3058 3059 <li class="indline1">URI scheme 3059 3060 <ul class="ind"> 3060 <li class="indline1">http <a class="iref" href="#rfc.iref.u. 3"><b>3.2.2</b></a></li>3061 <li class="indline1">https <a class="iref" href="#rfc.iref.u. 4">3.2.2</a></li>3061 <li class="indline1">http <a class="iref" href="#rfc.iref.u.1"><b>3.2.2</b></a></li> 3062 <li class="indline1">https <a class="iref" href="#rfc.iref.u.2">3.2.2</a></li> 3062 3063 </ul> 3063 3064 </li> 3064 3065 <li class="indline1"><em>USASCII</em> <a class="iref" href="#rfc.xref.USASCII.1">2.2</a>, <a class="iref" href="#USASCII"><b>12.1</b></a></li> 3065 <li class="indline1">user agent <a class="iref" href="#rfc.iref.u. 1">1.3</a></li>3066 <li class="indline1">user agent <a class="iref" href="#rfc.iref.u.4">E</a></li> 3066 3067 </ul> 3067 3068 </li> 3068 3069 <li class="indline0"><a id="rfc.index.V" href="#rfc.index.V"><b>V</b></a><ul class="ind"> 3069 <li class="indline1">variant <a class="iref" href="#rfc.iref.v. 1">1.3</a></li>3070 <li class="indline1">Via header <a class="iref" href="#rfc.xref.header.via.1">4.5</a>, <a class="iref" href="#rfc.iref.v. 2"><b>8.9</b></a>, <a class="iref" href="#rfc.xref.header.via.2">9.1</a></li>3070 <li class="indline1">variant <a class="iref" href="#rfc.iref.v.2">E</a></li> 3071 <li class="indline1">Via header <a class="iref" href="#rfc.xref.header.via.1">4.5</a>, <a class="iref" href="#rfc.iref.v.1"><b>8.9</b></a>, <a class="iref" href="#rfc.xref.header.via.2">9.1</a></li> 3071 3072 </ul> 3072 3073 </li> -
draft-ietf-httpbis/latest-roy/p1-messaging.xml
r335 r337 306 306 </section> 307 307 308 <section title="Terminology" anchor="intro.terminology">309 <t>310 This specification uses a number of terms to refer to the roles311 played by participants in, and objects of, the HTTP communication.312 </t>313 <t>314 <iref item="connection"/>315 <x:dfn>connection</x:dfn>316 <list>317 <t>318 A transport layer virtual circuit established between two programs319 for the purpose of communication.320 </t>321 </list>322 </t>323 <t>324 <iref item="message"/>325 <x:dfn>message</x:dfn>326 <list>327 <t>328 The basic unit of HTTP communication, consisting of a structured329 sequence of octets matching the syntax defined in <xref target="http.message"/> and330 transmitted via the connection.331 </t>332 </list>333 </t>334 <t>335 <iref item="request"/>336 <x:dfn>request</x:dfn>337 <list>338 <t>339 An HTTP request message, as defined in <xref target="request"/>.340 </t>341 </list>342 </t>343 <t>344 <iref item="response"/>345 <x:dfn>response</x:dfn>346 <list>347 <t>348 An HTTP response message, as defined in <xref target="response"/>.349 </t>350 </list>351 </t>352 <t>353 <iref item="resource"/>354 <x:dfn>resource</x:dfn>355 <list>356 <t>357 A network data object or service that can be identified by a URI,358 as defined in <xref target="uri"/>. Resources may be available in multiple359 representations (e.g. multiple languages, data formats, size, and360 resolutions) or vary in other ways.361 </t>362 </list>363 </t>364 <t>365 <iref item="entity"/>366 <x:dfn>entity</x:dfn>367 <list>368 <t>369 The information transferred as the payload of a request or370 response. An entity consists of metainformation in the form of371 entity-header fields and content in the form of an entity-body, as372 described in &entity;.373 </t>374 </list>375 </t>376 <t>377 <iref item="representation"/>378 <x:dfn>representation</x:dfn>379 <list>380 <t>381 An entity included with a response that is subject to content382 negotiation, as described in &content.negotiation;. There may exist multiple383 representations associated with a particular response status.384 </t>385 </list>386 </t>387 <t>388 <iref item="content negotiation"/>389 <x:dfn>content negotiation</x:dfn>390 <list>391 <t>392 The mechanism for selecting the appropriate representation when393 servicing a request, as described in &content.negotiation;. The394 representation of entities in any response can be negotiated395 (including error responses).396 </t>397 </list>398 </t>399 <t>400 <iref item="variant"/>401 <x:dfn>variant</x:dfn>402 <list>403 <t>404 A resource may have one, or more than one, representation(s)405 associated with it at any given instant. Each of these406 representations is termed a `variant'. Use of the term `variant'407 does not necessarily imply that the resource is subject to content408 negotiation.409 </t>410 </list>411 </t>412 <t>413 <iref item="client"/>414 <x:dfn>client</x:dfn>415 <list>416 <t>417 A program that establishes connections for the purpose of sending418 requests.419 </t>420 </list>421 </t>422 <t>423 <iref item="user agent"/>424 <x:dfn>user agent</x:dfn>425 <list>426 <t>427 The client which initiates a request. These are often browsers,428 editors, spiders (web-traversing robots), or other end user tools.429 </t>430 </list>431 </t>432 <t>433 <iref item="server"/>434 <x:dfn>server</x:dfn>435 <list>436 <t>437 An application program that accepts connections in order to438 service requests by sending back responses. Any given program may439 be capable of being both a client and a server; our use of these440 terms refers only to the role being performed by the program for a441 particular connection, rather than to the program's capabilities442 in general. Likewise, any server may act as an origin server,443 proxy, gateway, or tunnel, switching behavior based on the nature444 of each request.445 </t>446 </list>447 </t>448 <t>449 <iref item="origin server"/>450 <x:dfn>origin server</x:dfn>451 <list>452 <t>453 The server on which a given resource resides or is to be created.454 </t>455 </list>456 </t>457 <t>458 <iref item="proxy"/>459 <x:dfn>proxy</x:dfn>460 <list>461 <t>462 An intermediary program which acts as both a server and a client463 for the purpose of making requests on behalf of other clients.464 Requests are serviced internally or by passing them on, with465 possible translation, to other servers. A proxy &MUST; implement466 both the client and server requirements of this specification. A467 "transparent proxy" is a proxy that does not modify the request or468 response beyond what is required for proxy authentication and469 identification. A "non-transparent proxy" is a proxy that modifies470 the request or response in order to provide some added service to471 the user agent, such as group annotation services, media type472 transformation, protocol reduction, or anonymity filtering. Except473 where either transparent or non-transparent behavior is explicitly474 stated, the HTTP proxy requirements apply to both types of475 proxies.476 </t>477 </list>478 </t>479 <t>480 <iref item="gateway"/>481 <x:dfn>gateway</x:dfn>482 <list>483 <t>484 A server which acts as an intermediary for some other server.485 Unlike a proxy, a gateway receives requests as if it were the486 origin server for the requested resource; the requesting client487 may not be aware that it is communicating with a gateway.488 </t>489 </list>490 </t>491 <t>492 <iref item="tunnel"/>493 <x:dfn>tunnel</x:dfn>494 <list>495 <t>496 An intermediary program which is acting as a blind relay between497 two connections. Once active, a tunnel is not considered a party498 to the HTTP communication, though the tunnel may have been499 initiated by an HTTP request. The tunnel ceases to exist when both500 ends of the relayed connections are closed.501 </t>502 </list>503 </t>504 <t>505 <iref item="cache"/>506 <x:dfn>cache</x:dfn>507 <list>508 <t>509 A program's local store of response messages and the subsystem510 that controls its message storage, retrieval, and deletion. A511 cache stores cacheable responses in order to reduce the response512 time and network bandwidth consumption on future, equivalent513 requests. Any client or server may include a cache, though a cache514 cannot be used by a server that is acting as a tunnel.515 </t>516 </list>517 </t>518 <t>519 <iref item="cacheable"/>520 <x:dfn>cacheable</x:dfn>521 <list>522 <t>523 A response is cacheable if a cache is allowed to store a copy of524 the response message for use in answering subsequent requests. The525 rules for determining the cacheability of HTTP responses are526 defined in &caching;. Even if a resource is cacheable, there may527 be additional constraints on whether a cache can use the cached528 copy for a particular request.529 </t>530 </list>531 </t>532 <t>533 <iref item="upstream"/>534 <iref item="downstream"/>535 <x:dfn>upstream</x:dfn>/<x:dfn>downstream</x:dfn>536 <list>537 <t>538 Upstream and downstream describe the flow of a message: all539 messages flow from upstream to downstream.540 </t>541 </list>542 </t>543 <t>544 <iref item="inbound"/>545 <iref item="outbound"/>546 <x:dfn>inbound</x:dfn>/<x:dfn>outbound</x:dfn>547 <list>548 <t>549 Inbound and outbound refer to the request and response paths for550 messages: "inbound" means "traveling toward the origin server",551 and "outbound" means "traveling toward the user agent"552 </t>553 </list>554 </t>555 </section>556 557 308 <section title="Overall Operation" anchor="intro.overall.operation"> 558 309 <t> … … 4652 4403 </section> 4653 4404 4405 <section title="Terminology" anchor="intro.terminology"> 4406 <t> 4407 This specification uses a number of terms to refer to the roles 4408 played by participants in, and objects of, the HTTP communication. 4409 </t> 4410 <t> 4411 <iref item="connection"/> 4412 <x:dfn>connection</x:dfn> 4413 <list> 4414 <t> 4415 A transport layer virtual circuit established between two programs 4416 for the purpose of communication. 4417 </t> 4418 </list> 4419 </t> 4420 <t> 4421 <iref item="message"/> 4422 <x:dfn>message</x:dfn> 4423 <list> 4424 <t> 4425 The basic unit of HTTP communication, consisting of a structured 4426 sequence of octets matching the syntax defined in <xref target="http.message"/> and 4427 transmitted via the connection. 4428 </t> 4429 </list> 4430 </t> 4431 <t> 4432 <iref item="request"/> 4433 <x:dfn>request</x:dfn> 4434 <list> 4435 <t> 4436 An HTTP request message, as defined in <xref target="request"/>. 4437 </t> 4438 </list> 4439 </t> 4440 <t> 4441 <iref item="response"/> 4442 <x:dfn>response</x:dfn> 4443 <list> 4444 <t> 4445 An HTTP response message, as defined in <xref target="response"/>. 4446 </t> 4447 </list> 4448 </t> 4449 <t> 4450 <iref item="resource"/> 4451 <x:dfn>resource</x:dfn> 4452 <list> 4453 <t> 4454 A network data object or service that can be identified by a URI, 4455 as defined in <xref target="uri"/>. Resources may be available in multiple 4456 representations (e.g. multiple languages, data formats, size, and 4457 resolutions) or vary in other ways. 4458 </t> 4459 </list> 4460 </t> 4461 <t> 4462 <iref item="entity"/> 4463 <x:dfn>entity</x:dfn> 4464 <list> 4465 <t> 4466 The information transferred as the payload of a request or 4467 response. An entity consists of metainformation in the form of 4468 entity-header fields and content in the form of an entity-body, as 4469 described in &entity;. 4470 </t> 4471 </list> 4472 </t> 4473 <t> 4474 <iref item="representation"/> 4475 <x:dfn>representation</x:dfn> 4476 <list> 4477 <t> 4478 An entity included with a response that is subject to content 4479 negotiation, as described in &content.negotiation;. There may exist multiple 4480 representations associated with a particular response status. 4481 </t> 4482 </list> 4483 </t> 4484 <t> 4485 <iref item="content negotiation"/> 4486 <x:dfn>content negotiation</x:dfn> 4487 <list> 4488 <t> 4489 The mechanism for selecting the appropriate representation when 4490 servicing a request, as described in &content.negotiation;. The 4491 representation of entities in any response can be negotiated 4492 (including error responses). 4493 </t> 4494 </list> 4495 </t> 4496 <t> 4497 <iref item="variant"/> 4498 <x:dfn>variant</x:dfn> 4499 <list> 4500 <t> 4501 A resource may have one, or more than one, representation(s) 4502 associated with it at any given instant. Each of these 4503 representations is termed a `variant'. Use of the term `variant' 4504 does not necessarily imply that the resource is subject to content 4505 negotiation. 4506 </t> 4507 </list> 4508 </t> 4509 <t> 4510 <iref item="client"/> 4511 <x:dfn>client</x:dfn> 4512 <list> 4513 <t> 4514 A program that establishes connections for the purpose of sending 4515 requests. 4516 </t> 4517 </list> 4518 </t> 4519 <t> 4520 <iref item="user agent"/> 4521 <x:dfn>user agent</x:dfn> 4522 <list> 4523 <t> 4524 The client which initiates a request. These are often browsers, 4525 editors, spiders (web-traversing robots), or other end user tools. 4526 </t> 4527 </list> 4528 </t> 4529 <t> 4530 <iref item="server"/> 4531 <x:dfn>server</x:dfn> 4532 <list> 4533 <t> 4534 An application program that accepts connections in order to 4535 service requests by sending back responses. Any given program may 4536 be capable of being both a client and a server; our use of these 4537 terms refers only to the role being performed by the program for a 4538 particular connection, rather than to the program's capabilities 4539 in general. Likewise, any server may act as an origin server, 4540 proxy, gateway, or tunnel, switching behavior based on the nature 4541 of each request. 4542 </t> 4543 </list> 4544 </t> 4545 <t> 4546 <iref item="origin server"/> 4547 <x:dfn>origin server</x:dfn> 4548 <list> 4549 <t> 4550 The server on which a given resource resides or is to be created. 4551 </t> 4552 </list> 4553 </t> 4554 <t> 4555 <iref item="proxy"/> 4556 <x:dfn>proxy</x:dfn> 4557 <list> 4558 <t> 4559 An intermediary program which acts as both a server and a client 4560 for the purpose of making requests on behalf of other clients. 4561 Requests are serviced internally or by passing them on, with 4562 possible translation, to other servers. A proxy &MUST; implement 4563 both the client and server requirements of this specification. A 4564 "transparent proxy" is a proxy that does not modify the request or 4565 response beyond what is required for proxy authentication and 4566 identification. A "non-transparent proxy" is a proxy that modifies 4567 the request or response in order to provide some added service to 4568 the user agent, such as group annotation services, media type 4569 transformation, protocol reduction, or anonymity filtering. Except 4570 where either transparent or non-transparent behavior is explicitly 4571 stated, the HTTP proxy requirements apply to both types of 4572 proxies. 4573 </t> 4574 </list> 4575 </t> 4576 <t> 4577 <iref item="gateway"/> 4578 <x:dfn>gateway</x:dfn> 4579 <list> 4580 <t> 4581 A server which acts as an intermediary for some other server. 4582 Unlike a proxy, a gateway receives requests as if it were the 4583 origin server for the requested resource; the requesting client 4584 may not be aware that it is communicating with a gateway. 4585 </t> 4586 </list> 4587 </t> 4588 <t> 4589 <iref item="tunnel"/> 4590 <x:dfn>tunnel</x:dfn> 4591 <list> 4592 <t> 4593 An intermediary program which is acting as a blind relay between 4594 two connections. Once active, a tunnel is not considered a party 4595 to the HTTP communication, though the tunnel may have been 4596 initiated by an HTTP request. The tunnel ceases to exist when both 4597 ends of the relayed connections are closed. 4598 </t> 4599 </list> 4600 </t> 4601 <t> 4602 <iref item="cache"/> 4603 <x:dfn>cache</x:dfn> 4604 <list> 4605 <t> 4606 A program's local store of response messages and the subsystem 4607 that controls its message storage, retrieval, and deletion. A 4608 cache stores cacheable responses in order to reduce the response 4609 time and network bandwidth consumption on future, equivalent 4610 requests. Any client or server may include a cache, though a cache 4611 cannot be used by a server that is acting as a tunnel. 4612 </t> 4613 </list> 4614 </t> 4615 <t> 4616 <iref item="cacheable"/> 4617 <x:dfn>cacheable</x:dfn> 4618 <list> 4619 <t> 4620 A response is cacheable if a cache is allowed to store a copy of 4621 the response message for use in answering subsequent requests. The 4622 rules for determining the cacheability of HTTP responses are 4623 defined in &caching;. Even if a resource is cacheable, there may 4624 be additional constraints on whether a cache can use the cached 4625 copy for a particular request. 4626 </t> 4627 </list> 4628 </t> 4629 <t> 4630 <iref item="upstream"/> 4631 <iref item="downstream"/> 4632 <x:dfn>upstream</x:dfn>/<x:dfn>downstream</x:dfn> 4633 <list> 4634 <t> 4635 Upstream and downstream describe the flow of a message: all 4636 messages flow from upstream to downstream. 4637 </t> 4638 </list> 4639 </t> 4640 <t> 4641 <iref item="inbound"/> 4642 <iref item="outbound"/> 4643 <x:dfn>inbound</x:dfn>/<x:dfn>outbound</x:dfn> 4644 <list> 4645 <t> 4646 Inbound and outbound refer to the request and response paths for 4647 messages: "inbound" means "traveling toward the origin server", 4648 and "outbound" means "traveling toward the user agent" 4649 </t> 4650 </list> 4651 </t> 4652 </section> 4653 4654 4654 </back> 4655 4655 </rfc> -
draft-ietf-httpbis/latest-roy/p2-semantics.html
r334 r337 477 477 <tr> 478 478 <td class="header left"></td> 479 <td class="header right">November 5, 2008</td>479 <td class="header right">November 10, 2008</td> 480 480 </tr> 481 481 </table> -
draft-ietf-httpbis/latest-roy/p3-payload.html
r334 r337 484 484 <tr> 485 485 <td class="header left"></td> 486 <td class="header right">November 5, 2008</td>486 <td class="header right">November 10, 2008</td> 487 487 </tr> 488 488 </table> -
draft-ietf-httpbis/latest-roy/p4-conditional.html
r334 r337 473 473 <tr> 474 474 <td class="header left"></td> 475 <td class="header right">November 5, 2008</td>475 <td class="header right">November 10, 2008</td> 476 476 </tr> 477 477 </table> -
draft-ietf-httpbis/latest-roy/p5-range.html
r334 r337 473 473 <tr> 474 474 <td class="header left"></td> 475 <td class="header right">November 5, 2008</td>475 <td class="header right">November 10, 2008</td> 476 476 </tr> 477 477 </table> -
draft-ietf-httpbis/latest-roy/p6-cache.html
r334 r337 485 485 <tr> 486 486 <td class="header left"></td> 487 <td class="header right">November 5, 2008</td>487 <td class="header right">November 10, 2008</td> 488 488 </tr> 489 489 </table> -
draft-ietf-httpbis/latest-roy/p7-auth.html
r331 r337 471 471 <tr> 472 472 <td class="header left"></td> 473 <td class="header right">November 1 , 2008</td>473 <td class="header right">November 10, 2008</td> 474 474 </tr> 475 475 </table> -
draft-ietf-httpbis/latest-roy/p8-cookies.html
r272 r337 347 347 <link rel="Chapter" title="11 ACKNOWLEDGEMENTS" href="#rfc.section.11"> 348 348 <link rel="Chapter" href="#rfc.section.12" title="12 References"> 349 <meta name="generator" content="http://greenbytes.de/tech/webdav/rfc2629.xslt, Revision 1. 379, 2008-07-06 13:38:32, XSLT vendor: SAXON 8.9 from Saxonica http://www.saxonica.com/">349 <meta name="generator" content="http://greenbytes.de/tech/webdav/rfc2629.xslt, Revision 1.400, 2008-10-10 14:04:14, XSLT vendor: SAXON 8.9 from Saxonica http://www.saxonica.com/"> 350 350 <link rel="schema.DC" href="http://purl.org/dc/elements/1.1/"> 351 351 <meta name="DC.Creator" content="Kristol, D. M.">
Note: See TracChangeset
for help on using the changeset viewer.