Changeset 1781 for draft-ietf-httpbis/latest
- Timestamp:
- 15/07/12 02:55:39 (10 years ago)
- Location:
- draft-ietf-httpbis/latest
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/p2-semantics.html
r1778 r1781 481 481 <link rel="Chapter" title="9 Header Field Definitions" href="#rfc.section.9"> 482 482 <link rel="Chapter" title="10 IANA Considerations" href="#rfc.section.10"> 483 <link rel="Chapter" title="11 Security Considerations" href="#rfc.section.11"> 484 <link rel="Chapter" title="12 Acknowledgments" href="#rfc.section.12"> 485 <link rel="Chapter" href="#rfc.section.13" title="13 References"> 483 <link rel="Chapter" title="11 ABNF Rules Defined Elsewhere" href="#rfc.section.11"> 484 <link rel="Chapter" title="12 Security Considerations" href="#rfc.section.12"> 485 <link rel="Chapter" title="13 Acknowledgments" href="#rfc.section.13"> 486 <link rel="Chapter" href="#rfc.section.14" title="14 References"> 486 487 <link rel="Appendix" title="A Differences between HTTP and MIME" href="#rfc.section.A"> 487 488 <link rel="Appendix" title="B Additional Features" href="#rfc.section.B"> … … 499 500 <meta name="dct.issued" scheme="ISO8601" content="2012-07-14"> 500 501 <meta name="dct.replaces" content="urn:ietf:rfc:2616"> 501 <meta name="dct.abstract" content="The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypertext information systems. HTTP has been in use by the World Wide Web global information initiative since 1990. This document is Part 2 of the s even-part specification that defines the protocol referred to as "HTTP/1.1" and, taken together, obsoletes RFC 2616. Part 2 defines the semantics of HTTP messages as expressed by request methods, request header fields, response status codes, and response header fields. Furthermore, it defines HTTP message content, metadata, andcontent negotiation.">502 <meta name="description" content="The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypertext information systems. HTTP has been in use by the World Wide Web global information initiative since 1990. This document is Part 2 of the s even-part specification that defines the protocol referred to as "HTTP/1.1" and, taken together, obsoletes RFC 2616. Part 2 defines the semantics of HTTP messages as expressed by request methods, request header fields, response status codes, and response header fields. Furthermore, it defines HTTP message content, metadata, andcontent negotiation.">502 <meta name="dct.abstract" content="The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypertext information systems. HTTP has been in use by the World Wide Web global information initiative since 1990. This document is Part 2 of the six-part specification that defines the protocol referred to as "HTTP/1.1". Part 2 defines the semantics of HTTP messages, as expressed by request methods, request header fields, response status codes, and response header fields, the payload of messages as metadata and body content, and the mechanisms for content negotiation."> 503 <meta name="description" content="The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypertext information systems. HTTP has been in use by the World Wide Web global information initiative since 1990. This document is Part 2 of the six-part specification that defines the protocol referred to as "HTTP/1.1". Part 2 defines the semantics of HTTP messages, as expressed by request methods, request header fields, response status codes, and response header fields, the payload of messages as metadata and body content, and the mechanisms for content negotiation."> 503 504 </head> 504 505 <body onload="init();"> … … 541 542 <p>The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypertext information 542 543 systems. HTTP has been in use by the World Wide Web global information initiative since 1990. This document is Part 2 of the 543 s even-part specification that defines the protocol referred to as "HTTP/1.1" and, taken together, obsoletes RFC 2616.544 six-part specification that defines the protocol referred to as "HTTP/1.1". 544 545 </p> 545 <p>Part 2 defines the semantics of HTTP messages as expressed by request methods, request header fields, response status codes,546 and response header fields . Furthermore, it defines HTTP message content, metadata, andcontent negotiation.546 <p>Part 2 defines the semantics of HTTP messages, as expressed by request methods, request header fields, response status codes, 547 and response header fields, the payload of messages as metadata and body content, and the mechanisms for content negotiation. 547 548 </p> 548 549 <h1 id="rfc.note.1"><a href="#rfc.note.1">Editorial Note (To be removed by RFC Editor)</a></h1> … … 580 581 <h1 class="np" id="rfc.toc"><a href="#rfc.toc">Table of Contents</a></h1> 581 582 <ul class="toc"> 582 <li>1. <a href="#introduction">Introduction</a><ul> 583 <li>1.1 <a href="#terminology">Terminology</a></li> 584 <li>1.2 <a href="#intro.conformance.and.error.handling">Conformance and Error Handling</a></li> 585 <li>1.3 <a href="#notation">Syntax Notation</a><ul> 586 <li>1.3.1 <a href="#core.rules">Core Rules</a></li> 587 <li>1.3.2 <a href="#abnf.dependencies">ABNF Rules defined in other Parts of the Specification</a></li> 588 </ul> 589 </li> 590 </ul> 591 </li> 583 <li>1. <a href="#introduction">Introduction</a></li> 592 584 <li>2. <a href="#methods">Methods</a><ul> 593 585 <li>2.1 <a href="#safe.and.idempotent">Safe and Idempotent Methods</a><ul> … … 738 730 </ul> 739 731 </li> 740 <li>11. <a href="#security.considerations">Security Considerations</a><ul> 741 <li>11.1 <a href="#security.sensitive">Transfer of Sensitive Information</a></li> 742 <li>11.2 <a href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></li> 743 <li>11.3 <a href="#location.spoofing-leakage">Location Header Fields: Spoofing and Information Leakage</a></li> 744 <li>11.4 <a href="#rfc.section.11.4">Security Considerations for CONNECT</a></li> 745 <li>11.5 <a href="#privacy.issues.connected.to.accept.header.fields">Privacy Issues Connected to Accept Header Fields</a></li> 732 <li>11. <a href="#abnf.dependencies">ABNF Rules Defined Elsewhere</a></li> 733 <li>12. <a href="#security.considerations">Security Considerations</a><ul> 734 <li>12.1 <a href="#security.sensitive">Transfer of Sensitive Information</a></li> 735 <li>12.2 <a href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></li> 736 <li>12.3 <a href="#location.spoofing-leakage">Location Header Fields: Spoofing and Information Leakage</a></li> 737 <li>12.4 <a href="#rfc.section.12.4">Security Considerations for CONNECT</a></li> 738 <li>12.5 <a href="#privacy.issues.connected.to.accept.header.fields">Privacy Issues Connected to Accept Header Fields</a></li> 746 739 </ul> 747 740 </li> 748 <li>1 2. <a href="#acks">Acknowledgments</a></li>749 <li>1 3. <a href="#rfc.references">References</a><ul>750 <li>1 3.1 <a href="#rfc.references.1">Normative References</a></li>751 <li>1 3.2 <a href="#rfc.references.2">Informative References</a></li>741 <li>13. <a href="#acks">Acknowledgments</a></li> 742 <li>14. <a href="#rfc.references">References</a><ul> 743 <li>14.1 <a href="#rfc.references.1">Normative References</a></li> 744 <li>14.2 <a href="#rfc.references.2">Informative References</a></li> 752 745 </ul> 753 746 </li> … … 811 804 </ul> 812 805 <h1 id="rfc.section.1" class="np"><a href="#rfc.section.1">1.</a> <a id="introduction" href="#introduction">Introduction</a></h1> 813 <p id="rfc.section.1.p.1">This document defines HTTP/1.1 request and response semantics. Each HTTP message, as defined in <a href="#Part1" id="rfc.xref.Part1.1"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, is in the form of either a request or a response. An HTTP server listens on a connection for HTTP requests and responds 814 to each request, in the order received on that connection, with one or more HTTP response messages. This document defines 815 the commonly agreed upon semantics of the HTTP uniform interface, the intentions defined by each request method, and the various 816 response messages that might be expected as a result of applying that method to the target resource. 817 </p> 818 <p id="rfc.section.1.p.2">Furthermore, it defines HTTP/1.1 message payloads (a.k.a., content), the associated metadata header fields that define how 819 the payload is intended to be interpreted by a recipient, the request header fields that might influence content selection, 820 and the various selection algorithms that are collectively referred to as HTTP content negotiation. 821 </p> 822 <p id="rfc.section.1.p.3">This document is currently disorganized in order to minimize the changes between drafts and enable reviewers to see the smaller 823 errata changes. A future draft will reorganize the sections to better reflect the content. In particular, the sections will 824 be ordered according to the typical processing of an HTTP request message (after message parsing): resource mapping, methods, 825 request modifying header fields, response status, status modifying header fields, and resource metadata. The current mess 826 reflects how widely dispersed these topics and associated requirements had become in <a href="#RFC2616" id="rfc.xref.RFC2616.1"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2616]</cite></a>. 827 </p> 828 <h2 id="rfc.section.1.1"><a href="#rfc.section.1.1">1.1</a> <a id="terminology" href="#terminology">Terminology</a></h2> 829 <p id="rfc.section.1.1.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> 830 <p id="rfc.section.1.1.p.2"> <span id="rfc.iref.c.1"></span> <dfn>content negotiation</dfn> 831 </p> 832 <ul class="empty"> 833 <li>The mechanism for selecting the appropriate representation when servicing a request. The representation in any response can 834 be negotiated (including error responses). 835 </li> 836 </ul> 837 <p id="rfc.section.1.1.p.3"> <span id="rfc.iref.s.1"></span> <dfn>selected representation</dfn> 838 </p> 839 <ul class="empty"> 840 <li>The current representation of the target resource that would have been selected in a successful response if the same request 841 had used the method GET and excluded any conditional request header fields. 842 </li> 843 </ul> 844 <h2 id="rfc.section.1.2"><a href="#rfc.section.1.2">1.2</a> <a id="intro.conformance.and.error.handling" href="#intro.conformance.and.error.handling">Conformance and Error Handling</a></h2> 845 <p id="rfc.section.1.2.p.1">The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" 846 in this document are to be interpreted as described in <a href="#RFC2119" id="rfc.xref.RFC2119.1"><cite title="Key words for use in RFCs to Indicate Requirement Levels">[RFC2119]</cite></a>. 847 </p> 848 <p id="rfc.section.1.2.p.2">This specification targets conformance criteria according to the role of a participant in HTTP communication. Hence, HTTP 849 requirements are placed on senders, recipients, clients, servers, user agents, intermediaries, origin servers, proxies, gateways, 850 or caches, depending on what behavior is being constrained by the requirement. See <a href="p1-messaging.html#architecture" title="Architecture">Section 2</a> of <a href="#Part1" id="rfc.xref.Part1.2"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for definitions of these terms. 851 </p> 852 <p id="rfc.section.1.2.p.3">The verb "generate" is used instead of "send" where a requirement differentiates between creating a protocol element and merely 853 forwarding a received element downstream. 854 </p> 855 <p id="rfc.section.1.2.p.4">An implementation is considered conformant if it complies with all of the requirements associated with the roles it partakes 856 in HTTP. Note that SHOULD-level requirements are relevant here, unless one of the documented exceptions is applicable. 857 </p> 858 <p id="rfc.section.1.2.p.5">This document also uses ABNF to define valid protocol elements (<a href="#notation" title="Syntax Notation">Section 1.3</a>). In addition to the prose requirements placed upon them, senders <em class="bcp14">MUST NOT</em> generate protocol elements that do not match the grammar defined by the ABNF rules for those protocol elements that are applicable 859 to the sender's role. If a received protocol element is processed, the recipient <em class="bcp14">MUST</em> be able to parse any value that would match the ABNF rules for that protocol element, excluding only those rules not applicable 860 to the recipient's role. 861 </p> 862 <p id="rfc.section.1.2.p.6">Unless noted otherwise, a recipient <em class="bcp14">MAY</em> attempt to recover a usable protocol element from an invalid construct. HTTP does not define specific error handling mechanisms 863 except when they have a direct impact on security, since different applications of the protocol require different error handling 864 strategies. For example, a Web browser might wish to transparently recover from a response where the <a href="#header.location" class="smpl">Location</a> header field doesn't parse according to the ABNF, whereas a systems control client might consider any form of error recovery 865 to be dangerous. 866 </p> 867 <h2 id="rfc.section.1.3"><a href="#rfc.section.1.3">1.3</a> <a id="notation" href="#notation">Syntax Notation</a></h2> 868 <p id="rfc.section.1.3.p.1">This specification uses the Augmented Backus-Naur Form (ABNF) notation of <a href="#RFC5234" id="rfc.xref.RFC5234.1"><cite title="Augmented BNF for Syntax Specifications: ABNF">[RFC5234]</cite></a> with the list rule extension defined in <a href="p1-messaging.html#notation" title="Syntax Notation">Section 1.2</a> of <a href="#Part1" id="rfc.xref.Part1.3"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. <a href="#collected.abnf" title="Collected ABNF">Appendix D</a> shows the collected ABNF with the list rule expanded. 869 </p> 870 <p id="rfc.section.1.3.p.2">The following core rules are included by reference, as defined in <a href="#RFC5234" id="rfc.xref.RFC5234.2"><cite title="Augmented BNF for Syntax Specifications: ABNF">[RFC5234]</cite></a>, <a href="http://tools.ietf.org/html/rfc5234#appendix-B.1">Appendix B.1</a>: ALPHA (letters), CR (carriage return), CRLF (CR LF), CTL (controls), DIGIT (decimal 0-9), DQUOTE (double quote), HEXDIG 871 (hexadecimal 0-9/A-F/a-f), HTAB (horizontal tab), LF (line feed), OCTET (any 8-bit sequence of data), SP (space), and VCHAR 872 (any visible US-ASCII character). 873 </p> 874 <h3 id="rfc.section.1.3.1"><a href="#rfc.section.1.3.1">1.3.1</a> <a id="core.rules" href="#core.rules">Core Rules</a></h3> 875 <p id="rfc.section.1.3.1.p.1">The core rules below are defined in <a href="#Part1" id="rfc.xref.Part1.4"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>: 876 </p> 877 <div id="rfc.figure.u.1"></div><pre class="inline"> <a href="#core.rules" class="smpl">BWS</a> = <BWS, defined in <a href="#Part1" id="rfc.xref.Part1.5"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#whitespace" title="Whitespace">Section 3.2.1</a>> 878 <a href="#core.rules" class="smpl">OWS</a> = <OWS, defined in <a href="#Part1" id="rfc.xref.Part1.6"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#whitespace" title="Whitespace">Section 3.2.1</a>> 879 <a href="#core.rules" class="smpl">RWS</a> = <RWS, defined in <a href="#Part1" id="rfc.xref.Part1.7"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#whitespace" title="Whitespace">Section 3.2.1</a>> 880 <a href="#core.rules" class="smpl">quoted-string</a> = <quoted-string, defined in <a href="#Part1" id="rfc.xref.Part1.8"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#field.components" title="Field value components">Section 3.2.4</a>> 881 <a href="#core.rules" class="smpl">token</a> = <token, defined in <a href="#Part1" id="rfc.xref.Part1.9"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#field.components" title="Field value components">Section 3.2.4</a>> 882 <a href="#core.rules" class="smpl">word</a> = <word, defined in <a href="#Part1" id="rfc.xref.Part1.10"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#field.components" title="Field value components">Section 3.2.4</a>> 883 </pre><h3 id="rfc.section.1.3.2"><a href="#rfc.section.1.3.2">1.3.2</a> <a id="abnf.dependencies" href="#abnf.dependencies">ABNF Rules defined in other Parts of the Specification</a></h3> 884 <p id="rfc.section.1.3.2.p.1">The ABNF rules below are defined in other parts:</p> 885 <div id="rfc.figure.u.2"></div><pre class="inline"> <a href="#abnf.dependencies" class="smpl">absolute-URI</a> = <absolute-URI, defined in <a href="#Part1" id="rfc.xref.Part1.11"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.8</a>> 886 <a href="#abnf.dependencies" class="smpl">comment</a> = <comment, defined in <a href="#Part1" id="rfc.xref.Part1.12"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#field.components" title="Field value components">Section 3.2.4</a>> 887 <a href="#abnf.dependencies" class="smpl">partial-URI</a> = <partial-URI, defined in <a href="#Part1" id="rfc.xref.Part1.13"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.8</a>> 888 <a href="#abnf.dependencies" class="smpl">qvalue</a> = <qvalue, defined in <a href="#Part1" id="rfc.xref.Part1.14"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#quality.values" title="Quality Values">Section 4.3.1</a>> 889 <a href="#abnf.dependencies" class="smpl">URI-reference</a> = <URI-reference, defined in <a href="#Part1" id="rfc.xref.Part1.15"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.8</a>> 890 </pre><h1 id="rfc.section.2"><a href="#rfc.section.2">2.</a> <a id="methods" href="#methods">Methods</a></h1> 891 <p id="rfc.section.2.p.1">The method token indicates the request method to be performed on the target resource (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 5.5</a> of <a href="#Part1" id="rfc.xref.Part1.16"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). The method is case-sensitive. 892 </p> 893 <div id="rfc.figure.u.3"></div><pre class="inline"><span id="rfc.iref.g.1"></span> <a href="#methods" class="smpl">method</a> = <a href="#core.rules" class="smpl">token</a> 806 <p id="rfc.section.1.p.1">This document defines HTTP/1.1 request and response semantics in terms of the architecture, syntax notation, and conformance 807 criteria defined in <a href="p1-messaging.html#architecture" title="Architecture">Section 2</a> of <a href="#Part1" id="rfc.xref.Part1.1"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. Each HTTP message is either a request or a response. A server listens on a connection for a request, parses each message 808 received, interprets the message semantics in relation to the identified request target, and responds to that request with 809 one or more response messages. 810 </p> 811 <p id="rfc.section.1.p.2">HTTP provides a uniform interface for interacting with resources regardless of their type, nature, or implementation. HTTP 812 semantics includes the intentions defined by each request method, extensions to those semantics that might be described in 813 request header fields, the meaning of status codes to indicate a machine-readable response, and additional control data and 814 resource metadata that might be given in response header fields. 815 </p> 816 <p id="rfc.section.1.p.3"><span id="rfc.iref.c.1"></span> In addition, this document defines the payload of messages (a.k.a., content), the associated metadata header fields that define 817 how the payload is intended to be interpreted by a recipient, the request header fields that might influence content selection, 818 and the various selection algorithms that are collectively referred to as "<dfn>content negotiation</dfn>". 819 </p> 820 <div class="note" id="rfc.section.1.p.4"> 821 <p>This document is currently disorganized in order to minimize the changes between drafts and enable reviewers to see the smaller 822 errata changes. A future draft will reorganize the sections to better reflect the content. In particular, the sections will 823 be ordered according to the typical processing of an HTTP request message (after message parsing): resource mapping, methods, 824 request modifying header fields, response status, status modifying header fields, and resource metadata. The current mess 825 reflects how widely dispersed these topics and associated requirements had become in <a href="#RFC2616" id="rfc.xref.RFC2616.1"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2616]</cite></a>. 826 </p> 827 </div> 828 <h1 id="rfc.section.2"><a href="#rfc.section.2">2.</a> <a id="methods" href="#methods">Methods</a></h1> 829 <p id="rfc.section.2.p.1">The method token indicates the request method to be performed on the target resource (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 5.5</a> of <a href="#Part1" id="rfc.xref.Part1.2"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). The method is case-sensitive. 830 </p> 831 <div id="rfc.figure.u.1"></div><pre class="inline"><span id="rfc.iref.g.1"></span> <a href="#methods" class="smpl">method</a> = <a href="#abnf.dependencies" class="smpl">token</a> 894 832 </pre><p id="rfc.section.2.p.3">The list of methods allowed by a resource can be specified in an <a href="#header.allow" class="smpl">Allow</a> header field (<a href="#header.allow" id="rfc.xref.header.allow.1" title="Allow">Section 9.5</a>). The status code of the response always notifies the client whether a method is currently allowed on a resource, since the 895 833 set of allowed methods can change dynamically. An origin server <em class="bcp14">SHOULD</em> respond with the status code <a href="#status.405" class="smpl">405 (Method Not Allowed)</a> if the method is known by the origin server but not allowed for the resource, and <a href="#status.501" class="smpl">501 (Not … … 897 835 </p> 898 836 <h2 id="rfc.section.2.1"><a href="#rfc.section.2.1">2.1</a> <a id="safe.and.idempotent" href="#safe.and.idempotent">Safe and Idempotent Methods</a></h2> 899 <div id="rfc.iref.s. 2"></div>837 <div id="rfc.iref.s.1"></div> 900 838 <h3 id="rfc.section.2.1.1"><a href="#rfc.section.2.1.1">2.1.1</a> <a id="safe.methods" href="#safe.methods">Safe Methods</a></h3> 901 839 <p id="rfc.section.2.1.1.p.1">Implementers need to be aware that the software represents the user in their interactions over the Internet, and need to allow … … 941 879 to a single application, so that this is clear. 942 880 </p> 943 <p id="rfc.section.2.2.1.p.3">Due to the parsing rules defined in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1. 17"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, definitions of HTTP methods cannot prohibit the presence of a message body on either the request or the response message881 <p id="rfc.section.2.2.1.p.3">Due to the parsing rules defined in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.3"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, definitions of HTTP methods cannot prohibit the presence of a message body on either the request or the response message 944 882 (with responses to HEAD requests being the single exception). Definitions of new methods cannot change this rule, but they 945 883 can specify that only zero-length bodies (as opposed to absent bodies) are allowed. … … 960 898 body to make more detailed queries on the server. 961 899 </p> 962 <p id="rfc.section.2.3.1.p.4">If the request-target (<a href="p1-messaging.html#request-target" title="Request Target">Section 5.3</a> of <a href="#Part1" id="rfc.xref.Part1. 18"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) is an asterisk ("*"), the OPTIONS request is intended to apply to the server in general rather than to a specific resource.900 <p id="rfc.section.2.3.1.p.4">If the request-target (<a href="p1-messaging.html#request-target" title="Request Target">Section 5.3</a> of <a href="#Part1" id="rfc.xref.Part1.4"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) is an asterisk ("*"), the OPTIONS request is intended to apply to the server in general rather than to a specific resource. 963 901 Since a server's communication options typically depend on the resource, the "*" request is only useful as a "ping" or "no-op" 964 902 type of method; it does nothing beyond allowing the client to test the capabilities of the server. For example, this can be … … 992 930 <p id="rfc.section.2.3.2.p.6">The response to a GET request is cacheable and <em class="bcp14">MAY</em> be used to satisfy subsequent GET and HEAD requests (see <a href="#Part6" id="rfc.xref.Part6.2"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 993 931 </p> 994 <p id="rfc.section.2.3.2.p.7">See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 1 1.2</a> for security considerations when used for forms.932 <p id="rfc.section.2.3.2.p.7">See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 12.2</a> for security considerations when used for forms. 995 933 </p> 996 934 <h3 id="rfc.section.2.3.3"><a href="#rfc.section.2.3.3">2.3.3</a> <a id="HEAD" href="#HEAD">HEAD</a></h3> … … 1116 1054 </p> 1117 1055 <p id="rfc.section.2.3.7.p.2">TRACE allows the client to see what is being received at the other end of the request chain and use that data for testing 1118 or diagnostic information. The value of the <a href="p1-messaging.html#header.via" class="smpl">Via</a> header field (<a href="p1-messaging.html#header.via" title="Via">Section 6.2</a> of <a href="#Part1" id="rfc.xref.Part1. 19"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) is of particular interest, since it acts as a trace of the request chain. Use of the <a href="#header.max-forwards" class="smpl">Max-Forwards</a> header field allows the client to limit the length of the request chain, which is useful for testing a chain of proxies forwarding1056 or diagnostic information. The value of the <a href="p1-messaging.html#header.via" class="smpl">Via</a> header field (<a href="p1-messaging.html#header.via" title="Via">Section 6.2</a> of <a href="#Part1" id="rfc.xref.Part1.5"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) is of particular interest, since it acts as a trace of the request chain. Use of the <a href="#header.max-forwards" class="smpl">Max-Forwards</a> header field allows the client to limit the length of the request chain, which is useful for testing a chain of proxies forwarding 1119 1057 messages in an infinite loop. 1120 1058 </p> 1121 <p id="rfc.section.2.3.7.p.3">If the request is valid, the response <em class="bcp14">SHOULD</em> have a <a href="#header.content-type" class="smpl">Content-Type</a> of "message/http" (see <a href="p1-messaging.html#internet.media.type.message.http" title="Internet Media Type message/http">Section 7.3.1</a> of <a href="#Part1" id="rfc.xref.Part1. 20"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and contain a message body that encloses a copy of the entire request message. Responses to the TRACE method are not cacheable.1059 <p id="rfc.section.2.3.7.p.3">If the request is valid, the response <em class="bcp14">SHOULD</em> have a <a href="#header.content-type" class="smpl">Content-Type</a> of "message/http" (see <a href="p1-messaging.html#internet.media.type.message.http" title="Internet Media Type message/http">Section 7.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.6"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and contain a message body that encloses a copy of the entire request message. Responses to the TRACE method are not cacheable. 1122 1060 </p> 1123 1061 <div id="rfc.iref.c.2"></div> … … 1127 1065 its behavior to blind forwarding of packets until the connection is closed. 1128 1066 </p> 1129 <p id="rfc.section.2.3.8.p.2">When using CONNECT, the request-target <em class="bcp14">MUST</em> use the authority form (<a href="p1-messaging.html#request-target" title="Request Target">Section 5.3</a> of <a href="#Part1" id="rfc.xref.Part1. 21"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>); i.e., the request-target consists of only the host name and port number of the tunnel destination, separated by a colon.1067 <p id="rfc.section.2.3.8.p.2">When using CONNECT, the request-target <em class="bcp14">MUST</em> use the authority form (<a href="p1-messaging.html#request-target" title="Request Target">Section 5.3</a> of <a href="#Part1" id="rfc.xref.Part1.7"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>); i.e., the request-target consists of only the host name and port number of the tunnel destination, separated by a colon. 1130 1068 For example, 1131 1069 </p> 1132 <div id="rfc.figure.u. 4"></div><pre class="text2">CONNECT server.example.com:80 HTTP/1.11070 <div id="rfc.figure.u.2"></div><pre class="text2">CONNECT server.example.com:80 HTTP/1.1 1133 1071 Host: server.example.com:80 1134 1072 … … 1143 1081 </p> 1144 1082 <p id="rfc.section.2.3.8.p.7">Proxy authentication might be used to establish the authority to create a tunnel:</p> 1145 <div id="rfc.figure.u. 5"></div><pre class="text2">CONNECT server.example.com:80 HTTP/1.11083 <div id="rfc.figure.u.3"></div><pre class="text2">CONNECT server.example.com:80 HTTP/1.1 1146 1084 Host: server.example.com:80 1147 1085 Proxy-Authorization: basic aGVsbG86d29ybGQ= … … 1164 1102 <h1 id="rfc.section.3"><a href="#rfc.section.3">3.</a> <a id="header.fields" href="#header.fields">Header Fields</a></h1> 1165 1103 <p id="rfc.section.3.p.1">Header fields are key value pairs that can be used to communicate data about the message, its payload, the target resource, 1166 or about the connection itself (i.e., control data). See <a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1. 22"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for a general definition of their syntax.1104 or about the connection itself (i.e., control data). See <a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.8"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for a general definition of their syntax. 1167 1105 </p> 1168 1106 <h2 id="rfc.section.3.1"><a href="#rfc.section.3.1">3.1</a> <a id="considerations.for.creating.header.fields" href="#considerations.for.creating.header.fields">Considerations for Creating Header Fields</a></h2> … … 1172 1110 with "X-" if they are to be registered (either immediately or in the future). 1173 1111 </p> 1174 <p id="rfc.section.3.1.p.3">New header field values typically have their syntax defined using ABNF (<a href="#RFC5234" id="rfc.xref.RFC5234. 3"><cite title="Augmented BNF for Syntax Specifications: ABNF">[RFC5234]</cite></a>), using the extension defined in <a href="p1-messaging.html#abnf.extension" title="ABNF list extension: #rule">Section 3.2.5</a> of <a href="#Part1" id="rfc.xref.Part1.23"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> as necessary, and are usually constrained to the range of ASCII characters. Header fields needing a greater range of characters1112 <p id="rfc.section.3.1.p.3">New header field values typically have their syntax defined using ABNF (<a href="#RFC5234" id="rfc.xref.RFC5234.1"><cite title="Augmented BNF for Syntax Specifications: ABNF">[RFC5234]</cite></a>), using the extension defined in <a href="p1-messaging.html#abnf.extension" title="ABNF list extension: #rule">Section 3.2.5</a> of <a href="#Part1" id="rfc.xref.Part1.9"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> as necessary, and are usually constrained to the range of ASCII characters. Header fields needing a greater range of characters 1175 1113 can use an encoding such as the one defined in <a href="#RFC5987" id="rfc.xref.RFC5987.1"><cite title="Character Set and Language Encoding for Hypertext Transfer Protocol (HTTP) Header Field Parameters">[RFC5987]</cite></a>. 1176 1114 </p> 1177 1115 <p id="rfc.section.3.1.p.4">Because commas (",") are used as a generic delimiter between field-values, they need to be treated with care if they are allowed 1178 1116 in the field-value's payload. Typically, components that might contain a comma are protected with double-quotes using the 1179 quoted-string ABNF production (<a href="p1-messaging.html#field.components" title="Field value components">Section 3.2.4</a> of <a href="#Part1" id="rfc.xref.Part1. 24"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).1117 quoted-string ABNF production (<a href="p1-messaging.html#field.components" title="Field value components">Section 3.2.4</a> of <a href="#Part1" id="rfc.xref.Part1.10"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 1180 1118 </p> 1181 1119 <p id="rfc.section.3.1.p.5">For example, a textual date and a URI (either of which might contain a comma) could be safely carried in field-values like 1182 1120 these: 1183 1121 </p> 1184 <div id="rfc.figure.u. 6"></div><pre class="text"> Example-URI-Field: "http://example.com/a.html,foo",1122 <div id="rfc.figure.u.4"></div><pre class="text"> Example-URI-Field: "http://example.com/a.html,foo", 1185 1123 "http://without-a-comma.example.com/" 1186 1124 Example-Date-Field: "Sat, 04 May 1996", "Wed, 14 Sep 2005" … … 1195 1133 <ul> 1196 1134 <li> 1197 <p>Whether the field is a single value, or whether it can be a list (delimited by commas; see <a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1. 25"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).1135 <p>Whether the field is a single value, or whether it can be a list (delimited by commas; see <a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.11"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 1198 1136 </p> 1199 1137 <p>If it does not use the list syntax, document how to treat messages where the header field occurs multiple times (a sensible … … 1211 1149 </li> 1212 1150 <li> 1213 <p>Whether it is appropriate to list the field-name in the <a href="p1-messaging.html#header.connection" class="smpl">Connection</a> header field (i.e., if the header field is to be hop-by-hop, see <a href="p1-messaging.html#header.connection" title="Connection">Section 6.1</a> of <a href="#Part1" id="rfc.xref.Part1. 26"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).1151 <p>Whether it is appropriate to list the field-name in the <a href="p1-messaging.html#header.connection" class="smpl">Connection</a> header field (i.e., if the header field is to be hop-by-hop, see <a href="p1-messaging.html#header.connection" title="Connection">Section 6.1</a> of <a href="#Part1" id="rfc.xref.Part1.12"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 1214 1152 </p> 1215 1153 </li> … … 1222 1160 </li> 1223 1161 <li> 1224 <p>Whether the header field is useful or allowable in trailers (see <a href="p1-messaging.html#chunked.encoding" title="Chunked Transfer Coding">Section 4.1</a> of <a href="#Part1" id="rfc.xref.Part1. 27"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).1162 <p>Whether the header field is useful or allowable in trailers (see <a href="p1-messaging.html#chunked.encoding" title="Chunked Transfer Coding">Section 4.1</a> of <a href="#Part1" id="rfc.xref.Part1.13"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 1225 1163 </p> 1226 1164 </li> … … 1273 1211 <tr> 1274 1212 <td class="left">Host</td> 1275 <td class="left"><a href="p1-messaging.html#header.host" title="Host">Section 5.4</a> of <a href="#Part1" id="rfc.xref.Part1. 28"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a></td>1213 <td class="left"><a href="p1-messaging.html#header.host" title="Host">Section 5.4</a> of <a href="#Part1" id="rfc.xref.Part1.14"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a></td> 1276 1214 </tr> 1277 1215 <tr> … … 1313 1251 <tr> 1314 1252 <td class="left">TE</td> 1315 <td class="left"><a href="p1-messaging.html#header.te" title="TE">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1. 29"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a></td>1253 <td class="left"><a href="p1-messaging.html#header.te" title="TE">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.15"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a></td> 1316 1254 </tr> 1317 1255 <tr> … … 1324 1262 <h2 id="rfc.section.3.3"><a href="#rfc.section.3.3">3.3</a> <a id="response.header.fields" href="#response.header.fields">Response Header Fields</a></h2> 1325 1263 <p id="rfc.section.3.3.p.1">The response header fields allow the server to pass additional information about the response which cannot be placed in the 1326 status-line. These header fields give information about the server and about further access to the target resource (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 5.5</a> of <a href="#Part1" id="rfc.xref.Part1. 30"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).1264 status-line. These header fields give information about the server and about further access to the target resource (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 5.5</a> of <a href="#Part1" id="rfc.xref.Part1.16"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 1327 1265 </p> 1328 1266 <div id="rfc.table.u.2"> … … 1654 1592 </p> 1655 1593 <h2 id="rfc.section.4.3"><a href="#rfc.section.4.3">4.3</a> <a id="status.1xx" href="#status.1xx">Informational 1xx</a></h2> 1656 <div id="rfc.iref.2 1"></div>1657 <div id="rfc.iref.s. 3"></div>1594 <div id="rfc.iref.20"></div> 1595 <div id="rfc.iref.s.2"></div> 1658 1596 <p id="rfc.section.4.3.p.1">This class of status code indicates a provisional response, consisting only of the status-line and optional header fields, 1659 1597 and is terminated by an empty line. There are no required header fields for this class of status code. Since HTTP/1.0 did … … 1667 1605 a request, then it need not forward the corresponding <a href="#status.100" class="smpl">100 (Continue)</a> response(s).) 1668 1606 </p> 1669 <div id="rfc.iref.2 2"></div>1670 <div id="rfc.iref.s. 4"></div>1607 <div id="rfc.iref.21"></div> 1608 <div id="rfc.iref.s.3"></div> 1671 1609 <h3 id="rfc.section.4.3.1"><a href="#rfc.section.4.3.1">4.3.1</a> <a id="status.100" href="#status.100">100 Continue</a></h3> 1672 1610 <p id="rfc.section.4.3.1.p.1">The client <em class="bcp14">SHOULD</em> continue with its request. This interim response is used to inform the client that the initial part of the request has been 1673 1611 received and has not yet been rejected by the server. The client <em class="bcp14">SHOULD</em> continue by sending the remainder of the request or, if the request has already been completed, ignore this response. The 1674 server <em class="bcp14">MUST</em> send a final response after the request has been completed. See <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 6.4.3</a> of <a href="#Part1" id="rfc.xref.Part1. 31"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for detailed discussion of the use and handling of this status code.1675 </p> 1676 <div id="rfc.iref.2 3"></div>1677 <div id="rfc.iref.s. 5"></div>1612 server <em class="bcp14">MUST</em> send a final response after the request has been completed. See <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 6.4.3</a> of <a href="#Part1" id="rfc.xref.Part1.17"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for detailed discussion of the use and handling of this status code. 1613 </p> 1614 <div id="rfc.iref.22"></div> 1615 <div id="rfc.iref.s.4"></div> 1678 1616 <h3 id="rfc.section.4.3.2"><a href="#rfc.section.4.3.2">4.3.2</a> <a id="status.101" href="#status.101">101 Switching Protocols</a></h3> 1679 <p id="rfc.section.4.3.2.p.1">The server understands and is willing to comply with the client's request, via the <a href="p1-messaging.html#header.upgrade" class="smpl">Upgrade</a> message header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 6.5</a> of <a href="#Part1" id="rfc.xref.Part1. 32"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>), for a change in the application protocol being used on this connection. The server will switch protocols to those defined1617 <p id="rfc.section.4.3.2.p.1">The server understands and is willing to comply with the client's request, via the <a href="p1-messaging.html#header.upgrade" class="smpl">Upgrade</a> message header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 6.5</a> of <a href="#Part1" id="rfc.xref.Part1.18"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>), for a change in the application protocol being used on this connection. The server will switch protocols to those defined 1680 1618 by the response's Upgrade header field immediately after the empty line which terminates the 101 response. 1681 1619 </p> … … 1685 1623 </p> 1686 1624 <h2 id="rfc.section.4.4"><a href="#rfc.section.4.4">4.4</a> <a id="status.2xx" href="#status.2xx">Successful 2xx</a></h2> 1625 <div id="rfc.iref.23"></div> 1626 <div id="rfc.iref.s.5"></div> 1627 <p id="rfc.section.4.4.p.1">This class of status code indicates that the client's request was successfully received, understood, and accepted.</p> 1687 1628 <div id="rfc.iref.24"></div> 1688 1629 <div id="rfc.iref.s.6"></div> 1689 <p id="rfc.section.4.4.p.1">This class of status code indicates that the client's request was successfully received, understood, and accepted.</p>1690 <div id="rfc.iref.25"></div>1691 <div id="rfc.iref.s.7"></div>1692 1630 <h3 id="rfc.section.4.4.1"><a href="#rfc.section.4.4.1">4.4.1</a> <a id="status.200" href="#status.200">200 OK</a></h3> 1693 1631 <p id="rfc.section.4.4.1.p.1">The request has succeeded. The payload returned with the response is dependent on the method used in the request, for example: </p> … … 1704 1642 <p id="rfc.section.4.4.1.p.2">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.1.2</a> of <a href="#Part6" id="rfc.xref.Part6.11"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 200 responses. 1705 1643 </p> 1706 <div id="rfc.iref.2 6"></div>1707 <div id="rfc.iref.s. 8"></div>1644 <div id="rfc.iref.25"></div> 1645 <div id="rfc.iref.s.7"></div> 1708 1646 <h3 id="rfc.section.4.4.2"><a href="#rfc.section.4.4.2">4.4.2</a> <a id="status.201" href="#status.201">201 Created</a></h3> 1709 1647 <p id="rfc.section.4.4.2.p.1">The request has been fulfilled and has resulted in one or more new resources being created.</p> … … 1717 1655 the <a href="#header.location" class="smpl">Location</a> header field or, in case the Location header field was omitted, by the Effective Request URI (see <a href="p4-conditional.html#header.etag" title="ETag">Section 2.3</a> of <a href="#Part4" id="rfc.xref.Part4.10"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>). 1718 1656 </p> 1719 <div id="rfc.iref.2 7"></div>1720 <div id="rfc.iref.s. 9"></div>1657 <div id="rfc.iref.26"></div> 1658 <div id="rfc.iref.s.8"></div> 1721 1659 <h3 id="rfc.section.4.4.3"><a href="#rfc.section.4.4.3">4.4.3</a> <a id="status.202" href="#status.202">202 Accepted</a></h3> 1722 1660 <p id="rfc.section.4.4.3.p.1">The request has been accepted for processing, but the processing has not been completed. The request might or might not eventually … … 1729 1667 user can expect the request to be fulfilled. 1730 1668 </p> 1669 <div id="rfc.iref.27"></div> 1670 <div id="rfc.iref.s.9"></div> 1671 <h3 id="rfc.section.4.4.4"><a href="#rfc.section.4.4.4">4.4.4</a> <a id="status.203" href="#status.203">203 Non-Authoritative Information</a></h3> 1672 <p id="rfc.section.4.4.4.p.1">The representation in the response has been transformed or otherwise modified by a transforming proxy (<a href="p1-messaging.html#intermediaries" title="Intermediaries">Section 2.4</a> of <a href="#Part1" id="rfc.xref.Part1.19"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). Note that the behavior of transforming intermediaries is controlled by the no-transform Cache-Control directive (<a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 7.2</a> of <a href="#Part6" id="rfc.xref.Part6.12"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1673 </p> 1674 <p id="rfc.section.4.4.4.p.2">This status code is only appropriate when the response status code would have been <a href="#status.200" class="smpl">200 (OK)</a> otherwise. When the status code before transformation would have been different, the 214 Transformation Applied warn-code 1675 (<a href="p6-cache.html#header.warning" title="Warning">Section 7.6</a> of <a href="#Part6" id="rfc.xref.Part6.13"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) is appropriate. 1676 </p> 1677 <p id="rfc.section.4.4.4.p.3">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.1.2</a> of <a href="#Part6" id="rfc.xref.Part6.14"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 203 responses. 1678 </p> 1731 1679 <div id="rfc.iref.28"></div> 1732 1680 <div id="rfc.iref.s.10"></div> 1733 <h3 id="rfc.section.4.4.4"><a href="#rfc.section.4.4.4">4.4.4</a> <a id="status.203" href="#status.203">203 Non-Authoritative Information</a></h3>1734 <p id="rfc.section.4.4.4.p.1">The representation in the response has been transformed or otherwise modified by a transforming proxy (<a href="p1-messaging.html#intermediaries" title="Intermediaries">Section 2.4</a> of <a href="#Part1" id="rfc.xref.Part1.33"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). Note that the behavior of transforming intermediaries is controlled by the no-transform Cache-Control directive (<a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 7.2</a> of <a href="#Part6" id="rfc.xref.Part6.12"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>).1735 </p>1736 <p id="rfc.section.4.4.4.p.2">This status code is only appropriate when the response status code would have been <a href="#status.200" class="smpl">200 (OK)</a> otherwise. When the status code before transformation would have been different, the 214 Transformation Applied warn-code1737 (<a href="p6-cache.html#header.warning" title="Warning">Section 7.6</a> of <a href="#Part6" id="rfc.xref.Part6.13"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) is appropriate.1738 </p>1739 <p id="rfc.section.4.4.4.p.3">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.1.2</a> of <a href="#Part6" id="rfc.xref.Part6.14"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 203 responses.1740 </p>1741 <div id="rfc.iref.29"></div>1742 <div id="rfc.iref.s.11"></div>1743 1681 <h3 id="rfc.section.4.4.5"><a href="#rfc.section.4.4.5">4.4.5</a> <a id="status.204" href="#status.204">204 No Content</a></h3> 1744 1682 <p id="rfc.section.4.4.5.p.1">The 204 (No Content) status code indicates that the server has successfully fulfilled the request and that there is no additional … … 1760 1698 <p id="rfc.section.4.4.5.p.5">The 204 response <em class="bcp14">MUST NOT</em> include a message body, and thus is always terminated by the first empty line after the header fields. 1761 1699 </p> 1762 <div id="rfc.iref. 30"></div>1763 <div id="rfc.iref.s.1 2"></div>1700 <div id="rfc.iref.29"></div> 1701 <div id="rfc.iref.s.11"></div> 1764 1702 <h3 id="rfc.section.4.4.6"><a href="#rfc.section.4.4.6">4.4.6</a> <a id="status.205" href="#status.205">205 Reset Content</a></h3> 1765 1703 <p id="rfc.section.4.4.6.p.1">The server has fulfilled the request and the user agent <em class="bcp14">SHOULD</em> reset the document view which caused the request to be sent. This response is primarily intended to allow input for actions … … 1767 1705 another input action. 1768 1706 </p> 1769 <p id="rfc.section.4.4.6.p.2">The message body included with the response <em class="bcp14">MUST</em> be empty. Note that receivers still need to parse the response according to the algorithm defined in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1. 34"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.1707 <p id="rfc.section.4.4.6.p.2">The message body included with the response <em class="bcp14">MUST</em> be empty. Note that receivers still need to parse the response according to the algorithm defined in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.20"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 1770 1708 </p> 1771 1709 <h2 id="rfc.section.4.5"><a href="#rfc.section.4.5">4.5</a> <a id="status.3xx" href="#status.3xx">Redirection 3xx</a></h2> 1772 <div id="rfc.iref.3 1"></div>1773 <div id="rfc.iref.s.1 3"></div>1710 <div id="rfc.iref.30"></div> 1711 <div id="rfc.iref.s.12"></div> 1774 1712 <p id="rfc.section.4.5.p.1">This class of status code indicates that further action needs to be taken by the user agent in order to fulfill the request. 1775 1713 If the required action involves a subsequent HTTP request, it <em class="bcp14">MAY</em> be carried out by the user agent without interaction with the user if and only if the method used in the second request is … … 1816 1754 </p> 1817 1755 </div> 1818 <div id="rfc.iref.3 2"></div>1819 <div id="rfc.iref.s.1 4"></div>1756 <div id="rfc.iref.31"></div> 1757 <div id="rfc.iref.s.13"></div> 1820 1758 <h3 id="rfc.section.4.5.1"><a href="#rfc.section.4.5.1">4.5.1</a> <a id="status.300" href="#status.300">300 Multiple Choices</a></h3> 1821 1759 <p id="rfc.section.4.5.1.p.1">The target resource has more than one representation, each with its own specific location, and agent-driven negotiation information … … 1831 1769 <p id="rfc.section.4.5.1.p.4">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.1.2</a> of <a href="#Part6" id="rfc.xref.Part6.15"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 300 responses. 1832 1770 </p> 1833 <div id="rfc.iref.3 3"></div>1834 <div id="rfc.iref.s.1 5"></div>1771 <div id="rfc.iref.32"></div> 1772 <div id="rfc.iref.s.14"></div> 1835 1773 <h3 id="rfc.section.4.5.2"><a href="#rfc.section.4.5.2">4.5.2</a> <a id="status.301" href="#status.301">301 Moved Permanently</a></h3> 1836 1774 <p id="rfc.section.4.5.2.p.1">The target resource has been assigned a new permanent URI and any future references to this resource <em class="bcp14">SHOULD</em> use one of the returned URIs. Clients with link editing capabilities ought to automatically re-link references to the effective … … 1842 1780 </p> 1843 1781 <div class="note" id="rfc.section.4.5.2.p.4"> 1782 <p> <b>Note:</b> For historic reasons, user agents <em class="bcp14">MAY</em> change the request method from POST to GET for the subsequent request. If this behavior is undesired, status code <a href="#status.307" class="smpl">307 (Temporary Redirect)</a> can be used instead. 1783 </p> 1784 </div> 1785 <div id="rfc.iref.33"></div> 1786 <div id="rfc.iref.s.15"></div> 1787 <h3 id="rfc.section.4.5.3"><a href="#rfc.section.4.5.3">4.5.3</a> <a id="status.302" href="#status.302">302 Found</a></h3> 1788 <p id="rfc.section.4.5.3.p.1">The target resource resides temporarily under a different URI. Since the redirection might be altered on occasion, the client <em class="bcp14">SHOULD</em> continue to use the effective request URI for future requests. 1789 </p> 1790 <p id="rfc.section.4.5.3.p.2">The temporary URI <em class="bcp14">SHOULD</em> be given by the <a href="#header.location" class="smpl">Location</a> field in the response. A response payload can contain a short hypertext note with a hyperlink to the new URI(s). 1791 </p> 1792 <div class="note" id="rfc.section.4.5.3.p.3"> 1844 1793 <p> <b>Note:</b> For historic reasons, user agents <em class="bcp14">MAY</em> change the request method from POST to GET for the subsequent request. If this behavior is undesired, status code <a href="#status.307" class="smpl">307 (Temporary Redirect)</a> can be used instead. 1845 1794 </p> … … 1847 1796 <div id="rfc.iref.34"></div> 1848 1797 <div id="rfc.iref.s.16"></div> 1849 <h3 id="rfc.section.4.5.3"><a href="#rfc.section.4.5.3">4.5.3</a> <a id="status.302" href="#status.302">302 Found</a></h3>1850 <p id="rfc.section.4.5.3.p.1">The target resource resides temporarily under a different URI. Since the redirection might be altered on occasion, the client <em class="bcp14">SHOULD</em> continue to use the effective request URI for future requests.1851 </p>1852 <p id="rfc.section.4.5.3.p.2">The temporary URI <em class="bcp14">SHOULD</em> be given by the <a href="#header.location" class="smpl">Location</a> field in the response. A response payload can contain a short hypertext note with a hyperlink to the new URI(s).1853 </p>1854 <div class="note" id="rfc.section.4.5.3.p.3">1855 <p> <b>Note:</b> For historic reasons, user agents <em class="bcp14">MAY</em> change the request method from POST to GET for the subsequent request. If this behavior is undesired, status code <a href="#status.307" class="smpl">307 (Temporary Redirect)</a> can be used instead.1856 </p>1857 </div>1858 <div id="rfc.iref.35"></div>1859 <div id="rfc.iref.s.17"></div>1860 1798 <h3 id="rfc.section.4.5.4"><a href="#rfc.section.4.5.4">4.5.4</a> <a id="status.303" href="#status.303">303 See Other</a></h3> 1861 1799 <p id="rfc.section.4.5.4.p.1">The 303 status code indicates that the server is redirecting the user agent to a different resource, as indicated by a URI … … 1877 1815 <p id="rfc.section.4.5.4.p.4">Except for responses to a HEAD request, the representation of a 303 response <em class="bcp14">SHOULD</em> contain a short hypertext note with a hyperlink to the <a href="#header.location" class="smpl">Location</a> URI. 1878 1816 </p> 1817 <div id="rfc.iref.35"></div> 1818 <div id="rfc.iref.s.17"></div> 1819 <h3 id="rfc.section.4.5.5"><a href="#rfc.section.4.5.5">4.5.5</a> <a id="status.305" href="#status.305">305 Use Proxy</a></h3> 1820 <p id="rfc.section.4.5.5.p.1">The 305 status code was defined in a previous version of this specification (see <a href="#changes.from.rfc.2616" title="Changes from RFC 2616">Appendix C</a>), and is now deprecated. 1821 </p> 1879 1822 <div id="rfc.iref.36"></div> 1880 1823 <div id="rfc.iref.s.18"></div> 1881 <h3 id="rfc.section.4.5.5"><a href="#rfc.section.4.5.5">4.5.5</a> <a id="status.305" href="#status.305">305 Use Proxy</a></h3> 1882 <p id="rfc.section.4.5.5.p.1">The 305 status code was defined in a previous version of this specification (see <a href="#changes.from.rfc.2616" title="Changes from RFC 2616">Appendix C</a>), and is now deprecated. 1883 </p> 1824 <h3 id="rfc.section.4.5.6"><a href="#rfc.section.4.5.6">4.5.6</a> <a id="status.306" href="#status.306">306 (Unused)</a></h3> 1825 <p id="rfc.section.4.5.6.p.1">The 306 status code was used in a previous version of the specification, is no longer used, and the code is reserved.</p> 1884 1826 <div id="rfc.iref.37"></div> 1885 1827 <div id="rfc.iref.s.19"></div> 1886 <h3 id="rfc.section.4.5.6"><a href="#rfc.section.4.5.6">4.5.6</a> <a id="status.306" href="#status.306">306 (Unused)</a></h3>1887 <p id="rfc.section.4.5.6.p.1">The 306 status code was used in a previous version of the specification, is no longer used, and the code is reserved.</p>1888 <div id="rfc.iref.38"></div>1889 <div id="rfc.iref.s.20"></div>1890 1828 <h3 id="rfc.section.4.5.7"><a href="#rfc.section.4.5.7">4.5.7</a> <a id="status.307" href="#status.307">307 Temporary Redirect</a></h3> 1891 1829 <p id="rfc.section.4.5.7.p.1">The target resource resides temporarily under a different URI. Since the redirection can change over time, the client <em class="bcp14">SHOULD</em> continue to use the effective request URI for future requests. … … 1900 1838 </div> 1901 1839 <h2 id="rfc.section.4.6"><a href="#rfc.section.4.6">4.6</a> <a id="status.4xx" href="#status.4xx">Client Error 4xx</a></h2> 1902 <div id="rfc.iref.3 9"></div>1903 <div id="rfc.iref.s.2 1"></div>1840 <div id="rfc.iref.38"></div> 1841 <div id="rfc.iref.s.20"></div> 1904 1842 <p id="rfc.section.4.6.p.1">The 4xx class of status code is intended for cases in which the client seems to have erred. Except when responding to a HEAD 1905 1843 request, the server <em class="bcp14">SHOULD</em> include a representation containing an explanation of the error situation, and whether it is a temporary or permanent condition. 1906 1844 These status codes are applicable to any request method. User agents <em class="bcp14">SHOULD</em> display any included representation to the user. 1907 1845 </p> 1846 <div id="rfc.iref.39"></div> 1847 <div id="rfc.iref.s.21"></div> 1848 <h3 id="rfc.section.4.6.1"><a href="#rfc.section.4.6.1">4.6.1</a> <a id="status.400" href="#status.400">400 Bad Request</a></h3> 1849 <p id="rfc.section.4.6.1.p.1">The server cannot or will not process the request, due to a client error (e.g., malformed syntax).</p> 1908 1850 <div id="rfc.iref.40"></div> 1909 1851 <div id="rfc.iref.s.22"></div> 1910 <h3 id="rfc.section.4.6. 1"><a href="#rfc.section.4.6.1">4.6.1</a> <a id="status.400" href="#status.400">400 Bad Request</a></h3>1911 <p id="rfc.section.4.6. 1.p.1">The server cannot or will not process the request, due to a client error (e.g., malformed syntax).</p>1852 <h3 id="rfc.section.4.6.2"><a href="#rfc.section.4.6.2">4.6.2</a> <a id="status.402" href="#status.402">402 Payment Required</a></h3> 1853 <p id="rfc.section.4.6.2.p.1">This code is reserved for future use.</p> 1912 1854 <div id="rfc.iref.41"></div> 1913 1855 <div id="rfc.iref.s.23"></div> 1914 <h3 id="rfc.section.4.6.2"><a href="#rfc.section.4.6.2">4.6.2</a> <a id="status.402" href="#status.402">402 Payment Required</a></h3>1915 <p id="rfc.section.4.6.2.p.1">This code is reserved for future use.</p>1916 <div id="rfc.iref.42"></div>1917 <div id="rfc.iref.s.24"></div>1918 1856 <h3 id="rfc.section.4.6.3"><a href="#rfc.section.4.6.3">4.6.3</a> <a id="status.403" href="#status.403">403 Forbidden</a></h3> 1919 1857 <p id="rfc.section.4.6.3.p.1">The server understood the request, but refuses to authorize it. Providing different user authentication credentials might … … 1924 1862 (Not Found)</a> <em class="bcp14">MAY</em> be used instead. 1925 1863 </p> 1926 <div id="rfc.iref.4 3"></div>1927 <div id="rfc.iref.s.2 5"></div>1864 <div id="rfc.iref.42"></div> 1865 <div id="rfc.iref.s.24"></div> 1928 1866 <h3 id="rfc.section.4.6.4"><a href="#rfc.section.4.6.4">4.6.4</a> <a id="status.404" href="#status.404">404 Not Found</a></h3> 1929 1867 <p id="rfc.section.4.6.4.p.1">The server has not found anything matching the effective request URI. No indication is given of whether the condition is temporary … … 1932 1870 has been refused, or when no other response is applicable. 1933 1871 </p> 1872 <div id="rfc.iref.43"></div> 1873 <div id="rfc.iref.s.25"></div> 1874 <h3 id="rfc.section.4.6.5"><a href="#rfc.section.4.6.5">4.6.5</a> <a id="status.405" href="#status.405">405 Method Not Allowed</a></h3> 1875 <p id="rfc.section.4.6.5.p.1">The method specified in the request-line is not allowed for the target resource. The response <em class="bcp14">MUST</em> include an <a href="#header.allow" class="smpl">Allow</a> header field containing a list of valid methods for the requested resource. 1876 </p> 1934 1877 <div id="rfc.iref.44"></div> 1935 1878 <div id="rfc.iref.s.26"></div> 1936 <h3 id="rfc.section.4.6.5"><a href="#rfc.section.4.6.5">4.6.5</a> <a id="status.405" href="#status.405">405 Method Not Allowed</a></h3>1937 <p id="rfc.section.4.6.5.p.1">The method specified in the request-line is not allowed for the target resource. The response <em class="bcp14">MUST</em> include an <a href="#header.allow" class="smpl">Allow</a> header field containing a list of valid methods for the requested resource.1938 </p>1939 <div id="rfc.iref.45"></div>1940 <div id="rfc.iref.s.27"></div>1941 1879 <h3 id="rfc.section.4.6.6"><a href="#rfc.section.4.6.6">4.6.6</a> <a id="status.406" href="#status.406">406 Not Acceptable</a></h3> 1942 1880 <p id="rfc.section.4.6.6.p.1">The resource identified by the request is only capable of generating response representations which have content characteristics … … 1955 1893 <p id="rfc.section.4.6.6.p.4">If the response could be unacceptable, a user agent <em class="bcp14">SHOULD</em> temporarily stop receipt of more data and query the user for a decision on further actions. 1956 1894 </p> 1895 <div id="rfc.iref.45"></div> 1896 <div id="rfc.iref.s.27"></div> 1897 <h3 id="rfc.section.4.6.7"><a href="#rfc.section.4.6.7">4.6.7</a> <a id="status.408" href="#status.408">408 Request Timeout</a></h3> 1898 <p id="rfc.section.4.6.7.p.1">The client did not produce a request within the time that the server was prepared to wait. The client <em class="bcp14">MAY</em> repeat the request without modifications at any later time. 1899 </p> 1957 1900 <div id="rfc.iref.46"></div> 1958 1901 <div id="rfc.iref.s.28"></div> 1959 <h3 id="rfc.section.4.6.7"><a href="#rfc.section.4.6.7">4.6.7</a> <a id="status.408" href="#status.408">408 Request Timeout</a></h3>1960 <p id="rfc.section.4.6.7.p.1">The client did not produce a request within the time that the server was prepared to wait. The client <em class="bcp14">MAY</em> repeat the request without modifications at any later time.1961 </p>1962 <div id="rfc.iref.47"></div>1963 <div id="rfc.iref.s.29"></div>1964 1902 <h3 id="rfc.section.4.6.8"><a href="#rfc.section.4.6.8">4.6.8</a> <a id="status.409" href="#status.409">409 Conflict</a></h3> 1965 1903 <p id="rfc.section.4.6.8.p.1">The request could not be completed due to a conflict with the current state of the resource. This code is only allowed in … … 1973 1911 contain a list of the differences between the two versions. 1974 1912 </p> 1975 <div id="rfc.iref.4 8"></div>1976 <div id="rfc.iref.s. 30"></div>1913 <div id="rfc.iref.47"></div> 1914 <div id="rfc.iref.s.29"></div> 1977 1915 <h3 id="rfc.section.4.6.9"><a href="#rfc.section.4.6.9">4.6.9</a> <a id="status.410" href="#status.410">410 Gone</a></h3> 1978 1916 <p id="rfc.section.4.6.9.p.1">The target resource is no longer available at the server and no forwarding address is known. This condition is expected to … … 1988 1926 <p id="rfc.section.4.6.9.p.3">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 4.1.2</a> of <a href="#Part6" id="rfc.xref.Part6.17"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 410 responses. 1989 1927 </p> 1990 <div id="rfc.iref.4 9"></div>1991 <div id="rfc.iref.s.3 1"></div>1928 <div id="rfc.iref.48"></div> 1929 <div id="rfc.iref.s.30"></div> 1992 1930 <h3 id="rfc.section.4.6.10"><a href="#rfc.section.4.6.10">4.6.10</a> <a id="status.411" href="#status.411">411 Length Required</a></h3> 1993 1931 <p id="rfc.section.4.6.10.p.1">The server refuses to accept the request without a defined <a href="p1-messaging.html#header.content-length" class="smpl">Content-Length</a>. The client <em class="bcp14">MAY</em> repeat the request if it adds a valid Content-Length header field containing the length of the message body in the request 1994 1932 message. 1995 1933 </p> 1996 <div id="rfc.iref. 50"></div>1997 <div id="rfc.iref.s.3 2"></div>1934 <div id="rfc.iref.49"></div> 1935 <div id="rfc.iref.s.31"></div> 1998 1936 <h3 id="rfc.section.4.6.11"><a href="#rfc.section.4.6.11">4.6.11</a> <a id="status.413" href="#status.413">413 Request Representation Too Large</a></h3> 1999 1937 <p id="rfc.section.4.6.11.p.1">The server is refusing to process a request because the request representation is larger than the server is willing or able … … 2002 1940 <p id="rfc.section.4.6.11.p.2">If the condition is temporary, the server <em class="bcp14">SHOULD</em> include a <a href="#header.retry-after" class="smpl">Retry-After</a> header field to indicate that it is temporary and after what time the client <em class="bcp14">MAY</em> try again. 2003 1941 </p> 2004 <div id="rfc.iref.5 1"></div>2005 <div id="rfc.iref.s.3 3"></div>1942 <div id="rfc.iref.50"></div> 1943 <div id="rfc.iref.s.32"></div> 2006 1944 <h3 id="rfc.section.4.6.12"><a href="#rfc.section.4.6.12">4.6.12</a> <a id="status.414" href="#status.414">414 URI Too Long</a></h3> 2007 1945 <p id="rfc.section.4.6.12.p.1">The server is refusing to service the request because the effective request URI is longer than the server is willing to interpret. … … 2011 1949 in some servers using fixed-length buffers for reading or manipulating the request-target. 2012 1950 </p> 2013 <div id="rfc.iref.5 2"></div>2014 <div id="rfc.iref.s.3 4"></div>1951 <div id="rfc.iref.51"></div> 1952 <div id="rfc.iref.s.33"></div> 2015 1953 <h3 id="rfc.section.4.6.13"><a href="#rfc.section.4.6.13">4.6.13</a> <a id="status.415" href="#status.415">415 Unsupported Media Type</a></h3> 2016 1954 <p id="rfc.section.4.6.13.p.1">The server is refusing to service the request because the request payload is in a format not supported by this request method 2017 1955 on the target resource. 2018 1956 </p> 2019 <div id="rfc.iref.5 3"></div>2020 <div id="rfc.iref.s.3 5"></div>1957 <div id="rfc.iref.52"></div> 1958 <div id="rfc.iref.s.34"></div> 2021 1959 <h3 id="rfc.section.4.6.14"><a href="#rfc.section.4.6.14">4.6.14</a> <a id="status.417" href="#status.417">417 Expectation Failed</a></h3> 2022 1960 <p id="rfc.section.4.6.14.p.1">The expectation given in an <a href="#header.expect" class="smpl">Expect</a> header field (see <a href="#header.expect" id="rfc.xref.header.expect.2" title="Expect">Section 9.11</a>) could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could 2023 1961 not be met by the next-hop server. 2024 1962 </p> 2025 <div id="rfc.iref.5 4"></div>2026 <div id="rfc.iref.s.3 6"></div>1963 <div id="rfc.iref.53"></div> 1964 <div id="rfc.iref.s.35"></div> 2027 1965 <h3 id="rfc.section.4.6.15"><a href="#rfc.section.4.6.15">4.6.15</a> <a id="status.426" href="#status.426">426 Upgrade Required</a></h3> 2028 <p id="rfc.section.4.6.15.p.1">The request can not be completed without a prior protocol upgrade. This response <em class="bcp14">MUST</em> include an <a href="p1-messaging.html#header.upgrade" class="smpl">Upgrade</a> header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 6.5</a> of <a href="#Part1" id="rfc.xref.Part1. 35"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) specifying the required protocols.2029 </p> 2030 <div id="rfc.figure.u. 7"></div>1966 <p id="rfc.section.4.6.15.p.1">The request can not be completed without a prior protocol upgrade. This response <em class="bcp14">MUST</em> include an <a href="p1-messaging.html#header.upgrade" class="smpl">Upgrade</a> header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 6.5</a> of <a href="#Part1" id="rfc.xref.Part1.21"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) specifying the required protocols. 1967 </p> 1968 <div id="rfc.figure.u.5"></div> 2031 1969 <p>Example:</p> <pre class="text">HTTP/1.1 426 Upgrade Required 2032 1970 Upgrade: HTTP/3.0 … … 2040 1978 </p> 2041 1979 <h2 id="rfc.section.4.7"><a href="#rfc.section.4.7">4.7</a> <a id="status.5xx" href="#status.5xx">Server Error 5xx</a></h2> 2042 <div id="rfc.iref.5 5"></div>2043 <div id="rfc.iref.s.3 7"></div>1980 <div id="rfc.iref.54"></div> 1981 <div id="rfc.iref.s.36"></div> 2044 1982 <p id="rfc.section.4.7.p.1">Response status codes beginning with the digit "5" indicate cases in which the server is aware that it has erred or is incapable 2045 1983 of performing the request. Except when responding to a HEAD request, the server <em class="bcp14">SHOULD</em> include a representation containing an explanation of the error situation, and whether it is a temporary or permanent condition. 2046 1984 User agents <em class="bcp14">SHOULD</em> display any included representation to the user. These response codes are applicable to any request method. 2047 1985 </p> 1986 <div id="rfc.iref.55"></div> 1987 <div id="rfc.iref.s.37"></div> 1988 <h3 id="rfc.section.4.7.1"><a href="#rfc.section.4.7.1">4.7.1</a> <a id="status.500" href="#status.500">500 Internal Server Error</a></h3> 1989 <p id="rfc.section.4.7.1.p.1">The server encountered an unexpected condition which prevented it from fulfilling the request.</p> 2048 1990 <div id="rfc.iref.56"></div> 2049 1991 <div id="rfc.iref.s.38"></div> 2050 <h3 id="rfc.section.4.7.1"><a href="#rfc.section.4.7.1">4.7.1</a> <a id="status.500" href="#status.500">500 Internal Server Error</a></h3>2051 <p id="rfc.section.4.7.1.p.1">The server encountered an unexpected condition which prevented it from fulfilling the request.</p>2052 <div id="rfc.iref.57"></div>2053 <div id="rfc.iref.s.39"></div>2054 1992 <h3 id="rfc.section.4.7.2"><a href="#rfc.section.4.7.2">4.7.2</a> <a id="status.501" href="#status.501">501 Not Implemented</a></h3> 2055 1993 <p id="rfc.section.4.7.2.p.1">The server does not support the functionality required to fulfill the request. This is the appropriate response when the server 2056 1994 does not recognize the request method and is not capable of supporting it for any resource. 2057 1995 </p> 2058 <div id="rfc.iref.5 8"></div>2059 <div id="rfc.iref.s. 40"></div>1996 <div id="rfc.iref.57"></div> 1997 <div id="rfc.iref.s.39"></div> 2060 1998 <h3 id="rfc.section.4.7.3"><a href="#rfc.section.4.7.3">4.7.3</a> <a id="status.502" href="#status.502">502 Bad Gateway</a></h3> 2061 1999 <p id="rfc.section.4.7.3.p.1">The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting 2062 2000 to fulfill the request. 2063 2001 </p> 2064 <div id="rfc.iref.5 9"></div>2065 <div id="rfc.iref.s.4 1"></div>2002 <div id="rfc.iref.58"></div> 2003 <div id="rfc.iref.s.40"></div> 2066 2004 <h3 id="rfc.section.4.7.4"><a href="#rfc.section.4.7.4">4.7.4</a> <a id="status.503" href="#status.503">503 Service Unavailable</a></h3> 2067 2005 <p id="rfc.section.4.7.4.p.1">The server is currently unable to handle the request due to a temporary overloading or maintenance of the server.</p> … … 2075 2013 </p> 2076 2014 </div> 2077 <div id="rfc.iref. 60"></div>2078 <div id="rfc.iref.s.4 2"></div>2015 <div id="rfc.iref.59"></div> 2016 <div id="rfc.iref.s.41"></div> 2079 2017 <h3 id="rfc.section.4.7.5"><a href="#rfc.section.4.7.5">4.7.5</a> <a id="status.504" href="#status.504">504 Gateway Timeout</a></h3> 2080 2018 <p id="rfc.section.4.7.5.p.1">The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server specified by the … … 2086 2024 </p> 2087 2025 </div> 2088 <div id="rfc.iref.6 1"></div>2089 <div id="rfc.iref.s.4 3"></div>2026 <div id="rfc.iref.60"></div> 2027 <div id="rfc.iref.s.42"></div> 2090 2028 <h3 id="rfc.section.4.7.6"><a href="#rfc.section.4.7.6">4.7.6</a> <a id="status.505" href="#status.505">505 HTTP Version Not Supported</a></h3> 2091 2029 <p id="rfc.section.4.7.6.p.1">The server does not support, or refuses to support, the protocol version that was used in the request message. The server 2092 2030 is indicating that it is unable or unwilling to complete the request using the same major version as the client, as described 2093 in <a href="p1-messaging.html#http.version" title="Protocol Versioning">Section 2.7</a> of <a href="#Part1" id="rfc.xref.Part1. 36"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, other than with this error message. The response <em class="bcp14">SHOULD</em> contain a representation describing why that version is not supported and what other protocols are supported by that server.2031 in <a href="p1-messaging.html#http.version" title="Protocol Versioning">Section 2.7</a> of <a href="#Part1" id="rfc.xref.Part1.22"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, other than with this error message. The response <em class="bcp14">SHOULD</em> contain a representation describing why that version is not supported and what other protocols are supported by that server. 2094 2032 </p> 2095 2033 <h1 id="rfc.section.5"><a href="#rfc.section.5">5.</a> <a id="protocol.parameters" href="#protocol.parameters">Protocol Parameters</a></h1> … … 2098 2036 a fixed-length subset of that defined by <a href="#RFC1123" id="rfc.xref.RFC1123.1"><cite title="Requirements for Internet Hosts - Application and Support">[RFC1123]</cite></a>: 2099 2037 </p> 2100 <div id="rfc.figure.u. 8"></div><pre class="text">Sun, 06 Nov 1994 08:49:37 GMT ; RFC 11232038 <div id="rfc.figure.u.6"></div><pre class="text">Sun, 06 Nov 1994 08:49:37 GMT ; RFC 1123 2101 2039 </pre><p id="rfc.section.5.1.p.3">The other formats are described here only for compatibility with obsolete implementations.</p> 2102 <div id="rfc.figure.u. 9"></div><pre class="text">Sunday, 06-Nov-94 08:49:37 GMT ; obsolete RFC 850 format2040 <div id="rfc.figure.u.7"></div><pre class="text">Sunday, 06-Nov-94 08:49:37 GMT ; obsolete RFC 850 format 2103 2041 Sun Nov 6 08:49:37 1994 ; ANSI C's asctime() format 2104 2042 </pre><p id="rfc.section.5.1.p.5">HTTP/1.1 clients and servers that parse a date value <em class="bcp14">MUST</em> accept all three formats (for compatibility with HTTP/1.0), though they <em class="bcp14">MUST</em> only generate the RFC 1123 format for representing HTTP-date values in header fields. … … 2108 2046 time zone, and <em class="bcp14">MUST</em> be assumed when reading the asctime format. HTTP-date is case sensitive and <em class="bcp14">MUST NOT</em> include additional whitespace beyond that specifically included as SP in the grammar. 2109 2047 </p> 2110 <div id="rfc.figure.u. 10"></div><pre class="inline"><span id="rfc.iref.g.3"></span> <a href="#http.date" class="smpl">HTTP-date</a> = <a href="#preferred.date.format" class="smpl">rfc1123-date</a> / <a href="#obsolete.date.formats" class="smpl">obs-date</a>2048 <div id="rfc.figure.u.8"></div><pre class="inline"><span id="rfc.iref.g.3"></span> <a href="#http.date" class="smpl">HTTP-date</a> = <a href="#preferred.date.format" class="smpl">rfc1123-date</a> / <a href="#obsolete.date.formats" class="smpl">obs-date</a> 2111 2049 </pre><div id="preferred.date.format"> 2112 2050 <p id="rfc.section.5.1.p.8"> Preferred format:</p> 2113 2051 </div> 2114 <div id="rfc.figure.u. 11"></div><pre class="inline"><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><span id="rfc.iref.g.12"></span><span id="rfc.iref.g.13"></span><span id="rfc.iref.g.14"></span><span id="rfc.iref.g.15"></span> <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#notation" class="smpl">SP</a> date1 <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a>2052 <div id="rfc.figure.u.9"></div><pre class="inline"><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><span id="rfc.iref.g.12"></span><span id="rfc.iref.g.13"></span><span id="rfc.iref.g.14"></span><span id="rfc.iref.g.15"></span> <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#abnf.dependencies" class="smpl">SP</a> date1 <a href="#abnf.dependencies" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#abnf.dependencies" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a> 2115 2053 ; fixed length subset of the format defined in 2116 2054 ; <a href="http://tools.ietf.org/html/rfc1123#section-5.2.14">Section 5.2.14</a> of <a href="#RFC1123" id="rfc.xref.RFC1123.2"><cite title="Requirements for Internet Hosts - Application and Support">[RFC1123]</cite></a> … … 2124 2062 / %x53.75.6E ; "Sun", case-sensitive 2125 2063 2126 <a href="#obsolete.date.formats" class="smpl">date1</a> = <a href="#preferred.date.format" class="smpl">day</a> <a href="# notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">month</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a>2064 <a href="#obsolete.date.formats" class="smpl">date1</a> = <a href="#preferred.date.format" class="smpl">day</a> <a href="#abnf.dependencies" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">month</a> <a href="#abnf.dependencies" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a> 2127 2065 ; e.g., 02 Jun 1982 2128 2066 2129 <a href="#preferred.date.format" class="smpl">day</a> = 2<a href="# notation" class="smpl">DIGIT</a>2067 <a href="#preferred.date.format" class="smpl">day</a> = 2<a href="#abnf.dependencies" class="smpl">DIGIT</a> 2130 2068 <a href="#preferred.date.format" class="smpl">month</a> = %x4A.61.6E ; "Jan", case-sensitive 2131 2069 / %x46.65.62 ; "Feb", case-sensitive … … 2140 2078 / %x4E.6F.76 ; "Nov", case-sensitive 2141 2079 / %x44.65.63 ; "Dec", case-sensitive 2142 <a href="#preferred.date.format" class="smpl">year</a> = 4<a href="# notation" class="smpl">DIGIT</a>2080 <a href="#preferred.date.format" class="smpl">year</a> = 4<a href="#abnf.dependencies" class="smpl">DIGIT</a> 2143 2081 2144 2082 <a href="#preferred.date.format" class="smpl">GMT</a> = %x47.4D.54 ; "GMT", case-sensitive … … 2147 2085 ; 00:00:00 - 23:59:59 2148 2086 2149 <a href="#preferred.date.format" class="smpl">hour</a> = 2<a href="# notation" class="smpl">DIGIT</a>2150 <a href="#preferred.date.format" class="smpl">minute</a> = 2<a href="# notation" class="smpl">DIGIT</a>2151 <a href="#preferred.date.format" class="smpl">second</a> = 2<a href="# notation" class="smpl">DIGIT</a>2087 <a href="#preferred.date.format" class="smpl">hour</a> = 2<a href="#abnf.dependencies" class="smpl">DIGIT</a> 2088 <a href="#preferred.date.format" class="smpl">minute</a> = 2<a href="#abnf.dependencies" class="smpl">DIGIT</a> 2089 <a href="#preferred.date.format" class="smpl">second</a> = 2<a href="#abnf.dependencies" class="smpl">DIGIT</a> 2152 2090 </pre><p id="rfc.section.5.1.p.10">The semantics of <a href="#preferred.date.format" class="smpl">day-name</a>, <a href="#preferred.date.format" class="smpl">day</a>, <a href="#preferred.date.format" class="smpl">month</a>, <a href="#preferred.date.format" class="smpl">year</a>, and <a href="#preferred.date.format" class="smpl">time-of-day</a> are the same as those defined for the RFC 5322 constructs with the corresponding name (<a href="#RFC5322" id="rfc.xref.RFC5322.1"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.3">Section 3.3</a>). 2153 2091 </p> … … 2155 2093 <p id="rfc.section.5.1.p.11"> Obsolete formats:</p> 2156 2094 </div> 2157 <div id="rfc.figure.u.1 2"></div><pre class="inline"><span id="rfc.iref.g.16"></span> <a href="#obsolete.date.formats" class="smpl">obs-date</a> = <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> / <a href="#obsolete.date.formats" class="smpl">asctime-date</a>2158 </pre><div id="rfc.figure.u.1 3"></div><pre class="inline"><span id="rfc.iref.g.17"></span> <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> = <a href="#obsolete.date.formats" class="smpl">day-name-l</a> "," <a href="#notation" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date2</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a>2159 <a href="#obsolete.date.formats" class="smpl">date2</a> = <a href="#preferred.date.format" class="smpl">day</a> "-" <a href="#preferred.date.format" class="smpl">month</a> "-" 2<a href="# notation" class="smpl">DIGIT</a>2095 <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g.16"></span> <a href="#obsolete.date.formats" class="smpl">obs-date</a> = <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> / <a href="#obsolete.date.formats" class="smpl">asctime-date</a> 2096 </pre><div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.17"></span> <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> = <a href="#obsolete.date.formats" class="smpl">day-name-l</a> "," <a href="#abnf.dependencies" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date2</a> <a href="#abnf.dependencies" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#abnf.dependencies" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a> 2097 <a href="#obsolete.date.formats" class="smpl">date2</a> = <a href="#preferred.date.format" class="smpl">day</a> "-" <a href="#preferred.date.format" class="smpl">month</a> "-" 2<a href="#abnf.dependencies" class="smpl">DIGIT</a> 2160 2098 ; day-month-year (e.g., 02-Jun-82) 2161 2099 … … 2167 2105 / %x53.61.74.75.72.64.61.79 ; "Saturday", case-sensitive 2168 2106 / %x53.75.6E.64.61.79 ; "Sunday", case-sensitive 2169 </pre><div id="rfc.figure.u.1 4"></div><pre class="inline"><span id="rfc.iref.g.18"></span> <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> <a href="#notation" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date3</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a>2170 <a href="#obsolete.date.formats" class="smpl">date3</a> = <a href="#preferred.date.format" class="smpl">month</a> <a href="# notation" class="smpl">SP</a> ( 2<a href="#notation" class="smpl">DIGIT</a> / ( <a href="#notation" class="smpl">SP</a> 1<a href="#notation" class="smpl">DIGIT</a> ))2107 </pre><div id="rfc.figure.u.12"></div><pre class="inline"><span id="rfc.iref.g.18"></span> <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> <a href="#abnf.dependencies" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date3</a> <a href="#abnf.dependencies" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#abnf.dependencies" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a> 2108 <a href="#obsolete.date.formats" class="smpl">date3</a> = <a href="#preferred.date.format" class="smpl">month</a> <a href="#abnf.dependencies" class="smpl">SP</a> ( 2<a href="#abnf.dependencies" class="smpl">DIGIT</a> / ( <a href="#abnf.dependencies" class="smpl">SP</a> 1<a href="#abnf.dependencies" class="smpl">DIGIT</a> )) 2171 2109 ; month day (e.g., Jun 2) 2172 2110 </pre><div class="note" id="rfc.section.5.1.p.15"> … … 2185 2123 By convention, the products are listed in order of their significance for identifying the application. 2186 2124 </p> 2187 <div id="rfc.figure.u.1 5"></div><pre class="inline"><span id="rfc.iref.g.19"></span><span id="rfc.iref.g.20"></span> <a href="#product.tokens" class="smpl">product</a> = <a href="#core.rules" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>]2188 <a href="#product.tokens" class="smpl">product-version</a> = <a href="# core.rules" class="smpl">token</a>2125 <div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.19"></span><span id="rfc.iref.g.20"></span> <a href="#product.tokens" class="smpl">product</a> = <a href="#abnf.dependencies" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>] 2126 <a href="#product.tokens" class="smpl">product-version</a> = <a href="#abnf.dependencies" class="smpl">token</a> 2189 2127 </pre><p id="rfc.section.5.2.p.3">Examples:</p> 2190 <div id="rfc.figure.u.1 6"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b32128 <div id="rfc.figure.u.14"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b3 2191 2129 Server: Apache/0.8.4 2192 2130 </pre><p id="rfc.section.5.2.p.5">Product tokens <em class="bcp14">SHOULD</em> be short and to the point. They <em class="bcp14">MUST NOT</em> be used for advertising or other non-essential information. Although any token octet <em class="bcp14">MAY</em> appear in a product-version, this token <em class="bcp14">SHOULD</em> only be used for a version identifier (i.e., successive versions of the same product <em class="bcp14">SHOULD</em> only differ in the product-version portion of the product value). … … 2199 2137 </p> 2200 2138 </div> 2201 <div id="rfc.figure.u.1 7"></div><pre class="inline"><span id="rfc.iref.g.21"></span> <a href="#rule.charset" class="smpl">charset</a> = <a href="#core.rules" class="smpl">token</a>2139 <div id="rfc.figure.u.15"></div><pre class="inline"><span id="rfc.iref.g.21"></span> <a href="#rule.charset" class="smpl">charset</a> = <a href="#abnf.dependencies" class="smpl">token</a> 2202 2140 </pre><p id="rfc.section.5.3.p.4">Although HTTP allows an arbitrary token to be used as a charset value, any token that has a predefined value within the IANA 2203 2141 Character Set registry <em class="bcp14">MUST</em> represent the character encoding defined by that registry. Applications <em class="bcp14">SHOULD</em> limit their use of character encodings to those defined within the IANA registry. … … 2213 2151 directly, and only decoded by the recipient. 2214 2152 </p> 2215 <div id="rfc.figure.u.1 8"></div><pre class="inline"><span id="rfc.iref.g.22"></span> <a href="#content.codings" class="smpl">content-coding</a> = <a href="#core.rules" class="smpl">token</a>2153 <div id="rfc.figure.u.16"></div><pre class="inline"><span id="rfc.iref.g.22"></span> <a href="#content.codings" class="smpl">content-coding</a> = <a href="#abnf.dependencies" class="smpl">token</a> 2216 2154 </pre><p id="rfc.section.5.4.p.3">All content-coding values are case-insensitive. HTTP/1.1 uses content-coding values in the <a href="#header.accept-encoding" class="smpl">Accept-Encoding</a> (<a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.2" title="Accept-Encoding">Section 9.3</a>) and <a href="#header.content-encoding" class="smpl">Content-Encoding</a> (<a href="#header.content-encoding" id="rfc.xref.header.content-encoding.1" title="Content-Encoding">Section 9.6</a>) header fields. Although the value describes the content-coding, what is more important is that it indicates what decoding 2217 2155 mechanism will be required to remove the encoding. … … 2220 2158 </p> 2221 2159 <ul class="empty"> 2222 <li>See <a href="p1-messaging.html#compress.coding" title="Compress Coding">Section 4.2.1</a> of <a href="#Part1" id="rfc.xref.Part1. 37"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.2160 <li>See <a href="p1-messaging.html#compress.coding" title="Compress Coding">Section 4.2.1</a> of <a href="#Part1" id="rfc.xref.Part1.23"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 2223 2161 </li> 2224 2162 </ul> … … 2226 2164 </p> 2227 2165 <ul class="empty"> 2228 <li>See <a href="p1-messaging.html#deflate.coding" title="Deflate Coding">Section 4.2.2</a> of <a href="#Part1" id="rfc.xref.Part1. 38"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.2166 <li>See <a href="p1-messaging.html#deflate.coding" title="Deflate Coding">Section 4.2.2</a> of <a href="#Part1" id="rfc.xref.Part1.24"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 2229 2167 </li> 2230 2168 </ul> … … 2232 2170 </p> 2233 2171 <ul class="empty"> 2234 <li>See <a href="p1-messaging.html#gzip.coding" title="Gzip Coding">Section 4.2.3</a> of <a href="#Part1" id="rfc.xref.Part1. 39"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.2172 <li>See <a href="p1-messaging.html#gzip.coding" title="Gzip Coding">Section 4.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.25"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 2235 2173 </li> 2236 2174 </ul> … … 2244 2182 <li>Pointer to specification text</li> 2245 2183 </ul> 2246 <p id="rfc.section.5.4.1.p.3">Names of content codings <em class="bcp14">MUST NOT</em> overlap with names of transfer codings (<a href="p1-messaging.html#transfer.codings" title="Transfer Codings">Section 4</a> of <a href="#Part1" id="rfc.xref.Part1. 40"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>), unless the encoding transformation is identical (as is the case for the compression codings defined in <a href="p1-messaging.html#compression.codings" title="Compression Codings">Section 4.2</a> of <a href="#Part1" id="rfc.xref.Part1.41"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).2184 <p id="rfc.section.5.4.1.p.3">Names of content codings <em class="bcp14">MUST NOT</em> overlap with names of transfer codings (<a href="p1-messaging.html#transfer.codings" title="Transfer Codings">Section 4</a> of <a href="#Part1" id="rfc.xref.Part1.26"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>), unless the encoding transformation is identical (as is the case for the compression codings defined in <a href="p1-messaging.html#compression.codings" title="Compression Codings">Section 4.2</a> of <a href="#Part1" id="rfc.xref.Part1.27"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 2247 2185 </p> 2248 2186 <p id="rfc.section.5.4.1.p.4">Values to be added to this name space require IETF Review (see <a href="http://tools.ietf.org/html/rfc5226#section-4.1">Section 4.1</a> of <a href="#RFC5226" id="rfc.xref.RFC5226.3"><cite title="Guidelines for Writing an IANA Considerations Section in RFCs">[RFC5226]</cite></a>), and <em class="bcp14">MUST</em> conform to the purpose of content coding defined in this section. … … 2253 2191 <p id="rfc.section.5.5.p.1">HTTP uses Internet Media Types <a href="#RFC2046" id="rfc.xref.RFC2046.1"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types">[RFC2046]</cite></a> in the <a href="#header.content-type" class="smpl">Content-Type</a> (<a href="#header.content-type" id="rfc.xref.header.content-type.3" title="Content-Type">Section 9.9</a>) and <a href="#header.accept" class="smpl">Accept</a> (<a href="#header.accept" id="rfc.xref.header.accept.2" title="Accept">Section 9.1</a>) header fields in order to provide open and extensible data typing and type negotiation. 2254 2192 </p> 2255 <div id="rfc.figure.u.1 9"></div><pre class="inline"><span id="rfc.iref.g.24"></span><span id="rfc.iref.g.25"></span><span id="rfc.iref.g.26"></span> <a href="#media.types" class="smpl">media-type</a> = <a href="#media.types" class="smpl">type</a> "/" <a href="#media.types" class="smpl">subtype</a> *( <a href="#core.rules" class="smpl">OWS</a> ";" <a href="#core.rules" class="smpl">OWS</a> <a href="#rule.parameter" class="smpl">parameter</a> )2256 <a href="#media.types" class="smpl">type</a> = <a href="# core.rules" class="smpl">token</a>2257 <a href="#media.types" class="smpl">subtype</a> = <a href="# core.rules" class="smpl">token</a>2193 <div id="rfc.figure.u.17"></div><pre class="inline"><span id="rfc.iref.g.24"></span><span id="rfc.iref.g.25"></span><span id="rfc.iref.g.26"></span> <a href="#media.types" class="smpl">media-type</a> = <a href="#media.types" class="smpl">type</a> "/" <a href="#media.types" class="smpl">subtype</a> *( <a href="#abnf.dependencies" class="smpl">OWS</a> ";" <a href="#abnf.dependencies" class="smpl">OWS</a> <a href="#rule.parameter" class="smpl">parameter</a> ) 2194 <a href="#media.types" class="smpl">type</a> = <a href="#abnf.dependencies" class="smpl">token</a> 2195 <a href="#media.types" class="smpl">subtype</a> = <a href="#abnf.dependencies" class="smpl">token</a> 2258 2196 </pre><div id="rule.parameter"> 2259 2197 <p id="rfc.section.5.5.p.3"> The type/subtype <em class="bcp14">MAY</em> be followed by parameters in the form of attribute/value pairs. 2260 2198 </p> 2261 2199 </div> 2262 <div id="rfc.figure.u. 20"></div><pre class="inline"><span id="rfc.iref.g.27"></span><span id="rfc.iref.g.28"></span><span id="rfc.iref.g.29"></span> <a href="#rule.parameter" class="smpl">parameter</a> = <a href="#rule.parameter" class="smpl">attribute</a> "=" <a href="#rule.parameter" class="smpl">value</a>2263 <a href="#rule.parameter" class="smpl">attribute</a> = <a href="# core.rules" class="smpl">token</a>2264 <a href="#rule.parameter" class="smpl">value</a> = <a href="# core.rules" class="smpl">word</a>2200 <div id="rfc.figure.u.18"></div><pre class="inline"><span id="rfc.iref.g.27"></span><span id="rfc.iref.g.28"></span><span id="rfc.iref.g.29"></span> <a href="#rule.parameter" class="smpl">parameter</a> = <a href="#rule.parameter" class="smpl">attribute</a> "=" <a href="#rule.parameter" class="smpl">value</a> 2201 <a href="#rule.parameter" class="smpl">attribute</a> = <a href="#abnf.dependencies" class="smpl">token</a> 2202 <a href="#rule.parameter" class="smpl">value</a> = <a href="#abnf.dependencies" class="smpl">word</a> 2265 2203 </pre><p id="rfc.section.5.5.p.5">The type, subtype, and parameter attribute names are case-insensitive. Parameter values might or might not be case-sensitive, 2266 2204 depending on the semantics of the parameter name. The presence or absence of a parameter might be significant to the processing 2267 2205 of a media-type, depending on its definition within the media type registry. 2268 2206 </p> 2269 <p id="rfc.section.5.5.p.6">A parameter value that matches the <a href="# core.rules" class="smpl">token</a> production can be transmitted as either a token or within a quoted-string. The quoted and unquoted values are equivalent.2207 <p id="rfc.section.5.5.p.6">A parameter value that matches the <a href="#abnf.dependencies" class="smpl">token</a> production can be transmitted as either a token or within a quoted-string. The quoted and unquoted values are equivalent. 2270 2208 </p> 2271 2209 <p id="rfc.section.5.5.p.7">Note that some older HTTP applications do not recognize media type parameters. When sending data to older HTTP applications, … … 2310 2248 of subtags: 2311 2249 </p> 2312 <div id="rfc.figure.u. 21"></div><pre class="inline"><span id="rfc.iref.g.30"></span> <a href="#language.tags" class="smpl">language-tag</a> = <Language-Tag, defined in <a href="#RFC5646" id="rfc.xref.RFC5646.2"><cite title="Tags for Identifying Languages">[RFC5646]</cite></a>, <a href="http://tools.ietf.org/html/rfc5646#section-2.1">Section 2.1</a>>2250 <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g.30"></span> <a href="#language.tags" class="smpl">language-tag</a> = <Language-Tag, defined in <a href="#RFC5646" id="rfc.xref.RFC5646.2"><cite title="Tags for Identifying Languages">[RFC5646]</cite></a>, <a href="http://tools.ietf.org/html/rfc5646#section-2.1">Section 2.1</a>> 2313 2251 </pre><p id="rfc.section.5.6.p.4">White space is not allowed within the tag and all tags are case-insensitive. The name space of language subtags is administered 2314 2252 by the IANA (see <<a href="http://www.iana.org/assignments/language-subtag-registry">http://www.iana.org/assignments/language-subtag-registry</a>>). 2315 2253 </p> 2316 <div id="rfc.figure.u.2 2"></div>2254 <div id="rfc.figure.u.20"></div> 2317 2255 <p>Example tags include:</p> <pre class="text"> en, en-US, es-419, az-Arab, x-pig-latin, man-Nkoo-GN 2318 2256 </pre> <p id="rfc.section.5.6.p.6">See <a href="#RFC5646" id="rfc.xref.RFC5646.3"><cite title="Tags for Identifying Languages">[RFC5646]</cite></a> for further information. … … 2343 2281 <tr> 2344 2282 <td class="left">Content-Length</td> 2345 <td class="left"><a href="p1-messaging.html#header.content-length" title="Content-Length">Section 3.3.2</a> of <a href="#Part1" id="rfc.xref.Part1. 42"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a></td>2283 <td class="left"><a href="p1-messaging.html#header.content-length" title="Content-Length">Section 3.3.2</a> of <a href="#Part1" id="rfc.xref.Part1.28"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a></td> 2346 2284 </tr> 2347 2285 <tr> … … 2353 2291 </div> 2354 2292 <h2 id="rfc.section.6.2"><a href="#rfc.section.6.2">6.2</a> <a id="payload.body" href="#payload.body">Payload Body</a></h2> 2355 <p id="rfc.section.6.2.p.1">A payload body is only present in a message when a message body is present, as described in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1. 43"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. The payload body is obtained from the message body by decoding any <a href="p1-messaging.html#header.transfer-encoding" class="smpl">Transfer-Encoding</a> that might have been applied to ensure safe and proper transfer of the message.2293 <p id="rfc.section.6.2.p.1">A payload body is only present in a message when a message body is present, as described in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.29"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. The payload body is obtained from the message body by decoding any <a href="p1-messaging.html#header.transfer-encoding" class="smpl">Transfer-Encoding</a> that might have been applied to ensure safe and proper transfer of the message. 2356 2294 </p> 2357 2295 <div id="rfc.iref.r.1"></div> … … 2372 2310 in an HTTP message, it is referred to as the payload of the message. 2373 2311 </p> 2374 <p id="rfc.section.7.p.4">A representation body is only present in a message when a message body is present, as described in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1. 44"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. The representation body is obtained from the message body by decoding any <a href="p1-messaging.html#header.transfer-encoding" class="smpl">Transfer-Encoding</a> that might have been applied to ensure safe and proper transfer of the message.2312 <p id="rfc.section.7.p.4">A representation body is only present in a message when a message body is present, as described in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.30"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. The representation body is obtained from the message body by decoding any <a href="p1-messaging.html#header.transfer-encoding" class="smpl">Transfer-Encoding</a> that might have been applied to ensure safe and proper transfer of the message. 2375 2313 </p> 2376 2314 <h2 id="rfc.section.7.1"><a href="#rfc.section.7.1">7.1</a> <a id="identifying.response.associated.with.representation" href="#identifying.response.associated.with.representation">Identifying the Resource Associated with a Representation</a></h2> 2377 2315 <p id="rfc.section.7.1.p.1">It is sometimes necessary to determine an identifier for the resource associated with a representation.</p> 2378 2316 <p id="rfc.section.7.1.p.2">An HTTP request representation, when present, is always associated with an anonymous (i.e., unidentified) resource.</p> 2379 <p id="rfc.section.7.1.p.3">In the common case, an HTTP response is a representation of the target resource (see <a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 5.5</a> of <a href="#Part1" id="rfc.xref.Part1. 45"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). However, this is not always the case. To determine the URI of the resource a response is associated with, the following2317 <p id="rfc.section.7.1.p.3">In the common case, an HTTP response is a representation of the target resource (see <a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 5.5</a> of <a href="#Part1" id="rfc.xref.Part1.31"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). However, this is not always the case. To determine the URI of the resource a response is associated with, the following 2380 2318 rules are used (with the first applicable one being selected): 2381 2319 </p> … … 2435 2373 </table> 2436 2374 </div> 2437 <p id="rfc.section.7.2.p.3">Additional header fields define metadata about the selected representation, which might differ from the representation included 2375 <p id="rfc.section.7.2.p.3"><span id="rfc.iref.s.43"></span> We use the term "<dfn>selected representation</dfn>" to refer to the the current representation of a target resource that would have been selected in a successful response if 2376 the same request had used the method GET and excluded any conditional request header fields. 2377 </p> 2378 <p id="rfc.section.7.2.p.4">Additional header fields define metadata about the selected representation, which might differ from the representation included 2438 2379 in the message for responses to some state-changing methods. The following header fields are defined as selected representation 2439 2380 metadata: … … 2466 2407 <p id="rfc.section.7.3.p.2">The data type of the representation data is determined via the header fields <a href="#header.content-type" class="smpl">Content-Type</a> and <a href="#header.content-encoding" class="smpl">Content-Encoding</a>. These define a two-layer, ordered encoding model: 2467 2408 </p> 2468 <div id="rfc.figure.u.2 3"></div><pre class="text"> representation-data := Content-Encoding( Content-Type( bits ) )2409 <div id="rfc.figure.u.21"></div><pre class="text"> representation-data := Content-Encoding( Content-Type( bits ) ) 2469 2410 </pre><p id="rfc.section.7.3.p.4"> <a href="#header.content-type" class="smpl">Content-Type</a> specifies the media type of the underlying data, which defines both the data format and how that data <em class="bcp14">SHOULD</em> be processed by the recipient (within the scope of the request method semantics). Any HTTP/1.1 message containing a payload 2470 2411 body <em class="bcp14">SHOULD</em> include a Content-Type header field defining the media type of the associated representation unless that metadata is unknown … … 2535 2476 (Not Acceptable)</a> response. 2536 2477 </p> 2537 <p id="rfc.section.8.1.p.5">Many of the mechanisms for expressing preferences use quality values to declare relative preference. See <a href="p1-messaging.html#quality.values" title="Quality Values">Section 4.3.1</a> of <a href="#Part1" id="rfc.xref.Part1. 46"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for more information.2478 <p id="rfc.section.8.1.p.5">Many of the mechanisms for expressing preferences use quality values to declare relative preference. See <a href="p1-messaging.html#quality.values" title="Quality Values">Section 4.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.32"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for more information. 2538 2479 </p> 2539 2480 <p id="rfc.section.8.1.p.6">HTTP/1.1 includes the following header fields for enabling server-driven negotiation through description of user agent capabilities … … 2577 2518 for an in-line image. 2578 2519 </p> 2579 <div id="rfc.figure.u.2 4"></div><pre class="inline"><span id="rfc.iref.g.31"></span><span id="rfc.iref.g.32"></span><span id="rfc.iref.g.33"></span><span id="rfc.iref.g.34"></span> <a href="#header.accept" class="smpl">Accept</a> = #( <a href="#header.accept" class="smpl">media-range</a> [ <a href="#header.accept" class="smpl">accept-params</a> ] )2520 <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.31"></span><span id="rfc.iref.g.32"></span><span id="rfc.iref.g.33"></span><span id="rfc.iref.g.34"></span> <a href="#header.accept" class="smpl">Accept</a> = #( <a href="#header.accept" class="smpl">media-range</a> [ <a href="#header.accept" class="smpl">accept-params</a> ] ) 2580 2521 2581 2522 <a href="#header.accept" class="smpl">media-range</a> = ( "*/*" 2582 2523 / ( <a href="#media.types" class="smpl">type</a> "/" "*" ) 2583 2524 / ( <a href="#media.types" class="smpl">type</a> "/" <a href="#media.types" class="smpl">subtype</a> ) 2584 ) *( <a href="# core.rules" class="smpl">OWS</a> ";" <a href="#core.rules" class="smpl">OWS</a> <a href="#rule.parameter" class="smpl">parameter</a> )2585 <a href="#header.accept" class="smpl">accept-params</a> = <a href="# core.rules" class="smpl">OWS</a> ";" <a href="#core.rules" class="smpl">OWS</a> "q=" <a href="#abnf.dependencies" class="smpl">qvalue</a> *( <a href="#header.accept" class="smpl">accept-ext</a> )2586 <a href="#header.accept" class="smpl">accept-ext</a> = <a href="# core.rules" class="smpl">OWS</a> ";" <a href="#core.rules" class="smpl">OWS</a> <a href="#core.rules" class="smpl">token</a> [ "=" <a href="#core.rules" class="smpl">word</a> ]2525 ) *( <a href="#abnf.dependencies" class="smpl">OWS</a> ";" <a href="#abnf.dependencies" class="smpl">OWS</a> <a href="#rule.parameter" class="smpl">parameter</a> ) 2526 <a href="#header.accept" class="smpl">accept-params</a> = <a href="#abnf.dependencies" class="smpl">OWS</a> ";" <a href="#abnf.dependencies" class="smpl">OWS</a> "q=" <a href="#abnf.dependencies" class="smpl">qvalue</a> *( <a href="#header.accept" class="smpl">accept-ext</a> ) 2527 <a href="#header.accept" class="smpl">accept-ext</a> = <a href="#abnf.dependencies" class="smpl">OWS</a> ";" <a href="#abnf.dependencies" class="smpl">OWS</a> <a href="#abnf.dependencies" class="smpl">token</a> [ "=" <a href="#abnf.dependencies" class="smpl">word</a> ] 2587 2528 </pre><p id="rfc.section.9.1.p.3">The asterisk "*" character is used to group media types into ranges, with "*/*" indicating all media types and "type/*" indicating 2588 2529 all subtypes of that type. The media-range <em class="bcp14">MAY</em> include media type parameters that are applicable to that range. … … 2590 2531 <p id="rfc.section.9.1.p.4">Each media-range <em class="bcp14">MAY</em> be followed by one or more accept-params, beginning with the "q" parameter for indicating a relative quality factor. The first 2591 2532 "q" parameter (if any) separates the media-range parameter(s) from the accept-params. Quality factors allow the user or user 2592 agent to indicate the relative degree of preference for that media-range, using the qvalue scale from 0 to 1 (<a href="p1-messaging.html#quality.values" title="Quality Values">Section 4.3.1</a> of <a href="#Part1" id="rfc.xref.Part1. 47"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). The default value is q=1.2533 agent to indicate the relative degree of preference for that media-range, using the qvalue scale from 0 to 1 (<a href="p1-messaging.html#quality.values" title="Quality Values">Section 4.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.33"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). The default value is q=1. 2593 2534 </p> 2594 2535 <div class="note" id="rfc.section.9.1.p.5"> … … 2600 2541 </div> 2601 2542 <p id="rfc.section.9.1.p.6">The example</p> 2602 <div id="rfc.figure.u.2 5"></div><pre class="text"> Accept: audio/*; q=0.2, audio/basic2543 <div id="rfc.figure.u.23"></div><pre class="text"> Accept: audio/*; q=0.2, audio/basic 2603 2544 </pre><p id="rfc.section.9.1.p.8"> <em class="bcp14">SHOULD</em> be interpreted as "I prefer audio/basic, but send me any audio type if it is the best available after an 80% mark-down in 2604 2545 quality". … … 2609 2550 </p> 2610 2551 <p id="rfc.section.9.1.p.10">A more elaborate example is</p> 2611 <div id="rfc.figure.u.2 6"></div><pre class="text"> Accept: text/plain; q=0.5, text/html,2552 <div id="rfc.figure.u.24"></div><pre class="text"> Accept: text/plain; q=0.5, text/html, 2612 2553 text/x-dvi; q=0.8, text/x-c 2613 2554 </pre><p id="rfc.section.9.1.p.12">Verbally, this would be interpreted as "text/html and text/x-c are the preferred media types, but if they do not exist, then … … 2617 2558 to a given type, the most specific reference has precedence. For example, 2618 2559 </p> 2619 <div id="rfc.figure.u.2 7"></div><pre class="text"> Accept: text/*, text/plain, text/plain;format=flowed, */*2560 <div id="rfc.figure.u.25"></div><pre class="text"> Accept: text/*, text/plain, text/plain;format=flowed, */* 2620 2561 </pre><p id="rfc.section.9.1.p.15">have the following precedence: </p> 2621 2562 <ol> … … 2628 2569 which matches that type. For example, 2629 2570 </p> 2630 <div id="rfc.figure.u.2 8"></div><pre class="text"> Accept: text/*;q=0.3, text/html;q=0.7, text/html;level=1,2571 <div id="rfc.figure.u.26"></div><pre class="text"> Accept: text/*;q=0.3, text/html;q=0.7, text/html;level=1, 2631 2572 text/html;level=2;q=0.4, */*;q=0.5 2632 2573 </pre><p id="rfc.section.9.1.p.18">would cause the following values to be associated:</p> … … 2677 2618 that capability to a server which is capable of representing documents in those character encodings. 2678 2619 </p> 2679 <div id="rfc.figure.u.2 9"></div><pre class="inline"><span id="rfc.iref.g.35"></span> <a href="#header.accept-charset" class="smpl">Accept-Charset</a> = 1#( ( <a href="#rule.charset" class="smpl">charset</a> / "*" )2680 [ <a href="# core.rules" class="smpl">OWS</a> ";" <a href="#core.rules" class="smpl">OWS</a> "q=" <a href="#abnf.dependencies" class="smpl">qvalue</a> ] )2620 <div id="rfc.figure.u.27"></div><pre class="inline"><span id="rfc.iref.g.35"></span> <a href="#header.accept-charset" class="smpl">Accept-Charset</a> = 1#( ( <a href="#rule.charset" class="smpl">charset</a> / "*" ) 2621 [ <a href="#abnf.dependencies" class="smpl">OWS</a> ";" <a href="#abnf.dependencies" class="smpl">OWS</a> "q=" <a href="#abnf.dependencies" class="smpl">qvalue</a> ] ) 2681 2622 </pre><p id="rfc.section.9.2.p.3">Character encoding values (a.k.a., charsets) are described in <a href="#character.sets" title="Character Encodings (charset)">Section 5.3</a>. Each charset <em class="bcp14">MAY</em> be given an associated quality value which represents the user's preference for that charset. The default value is q=1. An 2682 2623 example is 2683 2624 </p> 2684 <div id="rfc.figure.u. 30"></div><pre class="text"> Accept-Charset: iso-8859-5, unicode-1-1;q=0.82625 <div id="rfc.figure.u.28"></div><pre class="text"> Accept-Charset: iso-8859-5, unicode-1-1;q=0.8 2685 2626 </pre><p id="rfc.section.9.2.p.5">The special value "*", if present in the Accept-Charset field, matches every character encoding which is not mentioned elsewhere 2686 2627 in the Accept-Charset field. If no "*" is present in an Accept-Charset field, then all character encodings not explicitly … … 2697 2638 no encoding is preferred. 2698 2639 </p> 2699 <div id="rfc.figure.u. 31"></div><pre class="inline"><span id="rfc.iref.g.36"></span><span id="rfc.iref.g.37"></span> <a href="#header.accept-encoding" class="smpl">Accept-Encoding</a> = #( <a href="#header.accept-encoding" class="smpl">codings</a> [ <a href="#core.rules" class="smpl">OWS</a> ";" <a href="#core.rules" class="smpl">OWS</a> "q=" <a href="#abnf.dependencies" class="smpl">qvalue</a> ] )2640 <div id="rfc.figure.u.29"></div><pre class="inline"><span id="rfc.iref.g.36"></span><span id="rfc.iref.g.37"></span> <a href="#header.accept-encoding" class="smpl">Accept-Encoding</a> = #( <a href="#header.accept-encoding" class="smpl">codings</a> [ <a href="#abnf.dependencies" class="smpl">OWS</a> ";" <a href="#abnf.dependencies" class="smpl">OWS</a> "q=" <a href="#abnf.dependencies" class="smpl">qvalue</a> ] ) 2700 2641 <a href="#header.accept-encoding" class="smpl">codings</a> = <a href="#content.codings" class="smpl">content-coding</a> / "identity" / "*" 2701 2642 </pre><p id="rfc.section.9.3.p.3">Each codings value <em class="bcp14">MAY</em> be given an associated quality value which represents the preference for that encoding. The default value is q=1. 2702 2643 </p> 2703 2644 <p id="rfc.section.9.3.p.4">For example,</p> 2704 <div id="rfc.figure.u.3 2"></div><pre class="text"> Accept-Encoding: compress, gzip2645 <div id="rfc.figure.u.30"></div><pre class="text"> Accept-Encoding: compress, gzip 2705 2646 Accept-Encoding: 2706 2647 Accept-Encoding: * … … 2718 2659 </li> 2719 2660 <li>If the representation's content-coding is one of the content-codings listed in the Accept-Encoding field, then it is acceptable 2720 unless it is accompanied by a qvalue of 0. (As defined in <a href="p1-messaging.html#quality.values" title="Quality Values">Section 4.3.1</a> of <a href="#Part1" id="rfc.xref.Part1. 48"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, a qvalue of 0 means "not acceptable".)2661 unless it is accompanied by a qvalue of 0. (As defined in <a href="p1-messaging.html#quality.values" title="Quality Values">Section 4.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.34"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, a qvalue of 0 means "not acceptable".) 2721 2662 </li> 2722 2663 <li>If multiple content-codings are acceptable, then the acceptable content-coding with the highest non-zero qvalue is preferred.</li> … … 2740 2681 in the response. Language tags are defined in <a href="#language.tags" title="Language Tags">Section 5.6</a>. 2741 2682 </p> 2742 <div id="rfc.figure.u.3 3"></div><pre class="inline"><span id="rfc.iref.g.38"></span><span id="rfc.iref.g.39"></span> <a href="#header.accept-language" class="smpl">Accept-Language</a> =2743 1#( <a href="#header.accept-language" class="smpl">language-range</a> [ <a href="# core.rules" class="smpl">OWS</a> ";" <a href="#core.rules" class="smpl">OWS</a> "q=" <a href="#abnf.dependencies" class="smpl">qvalue</a> ] )2683 <div id="rfc.figure.u.31"></div><pre class="inline"><span id="rfc.iref.g.38"></span><span id="rfc.iref.g.39"></span> <a href="#header.accept-language" class="smpl">Accept-Language</a> = 2684 1#( <a href="#header.accept-language" class="smpl">language-range</a> [ <a href="#abnf.dependencies" class="smpl">OWS</a> ";" <a href="#abnf.dependencies" class="smpl">OWS</a> "q=" <a href="#abnf.dependencies" class="smpl">qvalue</a> ] ) 2744 2685 <a href="#header.accept-language" class="smpl">language-range</a> = 2745 2686 <language-range, defined in <a href="#RFC4647" id="rfc.xref.RFC4647.1"><cite title="Matching of Language Tags">[RFC4647]</cite></a>, <a href="http://tools.ietf.org/html/rfc4647#section-2.1">Section 2.1</a>> … … 2747 2688 languages specified by that range. The quality value defaults to "q=1". For example, 2748 2689 </p> 2749 <div id="rfc.figure.u.3 4"></div><pre class="text"> Accept-Language: da, en-gb;q=0.8, en;q=0.72690 <div id="rfc.figure.u.32"></div><pre class="text"> Accept-Language: da, en-gb;q=0.8, en;q=0.7 2750 2691 </pre><p id="rfc.section.9.4.p.5">would mean: "I prefer Danish, but will accept British English and other types of English". (see also <a href="http://tools.ietf.org/html/rfc4647#section-2.3">Section 2.3</a> of <a href="#RFC4647" id="rfc.xref.RFC4647.2"><cite title="Matching of Language Tags">[RFC4647]</cite></a>) 2751 2692 </p> … … 2757 2698 </div> 2758 2699 <p id="rfc.section.9.4.p.8">It might be contrary to the privacy expectations of the user to send an Accept-Language header field with the complete linguistic 2759 preferences of the user in every request. For a discussion of this issue, see <a href="#privacy.issues.connected.to.accept.header.fields" title="Privacy Issues Connected to Accept Header Fields">Section 1 1.5</a>.2700 preferences of the user in every request. For a discussion of this issue, see <a href="#privacy.issues.connected.to.accept.header.fields" title="Privacy Issues Connected to Accept Header Fields">Section 12.5</a>. 2760 2701 </p> 2761 2702 <p id="rfc.section.9.4.p.9">As intelligibility is highly dependent on the individual user, it is recommended that client applications make the choice … … 2775 2716 is strictly to inform the recipient of valid request methods associated with the resource. 2776 2717 </p> 2777 <div id="rfc.figure.u.3 5"></div><pre class="inline"><span id="rfc.iref.g.40"></span> <a href="#header.allow" class="smpl">Allow</a> = #<a href="#methods" class="smpl">method</a>2718 <div id="rfc.figure.u.33"></div><pre class="inline"><span id="rfc.iref.g.40"></span> <a href="#header.allow" class="smpl">Allow</a> = #<a href="#methods" class="smpl">method</a> 2778 2719 </pre><p id="rfc.section.9.5.p.3">Example of use:</p> 2779 <div id="rfc.figure.u.3 6"></div><pre class="text"> Allow: GET, HEAD, PUT2720 <div id="rfc.figure.u.34"></div><pre class="text"> Allow: GET, HEAD, PUT 2780 2721 </pre><p id="rfc.section.9.5.p.5">The actual set of allowed methods is defined by the origin server at the time of each request.</p> 2781 2722 <p id="rfc.section.9.5.p.6">A proxy <em class="bcp14">MUST NOT</em> modify the Allow header field — it does not need to understand all the methods specified in order to handle them according … … 2789 2730 its underlying media type. 2790 2731 </p> 2791 <div id="rfc.figure.u.3 7"></div><pre class="inline"><span id="rfc.iref.g.41"></span> <a href="#header.content-encoding" class="smpl">Content-Encoding</a> = 1#<a href="#content.codings" class="smpl">content-coding</a>2732 <div id="rfc.figure.u.35"></div><pre class="inline"><span id="rfc.iref.g.41"></span> <a href="#header.content-encoding" class="smpl">Content-Encoding</a> = 1#<a href="#content.codings" class="smpl">content-coding</a> 2792 2733 </pre><p id="rfc.section.9.6.p.3">Content codings are defined in <a href="#content.codings" title="Content Codings">Section 5.4</a>. An example of its use is 2793 2734 </p> 2794 <div id="rfc.figure.u.3 8"></div><pre class="text"> Content-Encoding: gzip2735 <div id="rfc.figure.u.36"></div><pre class="text"> Content-Encoding: gzip 2795 2736 </pre><p id="rfc.section.9.6.p.5">The content-coding is a characteristic of the representation. Typically, the representation body is stored with this encoding 2796 2737 and is only decoded before rendering or analogous usage. However, a transforming proxy <em class="bcp14">MAY</em> modify the content-coding if the new coding is known to be acceptable to the recipient, unless the "no-transform" cache-control … … 2816 2757 that this might not be equivalent to all the languages used within the representation. 2817 2758 </p> 2818 <div id="rfc.figure.u.3 9"></div><pre class="inline"><span id="rfc.iref.g.42"></span> <a href="#header.content-language" class="smpl">Content-Language</a> = 1#<a href="#language.tags" class="smpl">language-tag</a>2759 <div id="rfc.figure.u.37"></div><pre class="inline"><span id="rfc.iref.g.42"></span> <a href="#header.content-language" class="smpl">Content-Language</a> = 1#<a href="#language.tags" class="smpl">language-tag</a> 2819 2760 </pre><p id="rfc.section.9.7.p.3">Language tags are defined in <a href="#language.tags" title="Language Tags">Section 5.6</a>. The primary purpose of Content-Language is to allow a user to identify and differentiate representations according to the 2820 2761 user's own preferred language. Thus, if the body content is intended only for a Danish-literate audience, the appropriate 2821 2762 field is 2822 2763 </p> 2823 <div id="rfc.figure.u. 40"></div><pre class="text"> Content-Language: da2764 <div id="rfc.figure.u.38"></div><pre class="text"> Content-Language: da 2824 2765 </pre><p id="rfc.section.9.7.p.5">If no Content-Language is specified, the default is that the content is intended for all language audiences. This might mean 2825 2766 that the sender does not consider it to be specific to any natural language, or that the sender does not know for which language … … 2829 2770 simultaneously in the original Maori and English versions, would call for 2830 2771 </p> 2831 <div id="rfc.figure.u. 41"></div><pre class="text"> Content-Language: mi, en2772 <div id="rfc.figure.u.39"></div><pre class="text"> Content-Language: mi, en 2832 2773 </pre><p id="rfc.section.9.7.p.8">However, just because multiple languages are present within a representation does not mean that it is intended for multiple 2833 2774 linguistic audiences. An example would be a beginner's language primer, such as "A First Lesson in Latin", which is clearly … … 2842 2783 message. In other words, if one were to perform a GET on this URI at the time of this message's generation, then a <a href="#status.200" class="smpl">200 (OK)</a> response would contain the same representation that is enclosed as payload in this message. 2843 2784 </p> 2844 <div id="rfc.figure.u.4 2"></div><pre class="inline"><span id="rfc.iref.g.43"></span> <a href="#header.content-location" class="smpl">Content-Location</a> = <a href="#abnf.dependencies" class="smpl">absolute-URI</a> / <a href="#abnf.dependencies" class="smpl">partial-URI</a>2845 </pre><p id="rfc.section.9.8.p.3">The Content-Location value is not a replacement for the effective Request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 5.5</a> of <a href="#Part1" id="rfc.xref.Part1. 49"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). It is representation metadata. It has the same syntax and semantics as the header field of the same name defined for MIME2785 <div id="rfc.figure.u.40"></div><pre class="inline"><span id="rfc.iref.g.43"></span> <a href="#header.content-location" class="smpl">Content-Location</a> = <a href="#abnf.dependencies" class="smpl">absolute-URI</a> / <a href="#abnf.dependencies" class="smpl">partial-URI</a> 2786 </pre><p id="rfc.section.9.8.p.3">The Content-Location value is not a replacement for the effective Request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 5.5</a> of <a href="#Part1" id="rfc.xref.Part1.35"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). It is representation metadata. It has the same syntax and semantics as the header field of the same name defined for MIME 2846 2787 body parts in <a href="http://tools.ietf.org/html/rfc2557#section-4">Section 4</a> of <a href="#RFC2557" id="rfc.xref.RFC2557.1"><cite title="MIME Encapsulation of Aggregate Documents, such as HTML (MHTML)">[RFC2557]</cite></a>. However, its appearance in an HTTP message has some special implications for HTTP recipients. 2847 2788 </p> … … 2882 2823 the media type is that which would have been sent had the request been a GET. 2883 2824 </p> 2884 <div id="rfc.figure.u.4 3"></div><pre class="inline"><span id="rfc.iref.g.44"></span> <a href="#header.content-type" class="smpl">Content-Type</a> = <a href="#media.types" class="smpl">media-type</a>2825 <div id="rfc.figure.u.41"></div><pre class="inline"><span id="rfc.iref.g.44"></span> <a href="#header.content-type" class="smpl">Content-Type</a> = <a href="#media.types" class="smpl">media-type</a> 2885 2826 </pre><p id="rfc.section.9.9.p.3">Media types are defined in <a href="#media.types" title="Media Types">Section 5.5</a>. An example of the field is 2886 2827 </p> 2887 <div id="rfc.figure.u.4 4"></div><pre class="text"> Content-Type: text/html; charset=ISO-8859-42828 <div id="rfc.figure.u.42"></div><pre class="text"> Content-Type: text/html; charset=ISO-8859-4 2888 2829 </pre><p id="rfc.section.9.9.p.5">Further discussion of Content-Type is provided in <a href="#representation.data" title="Representation Data">Section 7.3</a>. 2889 2830 </p> … … 2894 2835 Origination Date Field (orig-date) defined in <a href="http://tools.ietf.org/html/rfc5322#section-3.6.1">Section 3.6.1</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.2"><cite title="Internet Message Format">[RFC5322]</cite></a>. The field value is an HTTP-date, as defined in <a href="#http.date" title="Date/Time Formats">Section 5.1</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format. 2895 2836 </p> 2896 <div id="rfc.figure.u.4 5"></div><pre class="inline"><span id="rfc.iref.g.45"></span> <a href="#header.date" class="smpl">Date</a> = <a href="#http.date" class="smpl">HTTP-date</a>2837 <div id="rfc.figure.u.43"></div><pre class="inline"><span id="rfc.iref.g.45"></span> <a href="#header.date" class="smpl">Date</a> = <a href="#http.date" class="smpl">HTTP-date</a> 2897 2838 </pre><p id="rfc.section.9.10.p.3">An example is</p> 2898 <div id="rfc.figure.u.4 6"></div><pre class="text"> Date: Tue, 15 Nov 1994 08:12:31 GMT2839 <div id="rfc.figure.u.44"></div><pre class="text"> Date: Tue, 15 Nov 1994 08:12:31 GMT 2899 2840 </pre><p id="rfc.section.9.10.p.5">Origin servers <em class="bcp14">MUST</em> include a Date header field in all responses, except in these cases: 2900 2841 </p> … … 2922 2863 <h2 id="rfc.section.9.11"><a href="#rfc.section.9.11">9.11</a> <a id="header.expect" href="#header.expect">Expect</a></h2> 2923 2864 <p id="rfc.section.9.11.p.1">The "Expect" header field is used to indicate that particular server behaviors are required by the client.</p> 2924 <div id="rfc.figure.u.4 7"></div><pre class="inline"><span id="rfc.iref.g.46"></span><span id="rfc.iref.g.47"></span><span id="rfc.iref.g.48"></span><span id="rfc.iref.g.49"></span><span id="rfc.iref.g.50"></span> <a href="#header.expect" class="smpl">Expect</a> = 1#<a href="#header.expect" class="smpl">expectation</a>2865 <div id="rfc.figure.u.45"></div><pre class="inline"><span id="rfc.iref.g.46"></span><span id="rfc.iref.g.47"></span><span id="rfc.iref.g.48"></span><span id="rfc.iref.g.49"></span><span id="rfc.iref.g.50"></span> <a href="#header.expect" class="smpl">Expect</a> = 1#<a href="#header.expect" class="smpl">expectation</a> 2925 2866 2926 <a href="#header.expect" class="smpl">expectation</a> = <a href="#header.expect" class="smpl">expect-name</a> [ <a href="# core.rules" class="smpl">BWS</a> "=" <a href="#core.rules" class="smpl">BWS</a> <a href="#header.expect" class="smpl">expect-value</a> ]2927 *( <a href="# core.rules" class="smpl">OWS</a> ";" [ <a href="#core.rules" class="smpl">OWS</a> <a href="#header.expect" class="smpl">expect-param</a> ] )2928 <a href="#header.expect" class="smpl">expect-param</a> = <a href="#header.expect" class="smpl">expect-name</a> [ <a href="# core.rules" class="smpl">BWS</a> "=" <a href="#core.rules" class="smpl">BWS</a> <a href="#header.expect" class="smpl">expect-value</a> ]2867 <a href="#header.expect" class="smpl">expectation</a> = <a href="#header.expect" class="smpl">expect-name</a> [ <a href="#abnf.dependencies" class="smpl">BWS</a> "=" <a href="#abnf.dependencies" class="smpl">BWS</a> <a href="#header.expect" class="smpl">expect-value</a> ] 2868 *( <a href="#abnf.dependencies" class="smpl">OWS</a> ";" [ <a href="#abnf.dependencies" class="smpl">OWS</a> <a href="#header.expect" class="smpl">expect-param</a> ] ) 2869 <a href="#header.expect" class="smpl">expect-param</a> = <a href="#header.expect" class="smpl">expect-name</a> [ <a href="#abnf.dependencies" class="smpl">BWS</a> "=" <a href="#abnf.dependencies" class="smpl">BWS</a> <a href="#header.expect" class="smpl">expect-value</a> ] 2929 2870 2930 <a href="#header.expect" class="smpl">expect-name</a> = <a href="# core.rules" class="smpl">token</a>2931 <a href="#header.expect" class="smpl">expect-value</a> = <a href="# core.rules" class="smpl">token</a> / <a href="#core.rules" class="smpl">quoted-string</a>2871 <a href="#header.expect" class="smpl">expect-name</a> = <a href="#abnf.dependencies" class="smpl">token</a> 2872 <a href="#header.expect" class="smpl">expect-value</a> = <a href="#abnf.dependencies" class="smpl">token</a> / <a href="#abnf.dependencies" class="smpl">quoted-string</a> 2932 2873 </pre><p id="rfc.section.9.11.p.3">If all received Expect header field(s) are syntactically valid but contain an expectation that the recipient does not understand 2933 2874 or cannot comply with, the recipient <em class="bcp14">MUST</em> respond with a <a href="#status.417" class="smpl">417 (Expectation Failed)</a> status code. A recipient of a syntactically invalid Expectation header field <em class="bcp14">MUST</em> respond with a <a href="#status.4xx" class="smpl">4xx</a> status code other than 417. … … 2937 2878 </p> 2938 2879 <ul class="empty"> 2939 <li>The "100-continue" expectation is defined <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 6.4.3</a> of <a href="#Part1" id="rfc.xref.Part1. 50"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. It does not support any expect-params.2880 <li>The "100-continue" expectation is defined <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 6.4.3</a> of <a href="#Part1" id="rfc.xref.Part1.36"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. It does not support any expect-params. 2940 2881 </li> 2941 2882 </ul> … … 2950 2891 <p id="rfc.section.9.12.p.1">The "From" header field, if given, <em class="bcp14">SHOULD</em> contain an Internet e-mail address for the human user who controls the requesting user agent. The address <em class="bcp14">SHOULD</em> be machine-usable, as defined by "mailbox" in <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.3"><cite title="Internet Message Format">[RFC5322]</cite></a>: 2951 2892 </p> 2952 <div id="rfc.figure.u.4 8"></div><pre class="inline"><span id="rfc.iref.g.51"></span> <a href="#header.from" class="smpl">From</a> = <a href="#header.from" class="smpl">mailbox</a>2893 <div id="rfc.figure.u.46"></div><pre class="inline"><span id="rfc.iref.g.51"></span> <a href="#header.from" class="smpl">From</a> = <a href="#header.from" class="smpl">mailbox</a> 2953 2894 2954 2895 <a href="#header.from" class="smpl">mailbox</a> = <mailbox, defined in <a href="#RFC5322" id="rfc.xref.RFC5322.4"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a>> 2955 2896 </pre><p id="rfc.section.9.12.p.3">An example is:</p> 2956 <div id="rfc.figure.u.4 9"></div><pre class="text"> From: webmaster@example.org2897 <div id="rfc.figure.u.47"></div><pre class="text"> From: webmaster@example.org 2957 2898 </pre><p id="rfc.section.9.12.p.5">This header field <em class="bcp14">MAY</em> be used for logging purposes and as a means for identifying the source of invalid or unwanted requests. It <em class="bcp14">SHOULD NOT</em> be used as an insecure form of access protection. The interpretation of this field is that the request is being performed 2958 2899 on behalf of the person given, who accepts responsibility for the method performed. In particular, robot agents <em class="bcp14">SHOULD</em> include this header field so that the person responsible for running the robot can be contacted if problems occur on the receiving … … 2971 2912 <p id="rfc.section.9.13.p.1">The "Location" header field <em class="bcp14">MAY</em> be sent in responses to refer to a specific resource in accordance with the semantics of the status code. 2972 2913 </p> 2973 <div id="rfc.figure.u. 50"></div><pre class="inline"><span id="rfc.iref.g.52"></span> <a href="#header.location" class="smpl">Location</a> = <a href="#abnf.dependencies" class="smpl">URI-reference</a>2914 <div id="rfc.figure.u.48"></div><pre class="inline"><span id="rfc.iref.g.52"></span> <a href="#header.location" class="smpl">Location</a> = <a href="#abnf.dependencies" class="smpl">URI-reference</a> 2974 2915 </pre><p id="rfc.section.9.13.p.3">For <a href="#status.201" class="smpl">201 (Created)</a> responses, the Location is the URI of the new resource which was created by the request. For <a href="#status.3xx" class="smpl">3xx (Redirection)</a> responses, the location <em class="bcp14">SHOULD</em> indicate the server's preferred URI for automatic redirection to the resource. 2975 2916 </p> … … 2977 2918 then the original URI's fragment identifier is added to the final value. 2978 2919 </p> 2979 <div id="rfc.figure.u. 51"></div>2920 <div id="rfc.figure.u.49"></div> 2980 2921 <p>For example, the original URI "http://www.example.org/~tim", combined with a field value given as:</p> <pre class="text"> Location: /pub/WWW/People.html#tim 2981 2922 </pre> <p>would result in a final value of "http://www.example.org/pub/WWW/People.html#tim"</p> 2982 <div id="rfc.figure.u.5 2"></div>2923 <div id="rfc.figure.u.50"></div> 2983 2924 <p>An original URI "http://www.example.org/index.html#larry", combined with a field value given as:</p> <pre class="text"> Location: http://www.example.net/index.html 2984 2925 </pre> <p>would result in a final value of "http://www.example.net/index.html#larry", preserving the original fragment identifier.</p> 2985 2926 <div class="note" id="rfc.section.9.13.p.7"> 2986 2927 <p> <b>Note:</b> Some recipients attempt to recover from Location fields that are not valid URI references. This specification does not mandate 2987 or define such processing, but does allow it (see <a href="#intro.conformance.and.error.handling" title="Conformance and Error Handling">Section 1.2</a>).2928 or define such processing, but does allow it. 2988 2929 </p> 2989 2930 </div> … … 3003 2944 to trace a request which appears to be failing or looping mid-chain. 3004 2945 </p> 3005 <div id="rfc.figure.u.5 3"></div><pre class="inline"><span id="rfc.iref.g.53"></span> <a href="#header.max-forwards" class="smpl">Max-Forwards</a> = 1*<a href="#notation" class="smpl">DIGIT</a>2946 <div id="rfc.figure.u.51"></div><pre class="inline"><span id="rfc.iref.g.53"></span> <a href="#header.max-forwards" class="smpl">Max-Forwards</a> = 1*<a href="#abnf.dependencies" class="smpl">DIGIT</a> 3006 2947 </pre><p id="rfc.section.9.14.p.3">The Max-Forwards value is a decimal integer indicating the remaining number of times this request message can be forwarded.</p> 3007 2948 <p id="rfc.section.9.14.p.4">Each recipient of a TRACE or OPTIONS request containing a Max-Forwards header field <em class="bcp14">MUST</em> check and update its value prior to forwarding the request. If the received value is zero (0), the recipient <em class="bcp14">MUST NOT</em> forward the request; instead, it <em class="bcp14">MUST</em> respond as the final recipient. If the received Max-Forwards value is greater than zero, then the forwarded message <em class="bcp14">MUST</em> contain an updated Max-Forwards field with a value decremented by one (1). … … 3023 2964 non-HTTP URIs (e.g., FTP). 3024 2965 </p> 3025 <div id="rfc.figure.u.5 4"></div><pre class="inline"><span id="rfc.iref.g.54"></span> <a href="#header.referer" class="smpl">Referer</a> = <a href="#abnf.dependencies" class="smpl">absolute-URI</a> / <a href="#abnf.dependencies" class="smpl">partial-URI</a>2966 <div id="rfc.figure.u.52"></div><pre class="inline"><span id="rfc.iref.g.54"></span> <a href="#header.referer" class="smpl">Referer</a> = <a href="#abnf.dependencies" class="smpl">absolute-URI</a> / <a href="#abnf.dependencies" class="smpl">partial-URI</a> 3026 2967 </pre><p id="rfc.section.9.15.p.5">Example:</p> 3027 <div id="rfc.figure.u.5 5"></div><pre class="text"> Referer: http://www.example.org/hypertext/Overview.html3028 </pre><p id="rfc.section.9.15.p.7">If the field value is a relative URI, it <em class="bcp14">SHOULD</em> be interpreted relative to the effective request URI. The URI <em class="bcp14">MUST NOT</em> include a fragment. See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 1 1.2</a> for security considerations.2968 <div id="rfc.figure.u.53"></div><pre class="text"> Referer: http://www.example.org/hypertext/Overview.html 2969 </pre><p id="rfc.section.9.15.p.7">If the field value is a relative URI, it <em class="bcp14">SHOULD</em> be interpreted relative to the effective request URI. The URI <em class="bcp14">MUST NOT</em> include a fragment. See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 12.2</a> for security considerations. 3029 2970 </p> 3030 2971 <div id="rfc.iref.r.3"></div> … … 3035 2976 </p> 3036 2977 <p id="rfc.section.9.16.p.2">The value of this field can be either an HTTP-date or an integer number of seconds (in decimal) after the time of the response.</p> 3037 <div id="rfc.figure.u.5 6"></div><pre class="inline"><span id="rfc.iref.g.55"></span> <a href="#header.retry-after" class="smpl">Retry-After</a> = <a href="#http.date" class="smpl">HTTP-date</a> / <a href="#rule.delta-seconds" class="smpl">delta-seconds</a>2978 <div id="rfc.figure.u.54"></div><pre class="inline"><span id="rfc.iref.g.55"></span> <a href="#header.retry-after" class="smpl">Retry-After</a> = <a href="#http.date" class="smpl">HTTP-date</a> / <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> 3038 2979 </pre><div id="rule.delta-seconds"> 3039 2980 <p id="rfc.section.9.16.p.4"> Time spans are non-negative decimal integers, representing time in seconds.</p> 3040 2981 </div> 3041 <div id="rfc.figure.u.5 7"></div><pre class="inline"><span id="rfc.iref.g.56"></span> <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> = 1*<a href="#notation" class="smpl">DIGIT</a>2982 <div id="rfc.figure.u.55"></div><pre class="inline"><span id="rfc.iref.g.56"></span> <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> = 1*<a href="#abnf.dependencies" class="smpl">DIGIT</a> 3042 2983 </pre><p id="rfc.section.9.16.p.6">Two examples of its use are</p> 3043 <div id="rfc.figure.u.5 8"></div><pre class="text"> Retry-After: Fri, 31 Dec 1999 23:59:59 GMT2984 <div id="rfc.figure.u.56"></div><pre class="text"> Retry-After: Fri, 31 Dec 1999 23:59:59 GMT 3044 2985 Retry-After: 120 3045 2986 </pre><p id="rfc.section.9.16.p.8">In the latter example, the delay is 2 minutes.</p> … … 3048 2989 <h2 id="rfc.section.9.17"><a href="#rfc.section.9.17">9.17</a> <a id="header.server" href="#header.server">Server</a></h2> 3049 2990 <p id="rfc.section.9.17.p.1">The "Server" header field contains information about the software used by the origin server to handle the request.</p> 3050 <p id="rfc.section.9.17.p.2">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 5.2</a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1. 51"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) identifying the server and any significant subproducts. The product tokens are listed in order of their significance for2991 <p id="rfc.section.9.17.p.2">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 5.2</a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.37"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) identifying the server and any significant subproducts. The product tokens are listed in order of their significance for 3051 2992 identifying the application. 3052 2993 </p> 3053 <div id="rfc.figure.u.5 9"></div><pre class="inline"><span id="rfc.iref.g.57"></span> <a href="#header.server" class="smpl">Server</a> = <a href="#product.tokens" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#product.tokens" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) )2994 <div id="rfc.figure.u.57"></div><pre class="inline"><span id="rfc.iref.g.57"></span> <a href="#header.server" class="smpl">Server</a> = <a href="#product.tokens" class="smpl">product</a> *( <a href="#abnf.dependencies" class="smpl">RWS</a> ( <a href="#product.tokens" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) ) 3054 2995 </pre><p id="rfc.section.9.17.p.4">Example:</p> 3055 <div id="rfc.figure.u. 60"></div><pre class="text"> Server: CERN/3.0 libwww/2.173056 </pre><p id="rfc.section.9.17.p.6">If the response is being forwarded through a proxy, the proxy application <em class="bcp14">MUST NOT</em> modify the <a href="#header.server" class="smpl">Server</a> header field. Instead, it <em class="bcp14">MUST</em> include a <a href="p1-messaging.html#header.via" class="smpl">Via</a> field (as described in <a href="p1-messaging.html#header.via" title="Via">Section 6.2</a> of <a href="#Part1" id="rfc.xref.Part1. 52"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).2996 <div id="rfc.figure.u.58"></div><pre class="text"> Server: CERN/3.0 libwww/2.17 2997 </pre><p id="rfc.section.9.17.p.6">If the response is being forwarded through a proxy, the proxy application <em class="bcp14">MUST NOT</em> modify the <a href="#header.server" class="smpl">Server</a> header field. Instead, it <em class="bcp14">MUST</em> include a <a href="p1-messaging.html#header.via" class="smpl">Via</a> field (as described in <a href="p1-messaging.html#header.via" title="Via">Section 6.2</a> of <a href="#Part1" id="rfc.xref.Part1.38"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 3057 2998 </p> 3058 2999 <div class="note" id="rfc.section.9.17.p.7"> … … 3070 3011 user agent limitations. 3071 3012 </p> 3072 <p id="rfc.section.9.18.p.3">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 5.2</a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1. 53"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) identifying the agent and its significant subproducts. By convention, the product tokens are listed in order of their significance3013 <p id="rfc.section.9.18.p.3">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 5.2</a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.39"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) identifying the agent and its significant subproducts. By convention, the product tokens are listed in order of their significance 3073 3014 for identifying the application. 3074 3015 </p> … … 3081 3022 doing so makes the field value more difficult to parse. 3082 3023 </p> 3083 <div id="rfc.figure.u. 61"></div><pre class="inline"><span id="rfc.iref.g.58"></span> <a href="#header.user-agent" class="smpl">User-Agent</a> = <a href="#product.tokens" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#product.tokens" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) )3024 <div id="rfc.figure.u.59"></div><pre class="inline"><span id="rfc.iref.g.58"></span> <a href="#header.user-agent" class="smpl">User-Agent</a> = <a href="#product.tokens" class="smpl">product</a> *( <a href="#abnf.dependencies" class="smpl">RWS</a> ( <a href="#product.tokens" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) ) 3084 3025 </pre><p id="rfc.section.9.18.p.7">Example:</p> 3085 <div id="rfc.figure.u.6 2"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b33026 <div id="rfc.figure.u.60"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b3 3086 3027 </pre><h1 id="rfc.section.10"><a href="#rfc.section.10">10.</a> <a id="IANA.considerations" href="#IANA.considerations">IANA Considerations</a></h1> 3087 3028 <h2 id="rfc.section.10.1"><a href="#rfc.section.10.1">10.1</a> <a id="method.registration" href="#method.registration">Method Registry</a></h2> … … 3567 3508 <td class="left">compress</td> 3568 3509 <td class="left">UNIX "compress" program method</td> 3569 <td class="left"> <a href="p1-messaging.html#compress.coding" title="Compress Coding">Section 4.2.1</a> of <a href="#Part1" id="rfc.xref.Part1. 54"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>3510 <td class="left"> <a href="p1-messaging.html#compress.coding" title="Compress Coding">Section 4.2.1</a> of <a href="#Part1" id="rfc.xref.Part1.40"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> 3570 3511 </td> 3571 3512 </tr> … … 3574 3515 <td class="left">"deflate" compression mechanism (<a href="#RFC1951" id="rfc.xref.RFC1951.1"><cite title="DEFLATE Compressed Data Format Specification version 1.3">[RFC1951]</cite></a>) used inside the "zlib" data format (<a href="#RFC1950" id="rfc.xref.RFC1950.1"><cite title="ZLIB Compressed Data Format Specification version 3.3">[RFC1950]</cite></a>) 3575 3516 </td> 3576 <td class="left"> <a href="p1-messaging.html#deflate.coding" title="Deflate Coding">Section 4.2.2</a> of <a href="#Part1" id="rfc.xref.Part1. 55"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>3517 <td class="left"> <a href="p1-messaging.html#deflate.coding" title="Deflate Coding">Section 4.2.2</a> of <a href="#Part1" id="rfc.xref.Part1.41"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> 3577 3518 </td> 3578 3519 </tr> … … 3580 3521 <td class="left">gzip</td> 3581 3522 <td class="left">Same as GNU zip <a href="#RFC1952" id="rfc.xref.RFC1952.1"><cite title="GZIP file format specification version 4.3">[RFC1952]</cite></a></td> 3582 <td class="left"> <a href="p1-messaging.html#gzip.coding" title="Gzip Coding">Section 4.2.3</a> of <a href="#Part1" id="rfc.xref.Part1. 56"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>3523 <td class="left"> <a href="p1-messaging.html#gzip.coding" title="Gzip Coding">Section 4.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.42"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> 3583 3524 </td> 3584 3525 </tr> … … 3593 3534 </table> 3594 3535 </div> 3595 <h1 id="rfc.section.11"><a href="#rfc.section.11">11.</a> <a id="security.considerations" href="#security.considerations">Security Considerations</a></h1> 3596 <p id="rfc.section.11.p.1">This section is meant to inform application developers, information providers, and users of the security limitations in HTTP/1.1 3536 <h1 id="rfc.section.11"><a href="#rfc.section.11">11.</a> <a id="abnf.dependencies" href="#abnf.dependencies">ABNF Rules Defined Elsewhere</a></h1> 3537 <p id="rfc.section.11.p.1">This specification uses the Augmented Backus-Naur Form (ABNF) notation of <a href="#RFC5234" id="rfc.xref.RFC5234.2"><cite title="Augmented BNF for Syntax Specifications: ABNF">[RFC5234]</cite></a> with the list rule extension defined in <a href="p1-messaging.html#notation" title="Syntax Notation">Section 1.2</a> of <a href="#Part1" id="rfc.xref.Part1.43"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. <a href="#collected.abnf" title="Collected ABNF">Appendix D</a> shows the collected ABNF with the list rule expanded. 3538 </p> 3539 <p id="rfc.section.11.p.2">The following core rules are included by reference, as defined in <a href="#RFC5234" id="rfc.xref.RFC5234.3"><cite title="Augmented BNF for Syntax Specifications: ABNF">[RFC5234]</cite></a>, <a href="http://tools.ietf.org/html/rfc5234#appendix-B.1">Appendix B.1</a>: ALPHA (letters), CR (carriage return), CRLF (CR LF), CTL (controls), DIGIT (decimal 0-9), DQUOTE (double quote), HEXDIG 3540 (hexadecimal 0-9/A-F/a-f), HTAB (horizontal tab), LF (line feed), OCTET (any 8-bit sequence of data), SP (space), and VCHAR 3541 (any visible US-ASCII character). 3542 </p> 3543 <p id="rfc.section.11.p.3">The ABNF rules below are defined in other parts:</p> 3544 <div id="rfc.figure.u.61"></div><pre class="inline"> <a href="#abnf.dependencies" class="smpl">BWS</a> = <BWS, defined in <a href="#Part1" id="rfc.xref.Part1.44"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#whitespace" title="Whitespace">Section 3.2.1</a>> 3545 <a href="#abnf.dependencies" class="smpl">OWS</a> = <OWS, defined in <a href="#Part1" id="rfc.xref.Part1.45"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#whitespace" title="Whitespace">Section 3.2.1</a>> 3546 <a href="#abnf.dependencies" class="smpl">RWS</a> = <RWS, defined in <a href="#Part1" id="rfc.xref.Part1.46"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#whitespace" title="Whitespace">Section 3.2.1</a>> 3547 <a href="#abnf.dependencies" class="smpl">URI-reference</a> = <URI-reference, defined in <a href="#Part1" id="rfc.xref.Part1.47"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.8</a>> 3548 <a href="#abnf.dependencies" class="smpl">absolute-URI</a> = <absolute-URI, defined in <a href="#Part1" id="rfc.xref.Part1.48"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.8</a>> 3549 <a href="#abnf.dependencies" class="smpl">partial-URI</a> = <partial-URI, defined in <a href="#Part1" id="rfc.xref.Part1.49"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.8</a>> 3550 <a href="#abnf.dependencies" class="smpl">quoted-string</a> = <quoted-string, defined in <a href="#Part1" id="rfc.xref.Part1.50"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#field.components" title="Field value components">Section 3.2.4</a>> 3551 <a href="#abnf.dependencies" class="smpl">qvalue</a> = <qvalue, defined in <a href="#Part1" id="rfc.xref.Part1.51"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#quality.values" title="Quality Values">Section 4.3.1</a>> 3552 <a href="#abnf.dependencies" class="smpl">token</a> = <token, defined in <a href="#Part1" id="rfc.xref.Part1.52"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#field.components" title="Field value components">Section 3.2.4</a>> 3553 <a href="#abnf.dependencies" class="smpl">word</a> = <word, defined in <a href="#Part1" id="rfc.xref.Part1.53"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#field.components" title="Field value components">Section 3.2.4</a>> 3554 <a href="#abnf.dependencies" class="smpl">comment</a> = <comment, defined in <a href="#Part1" id="rfc.xref.Part1.54"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, <a href="p1-messaging.html#field.components" title="Field value components">Section 3.2.4</a>> 3555 </pre><h1 id="rfc.section.12"><a href="#rfc.section.12">12.</a> <a id="security.considerations" href="#security.considerations">Security Considerations</a></h1> 3556 <p id="rfc.section.12.p.1">This section is meant to inform application developers, information providers, and users of the security limitations in HTTP/1.1 3597 3557 as described by this document. The discussion does not include definitive solutions to the problems revealed, though it does 3598 3558 make some suggestions for reducing security risks. 3599 3559 </p> 3600 <h2 id="rfc.section.1 1.1"><a href="#rfc.section.11.1">11.1</a> <a id="security.sensitive" href="#security.sensitive">Transfer of Sensitive Information</a></h2>3601 <p id="rfc.section.1 1.1.p.1">Like any generic data transfer protocol, HTTP cannot regulate the content of the data that is transferred, nor is there any3560 <h2 id="rfc.section.12.1"><a href="#rfc.section.12.1">12.1</a> <a id="security.sensitive" href="#security.sensitive">Transfer of Sensitive Information</a></h2> 3561 <p id="rfc.section.12.1.p.1">Like any generic data transfer protocol, HTTP cannot regulate the content of the data that is transferred, nor is there any 3602 3562 a priori method of determining the sensitivity of any particular piece of information within the context of any given request. 3603 3563 Therefore, applications <em class="bcp14">SHOULD</em> supply as much control over this information as possible to the provider of that information. Four header fields are worth 3604 3564 special mention in this context: <a href="#header.server" class="smpl">Server</a>, <a href="p1-messaging.html#header.via" class="smpl">Via</a>, <a href="#header.referer" class="smpl">Referer</a> and <a href="#header.from" class="smpl">From</a>. 3605 3565 </p> 3606 <p id="rfc.section.1 1.1.p.2">Revealing the specific software version of the server might allow the server machine to become more vulnerable to attacks3566 <p id="rfc.section.12.1.p.2">Revealing the specific software version of the server might allow the server machine to become more vulnerable to attacks 3607 3567 against software that is known to contain security holes. Implementers <em class="bcp14">SHOULD</em> make the <a href="#header.server" class="smpl">Server</a> header field a configurable option. 3608 3568 </p> 3609 <p id="rfc.section.1 1.1.p.3">Proxies which serve as a portal through a network firewall <em class="bcp14">SHOULD</em> take special precautions regarding the transfer of header information that identifies the hosts behind the firewall. In particular,3569 <p id="rfc.section.12.1.p.3">Proxies which serve as a portal through a network firewall <em class="bcp14">SHOULD</em> take special precautions regarding the transfer of header information that identifies the hosts behind the firewall. In particular, 3610 3570 they <em class="bcp14">SHOULD</em> remove, or replace with sanitized versions, any <a href="p1-messaging.html#header.via" class="smpl">Via</a> fields generated behind the firewall. 3611 3571 </p> 3612 <p id="rfc.section.1 1.1.p.4">The <a href="#header.referer" class="smpl">Referer</a> header field allows reading patterns to be studied and reverse links drawn. Although it can be very useful, its power can3572 <p id="rfc.section.12.1.p.4">The <a href="#header.referer" class="smpl">Referer</a> header field allows reading patterns to be studied and reverse links drawn. Although it can be very useful, its power can 3613 3573 be abused if user details are not separated from the information contained in the Referer. Even when the personal information 3614 3574 has been removed, the Referer header field might indicate a private document's URI whose publication would be inappropriate. 3615 3575 </p> 3616 <p id="rfc.section.1 1.1.p.5">The information sent in the <a href="#header.from" class="smpl">From</a> field might conflict with the user's privacy interests or their site's security policy, and hence it <em class="bcp14">SHOULD NOT</em> be transmitted without the user being able to disable, enable, and modify the contents of the field. The user <em class="bcp14">MUST</em> be able to set the contents of this field within a user preference or application defaults configuration.3617 </p> 3618 <p id="rfc.section.1 1.1.p.6">We suggest, though do not require, that a convenient toggle interface be provided for the user to enable or disable the sending3576 <p id="rfc.section.12.1.p.5">The information sent in the <a href="#header.from" class="smpl">From</a> field might conflict with the user's privacy interests or their site's security policy, and hence it <em class="bcp14">SHOULD NOT</em> be transmitted without the user being able to disable, enable, and modify the contents of the field. The user <em class="bcp14">MUST</em> be able to set the contents of this field within a user preference or application defaults configuration. 3577 </p> 3578 <p id="rfc.section.12.1.p.6">We suggest, though do not require, that a convenient toggle interface be provided for the user to enable or disable the sending 3619 3579 of <a href="#header.from" class="smpl">From</a> and <a href="#header.referer" class="smpl">Referer</a> information. 3620 3580 </p> 3621 <p id="rfc.section.1 1.1.p.7">The <a href="#header.user-agent" class="smpl">User-Agent</a> (<a href="#header.user-agent" id="rfc.xref.header.user-agent.4" title="User-Agent">Section 9.18</a>) or <a href="#header.server" class="smpl">Server</a> (<a href="#header.server" id="rfc.xref.header.server.3" title="Server">Section 9.17</a>) header fields can sometimes be used to determine that a specific client or server has a particular security hole which might3581 <p id="rfc.section.12.1.p.7">The <a href="#header.user-agent" class="smpl">User-Agent</a> (<a href="#header.user-agent" id="rfc.xref.header.user-agent.4" title="User-Agent">Section 9.18</a>) or <a href="#header.server" class="smpl">Server</a> (<a href="#header.server" id="rfc.xref.header.server.3" title="Server">Section 9.17</a>) header fields can sometimes be used to determine that a specific client or server has a particular security hole which might 3622 3582 be exploited. Unfortunately, this same information is often used for other valuable purposes for which HTTP currently has 3623 3583 no better mechanism. 3624 3584 </p> 3625 <p id="rfc.section.1 1.1.p.8">Furthermore, the <a href="#header.user-agent" class="smpl">User-Agent</a> header field might contain enough entropy to be used, possibly in conjunction with other material, to uniquely identify the3585 <p id="rfc.section.12.1.p.8">Furthermore, the <a href="#header.user-agent" class="smpl">User-Agent</a> header field might contain enough entropy to be used, possibly in conjunction with other material, to uniquely identify the 3626 3586 user. 3627 3587 </p> 3628 <p id="rfc.section.1 1.1.p.9">Some request methods, like TRACE (<a href="#TRACE" id="rfc.xref.TRACE.3" title="TRACE">Section 2.3.7</a>), expose information that was sent in request header fields within the body of their response. Clients <em class="bcp14">SHOULD</em> be careful with sensitive information, like Cookies, Authorization credentials, and other header fields that might be used3588 <p id="rfc.section.12.1.p.9">Some request methods, like TRACE (<a href="#TRACE" id="rfc.xref.TRACE.3" title="TRACE">Section 2.3.7</a>), expose information that was sent in request header fields within the body of their response. Clients <em class="bcp14">SHOULD</em> be careful with sensitive information, like Cookies, Authorization credentials, and other header fields that might be used 3629 3589 to collect data from the client. 3630 3590 </p> 3631 <h2 id="rfc.section.1 1.2"><a href="#rfc.section.11.2">11.2</a> <a id="encoding.sensitive.information.in.uris" href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></h2>3632 <p id="rfc.section.1 1.2.p.1">Because the source of a link might be private information or might reveal an otherwise private information source, it is strongly3591 <h2 id="rfc.section.12.2"><a href="#rfc.section.12.2">12.2</a> <a id="encoding.sensitive.information.in.uris" href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></h2> 3592 <p id="rfc.section.12.2.p.1">Because the source of a link might be private information or might reveal an otherwise private information source, it is strongly 3633 3593 recommended that the user be able to select whether or not the <a href="#header.referer" class="smpl">Referer</a> field is sent. For example, a browser client could have a toggle switch for browsing openly/anonymously, which would respectively 3634 3594 enable/disable the sending of Referer and From information. 3635 3595 </p> 3636 <p id="rfc.section.1 1.2.p.2">Clients <em class="bcp14">SHOULD NOT</em> include a <a href="#header.referer" class="smpl">Referer</a> header field in a (non-secure) HTTP request if the referring page was transferred with a secure protocol.3637 </p> 3638 <p id="rfc.section.1 1.2.p.3">Authors of services <em class="bcp14">SHOULD NOT</em> use GET-based forms for the submission of sensitive data because that data will be placed in the request-target. Many existing3596 <p id="rfc.section.12.2.p.2">Clients <em class="bcp14">SHOULD NOT</em> include a <a href="#header.referer" class="smpl">Referer</a> header field in a (non-secure) HTTP request if the referring page was transferred with a secure protocol. 3597 </p> 3598 <p id="rfc.section.12.2.p.3">Authors of services <em class="bcp14">SHOULD NOT</em> use GET-based forms for the submission of sensitive data because that data will be placed in the request-target. Many existing 3639 3599 servers, proxies, and user agents log or display the request-target in places where it might be visible to third parties. 3640 3600 Such services can use POST-based form submission instead. 3641 3601 </p> 3642 <h2 id="rfc.section.1 1.3"><a href="#rfc.section.11.3">11.3</a> <a id="location.spoofing-leakage" href="#location.spoofing-leakage">Location Header Fields: Spoofing and Information Leakage</a></h2>3643 <p id="rfc.section.1 1.3.p.1">If a single server supports multiple organizations that do not trust one another, then it <em class="bcp14">MUST</em> check the values of <a href="#header.location" class="smpl">Location</a> and <a href="#header.content-location" class="smpl">Content-Location</a> header fields in responses that are generated under control of said organizations to make sure that they do not attempt to3602 <h2 id="rfc.section.12.3"><a href="#rfc.section.12.3">12.3</a> <a id="location.spoofing-leakage" href="#location.spoofing-leakage">Location Header Fields: Spoofing and Information Leakage</a></h2> 3603 <p id="rfc.section.12.3.p.1">If a single server supports multiple organizations that do not trust one another, then it <em class="bcp14">MUST</em> check the values of <a href="#header.location" class="smpl">Location</a> and <a href="#header.content-location" class="smpl">Content-Location</a> header fields in responses that are generated under control of said organizations to make sure that they do not attempt to 3644 3604 invalidate resources over which they have no authority. 3645 3605 </p> 3646 <p id="rfc.section.1 1.3.p.2">Furthermore, appending the fragment identifier from one URI to another one obtained from a <a href="#header.location" class="smpl">Location</a> header field might leak confidential information to the target server — although the fragment identifier is not transmitted3606 <p id="rfc.section.12.3.p.2">Furthermore, appending the fragment identifier from one URI to another one obtained from a <a href="#header.location" class="smpl">Location</a> header field might leak confidential information to the target server — although the fragment identifier is not transmitted 3647 3607 in the final request, it might be visible to the user agent through other means, such as scripting. 3648 3608 </p> 3649 <h2 id="rfc.section.1 1.4"><a href="#rfc.section.11.4">11.4</a> Security Considerations for CONNECT3609 <h2 id="rfc.section.12.4"><a href="#rfc.section.12.4">12.4</a> Security Considerations for CONNECT 3650 3610 </h2> 3651 <p id="rfc.section.1 1.4.p.1">Since tunneled data is opaque to the proxy, there are additional risks to tunneling to other well-known or reserved ports.3611 <p id="rfc.section.12.4.p.1">Since tunneled data is opaque to the proxy, there are additional risks to tunneling to other well-known or reserved ports. 3652 3612 A HTTP client CONNECTing to port 25 could relay spam via SMTP, for example. As such, proxies <em class="bcp14">SHOULD</em> restrict CONNECT access to a small number of known ports. 3653 3613 </p> 3654 <h2 id="rfc.section.1 1.5"><a href="#rfc.section.11.5">11.5</a> <a id="privacy.issues.connected.to.accept.header.fields" href="#privacy.issues.connected.to.accept.header.fields">Privacy Issues Connected to Accept Header Fields</a></h2>3655 <p id="rfc.section.1 1.5.p.1">Accept header fields can reveal information about the user to all servers which are accessed. The <a href="#header.accept-language" class="smpl">Accept-Language</a> header field in particular can reveal information the user would consider to be of a private nature, because the understanding3614 <h2 id="rfc.section.12.5"><a href="#rfc.section.12.5">12.5</a> <a id="privacy.issues.connected.to.accept.header.fields" href="#privacy.issues.connected.to.accept.header.fields">Privacy Issues Connected to Accept Header Fields</a></h2> 3615 <p id="rfc.section.12.5.p.1">Accept header fields can reveal information about the user to all servers which are accessed. The <a href="#header.accept-language" class="smpl">Accept-Language</a> header field in particular can reveal information the user would consider to be of a private nature, because the understanding 3656 3616 of particular languages is often strongly correlated to the membership of a particular ethnic group. User agents which offer 3657 3617 the option to configure the contents of an Accept-Language header field to be sent in every request are strongly encouraged 3658 3618 to let the configuration process include a message which makes the user aware of the loss of privacy involved. 3659 3619 </p> 3660 <p id="rfc.section.1 1.5.p.2">An approach that limits the loss of privacy would be for a user agent to omit the sending of Accept-Language header fields3620 <p id="rfc.section.12.5.p.2">An approach that limits the loss of privacy would be for a user agent to omit the sending of Accept-Language header fields 3661 3621 by default, and to ask the user whether or not to start sending Accept-Language header fields to a server if it detects, by 3662 3622 looking for any <a href="p6-cache.html#header.vary" class="smpl">Vary</a> header fields generated by the server, that such sending could improve the quality of service. 3663 3623 </p> 3664 <p id="rfc.section.1 1.5.p.3">Elaborate user-customized accept header fields sent in every request, in particular if these include quality values, can be3624 <p id="rfc.section.12.5.p.3">Elaborate user-customized accept header fields sent in every request, in particular if these include quality values, can be 3665 3625 used by servers as relatively reliable and long-lived user identifiers. Such user identifiers would allow content providers 3666 3626 to do click-trail tracking, and would allow collaborating content providers to match cross-server click-trails or form submissions … … 3671 3631 field configurability <em class="bcp14">SHOULD</em> warn users about the loss of privacy which can be involved. 3672 3632 </p> 3673 <h1 id="rfc.section.1 2"><a href="#rfc.section.12">12.</a> <a id="acks" href="#acks">Acknowledgments</a></h1>3674 <p id="rfc.section.1 2.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 9</a> of <a href="#Part1" id="rfc.xref.Part1.57"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.3675 </p> 3676 <h1 id="rfc.references"><a id="rfc.section.1 3" href="#rfc.section.13">13.</a> References3633 <h1 id="rfc.section.13"><a href="#rfc.section.13">13.</a> <a id="acks" href="#acks">Acknowledgments</a></h1> 3634 <p id="rfc.section.13.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 9</a> of <a href="#Part1" id="rfc.xref.Part1.55"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 3635 </p> 3636 <h1 id="rfc.references"><a id="rfc.section.14" href="#rfc.section.14">14.</a> References 3677 3637 </h1> 3678 <h2 id="rfc.references.1"><a href="#rfc.section.1 3.1" id="rfc.section.13.1">13.1</a> Normative References3638 <h2 id="rfc.references.1"><a href="#rfc.section.14.1" id="rfc.section.14.1">14.1</a> Normative References 3679 3639 </h2> 3680 3640 <table> … … 3730 3690 </tr> 3731 3691 <tr> 3732 <td class="reference"><b id="RFC2119">[RFC2119]</b></td>3733 <td class="top"><a href="mailto:sob@harvard.edu" title="Harvard University">Bradner, S.</a>, “<a href="http://tools.ietf.org/html/rfc2119">Key words for use in RFCs to Indicate Requirement Levels</a>”, BCP 14, RFC 2119, March 1997.3734 </td>3735 </tr>3736 <tr>3737 3692 <td class="reference"><b id="RFC3986">[RFC3986]</b></td> 3738 3693 <td class="top"><a href="mailto:timbl@w3.org" title="World Wide Web Consortium">Berners-Lee, T.</a>, <a href="mailto:fielding@gbiv.com" title="Day Software">Fielding, R.</a>, and <a href="mailto:LMM@acm.org" title="Adobe Systems Incorporated">L. Masinter</a>, “<a href="http://tools.ietf.org/html/rfc3986">Uniform Resource Identifier (URI): Generic Syntax</a>”, STD 66, RFC 3986, January 2005. … … 3755 3710 </tr> 3756 3711 </table> 3757 <h2 id="rfc.references.2"><a href="#rfc.section.1 3.2" id="rfc.section.13.2">13.2</a> Informative References3712 <h2 id="rfc.references.2"><a href="#rfc.section.14.2" id="rfc.section.14.2">14.2</a> Informative References 3758 3713 </h2> 3759 3714 <table> … … 3893 3848 MIME environments. 3894 3849 </p> 3895 <div id="rfc.figure.u.6 3"></div><pre class="inline"><span id="rfc.iref.g.59"></span> <a href="#mime-version" class="smpl">MIME-Version</a> = 1*<a href="#notation" class="smpl">DIGIT</a> "." 1*<a href="#notation" class="smpl">DIGIT</a>3850 <div id="rfc.figure.u.62"></div><pre class="inline"><span id="rfc.iref.g.59"></span> <a href="#mime-version" class="smpl">MIME-Version</a> = 1*<a href="#abnf.dependencies" class="smpl">DIGIT</a> "." 1*<a href="#abnf.dependencies" class="smpl">DIGIT</a> 3896 3851 </pre><p id="rfc.section.A.1.p.3">MIME version "1.0" is the default for use in HTTP/1.1. However, HTTP/1.1 message parsing and semantics are defined by this 3897 3852 document and not the MIME specification. … … 3980 3935 <p id="rfc.section.C.p.16">Allow <a href="#header.referer" class="smpl">Referer</a> field value of "about:blank" as alternative to not specifying it. (<a href="#header.referer" id="rfc.xref.header.referer.3" title="Referer">Section 9.15</a>) 3981 3936 </p> 3982 <p id="rfc.section.C.p.17">In the description of the <a href="#header.server" class="smpl">Server</a> header field, the <a href="p1-messaging.html#header.via" class="smpl">Via</a> field was described as a SHOULD. The requirement was and is stated correctly in the description of the Via header field in <a href="p1-messaging.html#header.via" title="Via">Section 6.2</a> of <a href="#Part1" id="rfc.xref.Part1.5 8"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. (<a href="#header.server" id="rfc.xref.header.server.4" title="Server">Section 9.17</a>)3937 <p id="rfc.section.C.p.17">In the description of the <a href="#header.server" class="smpl">Server</a> header field, the <a href="p1-messaging.html#header.via" class="smpl">Via</a> field was described as a SHOULD. The requirement was and is stated correctly in the description of the Via header field in <a href="p1-messaging.html#header.via" title="Via">Section 6.2</a> of <a href="#Part1" id="rfc.xref.Part1.56"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. (<a href="#header.server" id="rfc.xref.header.server.4" title="Server">Section 9.17</a>) 3983 3938 </p> 3984 3939 <p id="rfc.section.C.p.18">Clarify contexts that charset is used in. (<a href="#character.sets" title="Character Encodings (charset)">Section 5.3</a>) … … 4004 3959 </p> 4005 3960 <h1 id="rfc.section.D"><a href="#rfc.section.D">D.</a> <a id="collected.abnf" href="#collected.abnf">Collected ABNF</a></h1> 4006 <div id="rfc.figure.u.6 4"></div> <pre class="inline"><a href="#header.accept" class="smpl">Accept</a> = [ ( "," / ( media-range [ accept-params ] ) ) *( OWS "," [3961 <div id="rfc.figure.u.63"></div> <pre class="inline"><a href="#header.accept" class="smpl">Accept</a> = [ ( "," / ( media-range [ accept-params ] ) ) *( OWS "," [ 4007 3962 OWS ( media-range [ accept-params ] ) ] ) ] 4008 3963 <a href="#header.accept-charset" class="smpl">Accept-Charset</a> = *( "," OWS ) ( ( charset / "*" ) [ OWS ";" OWS "q=" … … 4016 3971 <a href="#header.allow" class="smpl">Allow</a> = [ ( "," / method ) *( OWS "," [ OWS method ] ) ] 4017 3972 4018 <a href="# core.rules" class="smpl">BWS</a> = <BWS, defined in [Part1], Section 3.2.1>3973 <a href="#abnf.dependencies" class="smpl">BWS</a> = <BWS, defined in [Part1], Section 3.2.1> 4019 3974 4020 3975 <a href="#header.content-encoding" class="smpl">Content-Encoding</a> = *( "," OWS ) content-coding *( OWS "," [ OWS … … 4040 3995 <a href="#header.max-forwards" class="smpl">Max-Forwards</a> = 1*DIGIT 4041 3996 4042 <a href="# core.rules" class="smpl">OWS</a> = <OWS, defined in [Part1], Section 3.2.1>3997 <a href="#abnf.dependencies" class="smpl">OWS</a> = <OWS, defined in [Part1], Section 3.2.1> 4043 3998 4044 <a href="# core.rules" class="smpl">RWS</a> = <RWS, defined in [Part1], Section 3.2.1>3999 <a href="#abnf.dependencies" class="smpl">RWS</a> = <RWS, defined in [Part1], Section 3.2.1> 4045 4000 <a href="#header.referer" class="smpl">Referer</a> = absolute-URI / partial-URI 4046 4001 <a href="#header.retry-after" class="smpl">Retry-After</a> = HTTP-date / delta-seconds … … 4119 4074 <a href="#product.tokens" class="smpl">product-version</a> = token 4120 4075 4121 <a href="# core.rules" class="smpl">quoted-string</a> = <quoted-string, defined in [Part1], Section 3.2.4>4076 <a href="#abnf.dependencies" class="smpl">quoted-string</a> = <quoted-string, defined in [Part1], Section 3.2.4> 4122 4077 <a href="#abnf.dependencies" class="smpl">qvalue</a> = <qvalue, defined in [Part1], Section 4.3.1> 4123 4078 … … 4129 4084 4130 4085 <a href="#preferred.date.format" class="smpl">time-of-day</a> = hour ":" minute ":" second 4131 <a href="# core.rules" class="smpl">token</a> = <token, defined in [Part1], Section 3.2.4>4086 <a href="#abnf.dependencies" class="smpl">token</a> = <token, defined in [Part1], Section 3.2.4> 4132 4087 <a href="#media.types" class="smpl">type</a> = token 4133 4088 4134 4089 <a href="#rule.parameter" class="smpl">value</a> = word 4135 4090 4136 <a href="# core.rules" class="smpl">word</a> = <word, defined in [Part1], Section 3.2.4>4091 <a href="#abnf.dependencies" class="smpl">word</a> = <word, defined in [Part1], Section 3.2.4> 4137 4092 4138 4093 <a href="#preferred.date.format" class="smpl">year</a> = 4DIGIT … … 4707 4662 <ul class="ind"> 4708 4663 <li><a id="rfc.index.1" href="#rfc.index.1"><b>1</b></a><ul> 4709 <li>100 Continue (status code) <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.2 2"><b>4.3.1</b></a>, <a href="#rfc.xref.status.100.2">10.2</a></li>4664 <li>100 Continue (status code) <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.21"><b>4.3.1</b></a>, <a href="#rfc.xref.status.100.2">10.2</a></li> 4710 4665 <li>100-continue (expect value) <a href="#rfc.iref.139"><b>9.11</b></a></li> 4711 <li>101 Switching Protocols (status code) <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.2 3"><b>4.3.2</b></a>, <a href="#rfc.xref.status.101.2">10.2</a></li>4712 <li>1xx Informational (status code class) <a href="#rfc.iref.2 1"><b>4.3</b></a></li>4666 <li>101 Switching Protocols (status code) <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.22"><b>4.3.2</b></a>, <a href="#rfc.xref.status.101.2">10.2</a></li> 4667 <li>1xx Informational (status code class) <a href="#rfc.iref.20"><b>4.3</b></a></li> 4713 4668 </ul> 4714 4669 </li> 4715 4670 <li><a id="rfc.index.2" href="#rfc.index.2"><b>2</b></a><ul> 4716 <li>200 OK (status code) <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.2 5"><b>4.4.1</b></a>, <a href="#rfc.xref.status.200.2">10.2</a></li>4717 <li>201 Created (status code) <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.2 6"><b>4.4.2</b></a>, <a href="#rfc.xref.status.201.2">10.2</a></li>4718 <li>202 Accepted (status code) <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.2 7"><b>4.4.3</b></a>, <a href="#rfc.xref.status.202.2">10.2</a></li>4719 <li>203 Non-Authoritative Information (status code) <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.2 8"><b>4.4.4</b></a>, <a href="#rfc.xref.status.203.2">10.2</a>, <a href="#rfc.xref.status.203.3">C</a></li>4720 <li>204 No Content (status code) <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.2 9"><b>4.4.5</b></a>, <a href="#rfc.xref.status.204.2">10.2</a></li>4721 <li>205 Reset Content (status code) <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref. 30"><b>4.4.6</b></a>, <a href="#rfc.xref.status.205.2">10.2</a></li>4722 <li>2xx Successful (status code class) <a href="#rfc.iref.2 4"><b>4.4</b></a></li>4671 <li>200 OK (status code) <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.24"><b>4.4.1</b></a>, <a href="#rfc.xref.status.200.2">10.2</a></li> 4672 <li>201 Created (status code) <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.25"><b>4.4.2</b></a>, <a href="#rfc.xref.status.201.2">10.2</a></li> 4673 <li>202 Accepted (status code) <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.26"><b>4.4.3</b></a>, <a href="#rfc.xref.status.202.2">10.2</a></li> 4674 <li>203 Non-Authoritative Information (status code) <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.27"><b>4.4.4</b></a>, <a href="#rfc.xref.status.203.2">10.2</a>, <a href="#rfc.xref.status.203.3">C</a></li> 4675 <li>204 No Content (status code) <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.28"><b>4.4.5</b></a>, <a href="#rfc.xref.status.204.2">10.2</a></li> 4676 <li>205 Reset Content (status code) <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.29"><b>4.4.6</b></a>, <a href="#rfc.xref.status.205.2">10.2</a></li> 4677 <li>2xx Successful (status code class) <a href="#rfc.iref.23"><b>4.4</b></a></li> 4723 4678 </ul> 4724 4679 </li> 4725 4680 <li><a id="rfc.index.3" href="#rfc.index.3"><b>3</b></a><ul> 4726 <li>300 Multiple Choices (status code) <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.3 2"><b>4.5.1</b></a>, <a href="#rfc.xref.status.300.2">10.2</a></li>4727 <li>301 Moved Permanently (status code) <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.3 3"><b>4.5.2</b></a>, <a href="#rfc.xref.status.301.2">10.2</a>, <a href="#rfc.xref.status.301.3">C</a></li>4728 <li>302 Found (status code) <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.3 4"><b>4.5.3</b></a>, <a href="#rfc.xref.status.302.2">10.2</a>, <a href="#rfc.xref.status.302.3">C</a></li>4729 <li>303 See Other (status code) <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.iref.3 5"><b>4.5.4</b></a>, <a href="#rfc.xref.status.303.2">10.2</a></li>4730 <li>305 Use Proxy (status code) <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.3 6"><b>4.5.5</b></a>, <a href="#rfc.xref.status.305.2">10.2</a>, <a href="#rfc.xref.status.305.3">C</a></li>4731 <li>306 (Unused) (status code) <a href="#rfc.iref.3 7"><b>4.5.6</b></a>, <a href="#rfc.xref.status.306.1">10.2</a></li>4732 <li>307 Temporary Redirect (status code) <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.iref.3 8"><b>4.5.7</b></a>, <a href="#rfc.xref.status.307.2">10.2</a>, <a href="#rfc.xref.status.307.3">C</a></li>4733 <li>3xx Redirection (status code class) <a href="#rfc.iref.3 1"><b>4.5</b></a>, <a href="#rfc.xref.status.3xx.1">C</a></li>4681 <li>300 Multiple Choices (status code) <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.31"><b>4.5.1</b></a>, <a href="#rfc.xref.status.300.2">10.2</a></li> 4682 <li>301 Moved Permanently (status code) <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.32"><b>4.5.2</b></a>, <a href="#rfc.xref.status.301.2">10.2</a>, <a href="#rfc.xref.status.301.3">C</a></li> 4683 <li>302 Found (status code) <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.33"><b>4.5.3</b></a>, <a href="#rfc.xref.status.302.2">10.2</a>, <a href="#rfc.xref.status.302.3">C</a></li> 4684 <li>303 See Other (status code) <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.iref.34"><b>4.5.4</b></a>, <a href="#rfc.xref.status.303.2">10.2</a></li> 4685 <li>305 Use Proxy (status code) <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.35"><b>4.5.5</b></a>, <a href="#rfc.xref.status.305.2">10.2</a>, <a href="#rfc.xref.status.305.3">C</a></li> 4686 <li>306 (Unused) (status code) <a href="#rfc.iref.36"><b>4.5.6</b></a>, <a href="#rfc.xref.status.306.1">10.2</a></li> 4687 <li>307 Temporary Redirect (status code) <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.iref.37"><b>4.5.7</b></a>, <a href="#rfc.xref.status.307.2">10.2</a>, <a href="#rfc.xref.status.307.3">C</a></li> 4688 <li>3xx Redirection (status code class) <a href="#rfc.iref.30"><b>4.5</b></a>, <a href="#rfc.xref.status.3xx.1">C</a></li> 4734 4689 </ul> 4735 4690 </li> 4736 4691 <li><a id="rfc.index.4" href="#rfc.index.4"><b>4</b></a><ul> 4737 <li>400 Bad Request (status code) <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref. 40"><b>4.6.1</b></a>, <a href="#rfc.xref.status.400.2">10.2</a></li>4738 <li>402 Payment Required (status code) <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.4 1"><b>4.6.2</b></a>, <a href="#rfc.xref.status.402.2">10.2</a></li>4739 <li>403 Forbidden (status code) <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.4 2"><b>4.6.3</b></a>, <a href="#rfc.xref.status.403.2">10.2</a></li>4740 <li>404 Not Found (status code) <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.4 3"><b>4.6.4</b></a>, <a href="#rfc.xref.status.404.2">10.2</a></li>4741 <li>405 Method Not Allowed (status code) <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.4 4"><b>4.6.5</b></a>, <a href="#rfc.xref.status.405.2">10.2</a></li>4742 <li>406 Not Acceptable (status code) <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.4 5"><b>4.6.6</b></a>, <a href="#rfc.xref.status.406.2">10.2</a></li>4743 <li>408 Request Timeout (status code) <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.4 6"><b>4.6.7</b></a>, <a href="#rfc.xref.status.408.2">10.2</a></li>4744 <li>409 Conflict (status code) <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.4 7"><b>4.6.8</b></a>, <a href="#rfc.xref.status.409.2">10.2</a></li>4745 <li>410 Gone (status code) <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.4 8"><b>4.6.9</b></a>, <a href="#rfc.xref.status.410.2">10.2</a></li>4746 <li>411 Length Required (status code) <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.4 9"><b>4.6.10</b></a>, <a href="#rfc.xref.status.411.2">10.2</a></li>4747 <li>413 Request Representation Too Large (status code) <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref. 50"><b>4.6.11</b></a>, <a href="#rfc.xref.status.413.2">10.2</a></li>4748 <li>414 URI Too Long (status code) <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.5 1"><b>4.6.12</b></a>, <a href="#rfc.xref.status.414.2">10.2</a></li>4749 <li>415 Unsupported Media Type (status code) <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.5 2"><b>4.6.13</b></a>, <a href="#rfc.xref.status.415.2">10.2</a></li>4750 <li>417 Expectation Failed (status code) <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.5 3"><b>4.6.14</b></a>, <a href="#rfc.xref.status.417.2">10.2</a></li>4751 <li>426 Upgrade Required (status code) <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.5 4"><b>4.6.15</b></a>, <a href="#rfc.xref.status.426.2">10.2</a>, <a href="#rfc.xref.status.426.3">C</a></li>4752 <li>4xx Client Error (status code class) <a href="#rfc.iref.3 9"><b>4.6</b></a></li>4692 <li>400 Bad Request (status code) <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.39"><b>4.6.1</b></a>, <a href="#rfc.xref.status.400.2">10.2</a></li> 4693 <li>402 Payment Required (status code) <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.40"><b>4.6.2</b></a>, <a href="#rfc.xref.status.402.2">10.2</a></li> 4694 <li>403 Forbidden (status code) <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.41"><b>4.6.3</b></a>, <a href="#rfc.xref.status.403.2">10.2</a></li> 4695 <li>404 Not Found (status code) <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.42"><b>4.6.4</b></a>, <a href="#rfc.xref.status.404.2">10.2</a></li> 4696 <li>405 Method Not Allowed (status code) <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.43"><b>4.6.5</b></a>, <a href="#rfc.xref.status.405.2">10.2</a></li> 4697 <li>406 Not Acceptable (status code) <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.44"><b>4.6.6</b></a>, <a href="#rfc.xref.status.406.2">10.2</a></li> 4698 <li>408 Request Timeout (status code) <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.45"><b>4.6.7</b></a>, <a href="#rfc.xref.status.408.2">10.2</a></li> 4699 <li>409 Conflict (status code) <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.46"><b>4.6.8</b></a>, <a href="#rfc.xref.status.409.2">10.2</a></li> 4700 <li>410 Gone (status code) <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.47"><b>4.6.9</b></a>, <a href="#rfc.xref.status.410.2">10.2</a></li> 4701 <li>411 Length Required (status code) <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.48"><b>4.6.10</b></a>, <a href="#rfc.xref.status.411.2">10.2</a></li> 4702 <li>413 Request Representation Too Large (status code) <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.49"><b>4.6.11</b></a>, <a href="#rfc.xref.status.413.2">10.2</a></li> 4703 <li>414 URI Too Long (status code) <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.50"><b>4.6.12</b></a>, <a href="#rfc.xref.status.414.2">10.2</a></li> 4704 <li>415 Unsupported Media Type (status code) <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.51"><b>4.6.13</b></a>, <a href="#rfc.xref.status.415.2">10.2</a></li> 4705 <li>417 Expectation Failed (status code) <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.52"><b>4.6.14</b></a>, <a href="#rfc.xref.status.417.2">10.2</a></li> 4706 <li>426 Upgrade Required (status code) <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.53"><b>4.6.15</b></a>, <a href="#rfc.xref.status.426.2">10.2</a>, <a href="#rfc.xref.status.426.3">C</a></li> 4707 <li>4xx Client Error (status code class) <a href="#rfc.iref.38"><b>4.6</b></a></li> 4753 4708 </ul> 4754 4709 </li> 4755 4710 <li><a id="rfc.index.5" href="#rfc.index.5"><b>5</b></a><ul> 4756 <li>500 Internal Server Error (status code) <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.5 6"><b>4.7.1</b></a>, <a href="#rfc.xref.status.500.2">10.2</a></li>4757 <li>501 Not Implemented (status code) <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.5 7"><b>4.7.2</b></a>, <a href="#rfc.xref.status.501.2">10.2</a></li>4758 <li>502 Bad Gateway (status code) <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.5 8"><b>4.7.3</b></a>, <a href="#rfc.xref.status.502.2">10.2</a></li>4759 <li>503 Service Unavailable (status code) <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.5 9"><b>4.7.4</b></a>, <a href="#rfc.xref.status.503.2">10.2</a></li>4760 <li>504 Gateway Timeout (status code) <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref. 60"><b>4.7.5</b></a>, <a href="#rfc.xref.status.504.2">10.2</a></li>4761 <li>505 HTTP Version Not Supported (status code) <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.6 1"><b>4.7.6</b></a>, <a href="#rfc.xref.status.505.2">10.2</a></li>4762 <li>5xx Server Error (status code class) <a href="#rfc.iref.5 5"><b>4.7</b></a></li>4711 <li>500 Internal Server Error (status code) <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.55"><b>4.7.1</b></a>, <a href="#rfc.xref.status.500.2">10.2</a></li> 4712 <li>501 Not Implemented (status code) <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.56"><b>4.7.2</b></a>, <a href="#rfc.xref.status.501.2">10.2</a></li> 4713 <li>502 Bad Gateway (status code) <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.57"><b>4.7.3</b></a>, <a href="#rfc.xref.status.502.2">10.2</a></li> 4714 <li>503 Service Unavailable (status code) <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.58"><b>4.7.4</b></a>, <a href="#rfc.xref.status.503.2">10.2</a></li> 4715 <li>504 Gateway Timeout (status code) <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.59"><b>4.7.5</b></a>, <a href="#rfc.xref.status.504.2">10.2</a></li> 4716 <li>505 HTTP Version Not Supported (status code) <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.60"><b>4.7.6</b></a>, <a href="#rfc.xref.status.505.2">10.2</a></li> 4717 <li>5xx Server Error (status code class) <a href="#rfc.iref.54"><b>4.7</b></a></li> 4763 4718 </ul> 4764 4719 </li> … … 4781 4736 <li>compress (Coding Format) <a href="#rfc.iref.c.3">5.4</a></li> 4782 4737 <li>CONNECT method <a href="#rfc.iref.c.2"><b>2.3.8</b></a>, <a href="#rfc.xref.CONNECT.1">10.1</a>, <a href="#rfc.xref.CONNECT.2">C</a></li> 4783 <li>content negotiation <a href="#rfc.iref.c.1">1 .1</a></li>4738 <li>content negotiation <a href="#rfc.iref.c.1">1</a></li> 4784 4739 <li>Content-Encoding header field <a href="#rfc.xref.header.content-encoding.1">5.4</a>, <a href="#rfc.xref.header.content-encoding.2">7.2</a>, <a href="#rfc.iref.c.7"><b>9.6</b></a>, <a href="#rfc.xref.header.content-encoding.3">9.6</a>, <a href="#rfc.xref.header.content-encoding.4">10.3</a></li> 4785 4740 <li>Content-Language header field <a href="#rfc.xref.header.content-language.1">7.2</a>, <a href="#rfc.iref.c.8"><b>9.7</b></a>, <a href="#rfc.xref.header.content-language.2">10.3</a></li> … … 4793 4748 <li>deflate (Coding Format) <a href="#rfc.iref.d.2">5.4</a></li> 4794 4749 <li>DELETE method <a href="#rfc.iref.d.1"><b>2.3.6</b></a>, <a href="#rfc.xref.DELETE.1">10.1</a></li> 4795 <li><em>draft-reschke-http-status-308</em> <a href="#rfc.xref.draft-reschke-http-status-308.1">4.5.7</a>, <a href="#draft-reschke-http-status-308"><b>1 3.2</b></a></li>4750 <li><em>draft-reschke-http-status-308</em> <a href="#rfc.xref.draft-reschke-http-status-308.1">4.5.7</a>, <a href="#draft-reschke-http-status-308"><b>14.2</b></a></li> 4796 4751 </ul> 4797 4752 </li> … … 4897 4852 <li>Referer <a href="#rfc.xref.header.referer.1">3.2</a>, <a href="#rfc.iref.h.16"><b>9.15</b></a>, <a href="#rfc.xref.header.referer.2">10.3</a>, <a href="#rfc.xref.header.referer.3">C</a></li> 4898 4853 <li>Retry-After <a href="#rfc.xref.header.retry-after.1">3.3</a>, <a href="#rfc.xref.header.retry-after.2">4.7.4</a>, <a href="#rfc.iref.h.17"><b>9.16</b></a>, <a href="#rfc.xref.header.retry-after.3">10.3</a></li> 4899 <li>Server <a href="#rfc.xref.header.server.1">3.3</a>, <a href="#rfc.iref.h.18"><b>9.17</b></a>, <a href="#rfc.xref.header.server.2">10.3</a>, <a href="#rfc.xref.header.server.3">1 1.1</a>, <a href="#rfc.xref.header.server.4">C</a></li>4900 <li>User-Agent <a href="#rfc.xref.header.user-agent.1">3.2</a>, <a href="#rfc.xref.header.user-agent.2">8.1</a>, <a href="#rfc.iref.h.19"><b>9.18</b></a>, <a href="#rfc.xref.header.user-agent.3">10.3</a>, <a href="#rfc.xref.header.user-agent.4">1 1.1</a></li>4854 <li>Server <a href="#rfc.xref.header.server.1">3.3</a>, <a href="#rfc.iref.h.18"><b>9.17</b></a>, <a href="#rfc.xref.header.server.2">10.3</a>, <a href="#rfc.xref.header.server.3">12.1</a>, <a href="#rfc.xref.header.server.4">C</a></li> 4855 <li>User-Agent <a href="#rfc.xref.header.user-agent.1">3.2</a>, <a href="#rfc.xref.header.user-agent.2">8.1</a>, <a href="#rfc.iref.h.19"><b>9.18</b></a>, <a href="#rfc.xref.header.user-agent.3">10.3</a>, <a href="#rfc.xref.header.user-agent.4">12.1</a></li> 4901 4856 </ul> 4902 4857 </li> … … 4922 4877 <li>POST <a href="#rfc.iref.m.4"><b>2.3.4</b></a>, <a href="#rfc.xref.POST.1">10.1</a>, <a href="#rfc.xref.POST.2">C</a></li> 4923 4878 <li>PUT <a href="#rfc.iref.m.5"><b>2.3.5</b></a>, <a href="#rfc.xref.PUT.1">10.1</a>, <a href="#rfc.xref.PUT.2">C</a></li> 4924 <li>TRACE <a href="#rfc.iref.m.7"><b>2.3.7</b></a>, <a href="#rfc.xref.TRACE.1">9.14</a>, <a href="#rfc.xref.TRACE.2">10.1</a>, <a href="#rfc.xref.TRACE.3">1 1.1</a></li>4879 <li>TRACE <a href="#rfc.iref.m.7"><b>2.3.7</b></a>, <a href="#rfc.xref.TRACE.1">9.14</a>, <a href="#rfc.xref.TRACE.2">10.1</a>, <a href="#rfc.xref.TRACE.3">12.1</a></li> 4925 4880 </ul> 4926 4881 </li> … … 4933 4888 </li> 4934 4889 <li><a id="rfc.index.P" href="#rfc.index.P"><b>P</b></a><ul> 4935 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1</a>, <a href="#rfc.xref.Part1.2"> 1.2</a>, <a href="#rfc.xref.Part1.3">1.3</a>, <a href="#rfc.xref.Part1.4">1.3.1</a>, <a href="#rfc.xref.Part1.5">1.3.1</a>, <a href="#rfc.xref.Part1.6">1.3.1</a>, <a href="#rfc.xref.Part1.7">1.3.1</a>, <a href="#rfc.xref.Part1.8">1.3.1</a>, <a href="#rfc.xref.Part1.9">1.3.1</a>, <a href="#rfc.xref.Part1.10">1.3.1</a>, <a href="#rfc.xref.Part1.11">1.3.2</a>, <a href="#rfc.xref.Part1.12">1.3.2</a>, <a href="#rfc.xref.Part1.13">1.3.2</a>, <a href="#rfc.xref.Part1.14">1.3.2</a>, <a href="#rfc.xref.Part1.15">1.3.2</a>, <a href="#rfc.xref.Part1.16">2</a>, <a href="#rfc.xref.Part1.17">2.2.1</a>, <a href="#rfc.xref.Part1.18">2.3.1</a>, <a href="#rfc.xref.Part1.19">2.3.7</a>, <a href="#rfc.xref.Part1.20">2.3.7</a>, <a href="#rfc.xref.Part1.21">2.3.8</a>, <a href="#rfc.xref.Part1.22">3</a>, <a href="#rfc.xref.Part1.23">3.1</a>, <a href="#rfc.xref.Part1.24">3.1</a>, <a href="#rfc.xref.Part1.25">3.1</a>, <a href="#rfc.xref.Part1.26">3.1</a>, <a href="#rfc.xref.Part1.27">3.1</a>, <a href="#rfc.xref.Part1.28">3.2</a>, <a href="#rfc.xref.Part1.29">3.2</a>, <a href="#rfc.xref.Part1.30">3.3</a>, <a href="#rfc.xref.Part1.31">4.3.1</a>, <a href="#rfc.xref.Part1.32">4.3.2</a>, <a href="#rfc.xref.Part1.33">4.4.4</a>, <a href="#rfc.xref.Part1.34">4.4.6</a>, <a href="#rfc.xref.Part1.35">4.6.15</a>, <a href="#rfc.xref.Part1.36">4.7.6</a>, <a href="#rfc.xref.Part1.37">5.4</a>, <a href="#rfc.xref.Part1.38">5.4</a>, <a href="#rfc.xref.Part1.39">5.4</a>, <a href="#rfc.xref.Part1.40">5.4.1</a>, <a href="#rfc.xref.Part1.41">5.4.1</a>, <a href="#rfc.xref.Part1.42">6.1</a>, <a href="#rfc.xref.Part1.43">6.2</a>, <a href="#rfc.xref.Part1.44">7</a>, <a href="#rfc.xref.Part1.45">7.1</a>, <a href="#rfc.xref.Part1.46">8.1</a>, <a href="#rfc.xref.Part1.47">9.1</a>, <a href="#rfc.xref.Part1.48">9.3</a>, <a href="#rfc.xref.Part1.49">9.8</a>, <a href="#rfc.xref.Part1.50">9.11</a>, <a href="#rfc.xref.Part1.51">9.17</a>, <a href="#rfc.xref.Part1.52">9.17</a>, <a href="#rfc.xref.Part1.53">9.18</a>, <a href="#rfc.xref.Part1.54">10.4</a>, <a href="#rfc.xref.Part1.55">10.4</a>, <a href="#rfc.xref.Part1.56">10.4</a>, <a href="#rfc.xref.Part1.57">12</a>, <a href="#Part1"><b>13.1</b></a>, <a href="#rfc.xref.Part1.58">C</a><ul>4936 <li><em>Section 1.2</em> <a href="#rfc.xref.Part1. 3">1.3</a></li>4937 <li><em>Section 2</em> <a href="#rfc.xref.Part1. 2">1.2</a></li>4938 <li><em>Section 2.4</em> <a href="#rfc.xref.Part1. 33">4.4.4</a></li>4939 <li><em>Section 2.7</em> <a href="#rfc.xref.Part1. 36">4.7.6</a></li>4940 <li><em>Section 2.8</em> <a href="#rfc.xref.Part1. 11">1.3.2</a>, <a href="#rfc.xref.Part1.13">1.3.2</a>, <a href="#rfc.xref.Part1.15">1.3.2</a></li>4941 <li><em>Section 3.2 .1</em> <a href="#rfc.xref.Part1.5">1.3.1</a>, <a href="#rfc.xref.Part1.6">1.3.1</a>, <a href="#rfc.xref.Part1.7">1.3.1</a></li>4942 <li><em>Section 3.2 </em> <a href="#rfc.xref.Part1.22">3</a>, <a href="#rfc.xref.Part1.25">3.1</a>, <a href="#rfc.xref.Part1.51">9.17</a>, <a href="#rfc.xref.Part1.53">9.18</a></li>4943 <li><em>Section 3.2.4</em> <a href="#rfc.xref.Part1. 8">1.3.1</a>, <a href="#rfc.xref.Part1.9">1.3.1</a>, <a href="#rfc.xref.Part1.10">1.3.1</a>, <a href="#rfc.xref.Part1.12">1.3.2</a>, <a href="#rfc.xref.Part1.24">3.1</a></li>4944 <li><em>Section 3.2.5</em> <a href="#rfc.xref.Part1. 23">3.1</a></li>4945 <li><em>Section 3.3</em> <a href="#rfc.xref.Part1. 17">2.2.1</a>, <a href="#rfc.xref.Part1.34">4.4.6</a>, <a href="#rfc.xref.Part1.43">6.2</a>, <a href="#rfc.xref.Part1.44">7</a></li>4946 <li><em>Section 3.3.2</em> <a href="#rfc.xref.Part1. 42">6.1</a></li>4947 <li><em>Section 4</em> <a href="#rfc.xref.Part1. 40">5.4.1</a></li>4948 <li><em>Section 4.1</em> <a href="#rfc.xref.Part1. 27">3.1</a></li>4949 <li><em>Section 4.2.1</em> <a href="#rfc.xref.Part1. 37">5.4</a>, <a href="#rfc.xref.Part1.54">10.4</a></li>4950 <li><em>Section 4.2</em> <a href="#rfc.xref.Part1. 41">5.4.1</a></li>4951 <li><em>Section 4.2.2</em> <a href="#rfc.xref.Part1. 38">5.4</a>, <a href="#rfc.xref.Part1.55">10.4</a></li>4952 <li><em>Section 4.2.3</em> <a href="#rfc.xref.Part1. 39">5.4</a>, <a href="#rfc.xref.Part1.56">10.4</a></li>4953 <li><em>Section 4.3 .1</em> <a href="#rfc.xref.Part1.14">1.3.2</a>, <a href="#rfc.xref.Part1.46">8.1</a>, <a href="#rfc.xref.Part1.47">9.1</a>, <a href="#rfc.xref.Part1.48">9.3</a></li>4954 <li><em>Section 4.3 </em> <a href="#rfc.xref.Part1.29">3.2</a></li>4955 <li><em>Section 5.3</em> <a href="#rfc.xref.Part1. 18">2.3.1</a>, <a href="#rfc.xref.Part1.21">2.3.8</a></li>4956 <li><em>Section 5.4</em> <a href="#rfc.xref.Part1. 28">3.2</a></li>4957 <li><em>Section 5.5</em> <a href="#rfc.xref.Part1. 16">2</a>, <a href="#rfc.xref.Part1.30">3.3</a>, <a href="#rfc.xref.Part1.45">7.1</a>, <a href="#rfc.xref.Part1.49">9.8</a></li>4958 <li><em>Section 6.1</em> <a href="#rfc.xref.Part1. 26">3.1</a></li>4959 <li><em>Section 6.2</em> <a href="#rfc.xref.Part1. 19">2.3.7</a>, <a href="#rfc.xref.Part1.52">9.17</a>, <a href="#rfc.xref.Part1.58">C</a></li>4960 <li><em>Section 6.4.3</em> <a href="#rfc.xref.Part1. 31">4.3.1</a>, <a href="#rfc.xref.Part1.50">9.11</a></li>4961 <li><em>Section 6.5</em> <a href="#rfc.xref.Part1. 32">4.3.2</a>, <a href="#rfc.xref.Part1.35">4.6.15</a></li>4962 <li><em>Section 7.3.1</em> <a href="#rfc.xref.Part1. 20">2.3.7</a></li>4963 <li><em>Section 9</em> <a href="#rfc.xref.Part1.5 7">12</a></li>4890 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1</a>, <a href="#rfc.xref.Part1.2">2</a>, <a href="#rfc.xref.Part1.3">2.2.1</a>, <a href="#rfc.xref.Part1.4">2.3.1</a>, <a href="#rfc.xref.Part1.5">2.3.7</a>, <a href="#rfc.xref.Part1.6">2.3.7</a>, <a href="#rfc.xref.Part1.7">2.3.8</a>, <a href="#rfc.xref.Part1.8">3</a>, <a href="#rfc.xref.Part1.9">3.1</a>, <a href="#rfc.xref.Part1.10">3.1</a>, <a href="#rfc.xref.Part1.11">3.1</a>, <a href="#rfc.xref.Part1.12">3.1</a>, <a href="#rfc.xref.Part1.13">3.1</a>, <a href="#rfc.xref.Part1.14">3.2</a>, <a href="#rfc.xref.Part1.15">3.2</a>, <a href="#rfc.xref.Part1.16">3.3</a>, <a href="#rfc.xref.Part1.17">4.3.1</a>, <a href="#rfc.xref.Part1.18">4.3.2</a>, <a href="#rfc.xref.Part1.19">4.4.4</a>, <a href="#rfc.xref.Part1.20">4.4.6</a>, <a href="#rfc.xref.Part1.21">4.6.15</a>, <a href="#rfc.xref.Part1.22">4.7.6</a>, <a href="#rfc.xref.Part1.23">5.4</a>, <a href="#rfc.xref.Part1.24">5.4</a>, <a href="#rfc.xref.Part1.25">5.4</a>, <a href="#rfc.xref.Part1.26">5.4.1</a>, <a href="#rfc.xref.Part1.27">5.4.1</a>, <a href="#rfc.xref.Part1.28">6.1</a>, <a href="#rfc.xref.Part1.29">6.2</a>, <a href="#rfc.xref.Part1.30">7</a>, <a href="#rfc.xref.Part1.31">7.1</a>, <a href="#rfc.xref.Part1.32">8.1</a>, <a href="#rfc.xref.Part1.33">9.1</a>, <a href="#rfc.xref.Part1.34">9.3</a>, <a href="#rfc.xref.Part1.35">9.8</a>, <a href="#rfc.xref.Part1.36">9.11</a>, <a href="#rfc.xref.Part1.37">9.17</a>, <a href="#rfc.xref.Part1.38">9.17</a>, <a href="#rfc.xref.Part1.39">9.18</a>, <a href="#rfc.xref.Part1.40">10.4</a>, <a href="#rfc.xref.Part1.41">10.4</a>, <a href="#rfc.xref.Part1.42">10.4</a>, <a href="#rfc.xref.Part1.43">11</a>, <a href="#rfc.xref.Part1.44">11</a>, <a href="#rfc.xref.Part1.45">11</a>, <a href="#rfc.xref.Part1.46">11</a>, <a href="#rfc.xref.Part1.47">11</a>, <a href="#rfc.xref.Part1.48">11</a>, <a href="#rfc.xref.Part1.49">11</a>, <a href="#rfc.xref.Part1.50">11</a>, <a href="#rfc.xref.Part1.51">11</a>, <a href="#rfc.xref.Part1.52">11</a>, <a href="#rfc.xref.Part1.53">11</a>, <a href="#rfc.xref.Part1.54">11</a>, <a href="#rfc.xref.Part1.55">13</a>, <a href="#Part1"><b>14.1</b></a>, <a href="#rfc.xref.Part1.56">C</a><ul> 4891 <li><em>Section 1.2</em> <a href="#rfc.xref.Part1.43">11</a></li> 4892 <li><em>Section 2</em> <a href="#rfc.xref.Part1.1">1</a></li> 4893 <li><em>Section 2.4</em> <a href="#rfc.xref.Part1.19">4.4.4</a></li> 4894 <li><em>Section 2.7</em> <a href="#rfc.xref.Part1.22">4.7.6</a></li> 4895 <li><em>Section 2.8</em> <a href="#rfc.xref.Part1.47">11</a>, <a href="#rfc.xref.Part1.48">11</a>, <a href="#rfc.xref.Part1.49">11</a></li> 4896 <li><em>Section 3.2</em> <a href="#rfc.xref.Part1.8">3</a>, <a href="#rfc.xref.Part1.11">3.1</a>, <a href="#rfc.xref.Part1.37">9.17</a>, <a href="#rfc.xref.Part1.39">9.18</a></li> 4897 <li><em>Section 3.2.1</em> <a href="#rfc.xref.Part1.44">11</a>, <a href="#rfc.xref.Part1.45">11</a>, <a href="#rfc.xref.Part1.46">11</a></li> 4898 <li><em>Section 3.2.4</em> <a href="#rfc.xref.Part1.10">3.1</a>, <a href="#rfc.xref.Part1.50">11</a>, <a href="#rfc.xref.Part1.52">11</a>, <a href="#rfc.xref.Part1.53">11</a>, <a href="#rfc.xref.Part1.54">11</a></li> 4899 <li><em>Section 3.2.5</em> <a href="#rfc.xref.Part1.9">3.1</a></li> 4900 <li><em>Section 3.3</em> <a href="#rfc.xref.Part1.3">2.2.1</a>, <a href="#rfc.xref.Part1.20">4.4.6</a>, <a href="#rfc.xref.Part1.29">6.2</a>, <a href="#rfc.xref.Part1.30">7</a></li> 4901 <li><em>Section 3.3.2</em> <a href="#rfc.xref.Part1.28">6.1</a></li> 4902 <li><em>Section 4</em> <a href="#rfc.xref.Part1.26">5.4.1</a></li> 4903 <li><em>Section 4.1</em> <a href="#rfc.xref.Part1.13">3.1</a></li> 4904 <li><em>Section 4.2.1</em> <a href="#rfc.xref.Part1.23">5.4</a>, <a href="#rfc.xref.Part1.40">10.4</a></li> 4905 <li><em>Section 4.2</em> <a href="#rfc.xref.Part1.27">5.4.1</a></li> 4906 <li><em>Section 4.2.2</em> <a href="#rfc.xref.Part1.24">5.4</a>, <a href="#rfc.xref.Part1.41">10.4</a></li> 4907 <li><em>Section 4.2.3</em> <a href="#rfc.xref.Part1.25">5.4</a>, <a href="#rfc.xref.Part1.42">10.4</a></li> 4908 <li><em>Section 4.3</em> <a href="#rfc.xref.Part1.15">3.2</a></li> 4909 <li><em>Section 4.3.1</em> <a href="#rfc.xref.Part1.32">8.1</a>, <a href="#rfc.xref.Part1.33">9.1</a>, <a href="#rfc.xref.Part1.34">9.3</a>, <a href="#rfc.xref.Part1.51">11</a></li> 4910 <li><em>Section 5.3</em> <a href="#rfc.xref.Part1.4">2.3.1</a>, <a href="#rfc.xref.Part1.7">2.3.8</a></li> 4911 <li><em>Section 5.4</em> <a href="#rfc.xref.Part1.14">3.2</a></li> 4912 <li><em>Section 5.5</em> <a href="#rfc.xref.Part1.2">2</a>, <a href="#rfc.xref.Part1.16">3.3</a>, <a href="#rfc.xref.Part1.31">7.1</a>, <a href="#rfc.xref.Part1.35">9.8</a></li> 4913 <li><em>Section 6.1</em> <a href="#rfc.xref.Part1.12">3.1</a></li> 4914 <li><em>Section 6.2</em> <a href="#rfc.xref.Part1.5">2.3.7</a>, <a href="#rfc.xref.Part1.38">9.17</a>, <a href="#rfc.xref.Part1.56">C</a></li> 4915 <li><em>Section 6.4.3</em> <a href="#rfc.xref.Part1.17">4.3.1</a>, <a href="#rfc.xref.Part1.36">9.11</a></li> 4916 <li><em>Section 6.5</em> <a href="#rfc.xref.Part1.18">4.3.2</a>, <a href="#rfc.xref.Part1.21">4.6.15</a></li> 4917 <li><em>Section 7.3.1</em> <a href="#rfc.xref.Part1.6">2.3.7</a></li> 4918 <li><em>Section 9</em> <a href="#rfc.xref.Part1.55">13</a></li> 4964 4919 </ul> 4965 4920 </li> 4966 <li><em>Part4</em> <a href="#rfc.xref.Part4.1">2.3.2</a>, <a href="#rfc.xref.Part4.2">3.2</a>, <a href="#rfc.xref.Part4.3">3.2</a>, <a href="#rfc.xref.Part4.4">3.2</a>, <a href="#rfc.xref.Part4.5">3.2</a>, <a href="#rfc.xref.Part4.6">3.3</a>, <a href="#rfc.xref.Part4.7">4.1</a>, <a href="#rfc.xref.Part4.8">4.1</a>, <a href="#rfc.xref.Part4.9">4.1</a>, <a href="#rfc.xref.Part4.10">4.4.2</a>, <a href="#rfc.xref.Part4.11">4.5</a>, <a href="#rfc.xref.Part4.12">7.2</a>, <a href="#rfc.xref.Part4.13">7.2</a>, <a href="#Part4"><b>1 3.1</b></a>, <a href="#rfc.xref.Part4.14">E.2</a><ul>4921 <li><em>Part4</em> <a href="#rfc.xref.Part4.1">2.3.2</a>, <a href="#rfc.xref.Part4.2">3.2</a>, <a href="#rfc.xref.Part4.3">3.2</a>, <a href="#rfc.xref.Part4.4">3.2</a>, <a href="#rfc.xref.Part4.5">3.2</a>, <a href="#rfc.xref.Part4.6">3.3</a>, <a href="#rfc.xref.Part4.7">4.1</a>, <a href="#rfc.xref.Part4.8">4.1</a>, <a href="#rfc.xref.Part4.9">4.1</a>, <a href="#rfc.xref.Part4.10">4.4.2</a>, <a href="#rfc.xref.Part4.11">4.5</a>, <a href="#rfc.xref.Part4.12">7.2</a>, <a href="#rfc.xref.Part4.13">7.2</a>, <a href="#Part4"><b>14.1</b></a>, <a href="#rfc.xref.Part4.14">E.2</a><ul> 4967 4922 <li><em>Section 2.2</em> <a href="#rfc.xref.Part4.13">7.2</a></li> 4968 4923 <li><em>Section 2.3</em> <a href="#rfc.xref.Part4.6">3.3</a>, <a href="#rfc.xref.Part4.10">4.4.2</a>, <a href="#rfc.xref.Part4.12">7.2</a></li> … … 4976 4931 </ul> 4977 4932 </li> 4978 <li><em>Part5</em> <a href="#rfc.xref.Part5.1">2.3.2</a>, <a href="#rfc.xref.Part5.2">2.3.2</a>, <a href="#rfc.xref.Part5.3">2.3.5</a>, <a href="#rfc.xref.Part5.4">3.2</a>, <a href="#rfc.xref.Part5.5">3.2</a>, <a href="#rfc.xref.Part5.6">3.3</a>, <a href="#rfc.xref.Part5.7">4.1</a>, <a href="#rfc.xref.Part5.8">4.1</a>, <a href="#rfc.xref.Part5.9">4.1</a>, <a href="#rfc.xref.Part5.10">6.1</a>, <a href="#Part5"><b>1 3.1</b></a><ul>4933 <li><em>Part5</em> <a href="#rfc.xref.Part5.1">2.3.2</a>, <a href="#rfc.xref.Part5.2">2.3.2</a>, <a href="#rfc.xref.Part5.3">2.3.5</a>, <a href="#rfc.xref.Part5.4">3.2</a>, <a href="#rfc.xref.Part5.5">3.2</a>, <a href="#rfc.xref.Part5.6">3.3</a>, <a href="#rfc.xref.Part5.7">4.1</a>, <a href="#rfc.xref.Part5.8">4.1</a>, <a href="#rfc.xref.Part5.9">4.1</a>, <a href="#rfc.xref.Part5.10">6.1</a>, <a href="#Part5"><b>14.1</b></a><ul> 4979 4934 <li><em>Section 3</em> <a href="#rfc.xref.Part5.7">4.1</a></li> 4980 4935 <li><em>Section 3.1</em> <a href="#rfc.xref.Part5.8">4.1</a></li> … … 4986 4941 </ul> 4987 4942 </li> 4988 <li><em>Part6</em> <a href="#rfc.xref.Part6.1">2.2.1</a>, <a href="#rfc.xref.Part6.2">2.3.2</a>, <a href="#rfc.xref.Part6.3">2.3.3</a>, <a href="#rfc.xref.Part6.4">2.3.4</a>, <a href="#rfc.xref.Part6.5">2.3.5</a>, <a href="#rfc.xref.Part6.6">2.3.6</a>, <a href="#rfc.xref.Part6.7">3.1</a>, <a href="#rfc.xref.Part6.8">3.3</a>, <a href="#rfc.xref.Part6.9">3.3</a>, <a href="#rfc.xref.Part6.10">4.2.1</a>, <a href="#rfc.xref.Part6.11">4.4.1</a>, <a href="#rfc.xref.Part6.12">4.4.4</a>, <a href="#rfc.xref.Part6.13">4.4.4</a>, <a href="#rfc.xref.Part6.14">4.4.4</a>, <a href="#rfc.xref.Part6.15">4.5.1</a>, <a href="#rfc.xref.Part6.16">4.5.2</a>, <a href="#rfc.xref.Part6.17">4.6.9</a>, <a href="#rfc.xref.Part6.18">7.2</a>, <a href="#rfc.xref.Part6.19">8.1</a>, <a href="#Part6"><b>1 3.1</b></a><ul>4943 <li><em>Part6</em> <a href="#rfc.xref.Part6.1">2.2.1</a>, <a href="#rfc.xref.Part6.2">2.3.2</a>, <a href="#rfc.xref.Part6.3">2.3.3</a>, <a href="#rfc.xref.Part6.4">2.3.4</a>, <a href="#rfc.xref.Part6.5">2.3.5</a>, <a href="#rfc.xref.Part6.6">2.3.6</a>, <a href="#rfc.xref.Part6.7">3.1</a>, <a href="#rfc.xref.Part6.8">3.3</a>, <a href="#rfc.xref.Part6.9">3.3</a>, <a href="#rfc.xref.Part6.10">4.2.1</a>, <a href="#rfc.xref.Part6.11">4.4.1</a>, <a href="#rfc.xref.Part6.12">4.4.4</a>, <a href="#rfc.xref.Part6.13">4.4.4</a>, <a href="#rfc.xref.Part6.14">4.4.4</a>, <a href="#rfc.xref.Part6.15">4.5.1</a>, <a href="#rfc.xref.Part6.16">4.5.2</a>, <a href="#rfc.xref.Part6.17">4.6.9</a>, <a href="#rfc.xref.Part6.18">7.2</a>, <a href="#rfc.xref.Part6.19">8.1</a>, <a href="#Part6"><b>14.1</b></a><ul> 4989 4944 <li><em>Section 4.1.1</em> <a href="#rfc.xref.Part6.4">2.3.4</a></li> 4990 4945 <li><em>Section 4.1.2</em> <a href="#rfc.xref.Part6.11">4.4.1</a>, <a href="#rfc.xref.Part6.14">4.4.4</a>, <a href="#rfc.xref.Part6.15">4.5.1</a>, <a href="#rfc.xref.Part6.16">4.5.2</a>, <a href="#rfc.xref.Part6.17">4.6.9</a></li> … … 4998 4953 </ul> 4999 4954 </li> 5000 <li><em>Part7</em> <a href="#rfc.xref.Part7.1">3.2</a>, <a href="#rfc.xref.Part7.2">3.2</a>, <a href="#rfc.xref.Part7.3">3.3</a>, <a href="#rfc.xref.Part7.4">3.3</a>, <a href="#rfc.xref.Part7.5">4.1</a>, <a href="#rfc.xref.Part7.6">4.1</a>, <a href="#rfc.xref.Part7.7">4.1</a>, <a href="#Part7"><b>1 3.1</b></a><ul>4955 <li><em>Part7</em> <a href="#rfc.xref.Part7.1">3.2</a>, <a href="#rfc.xref.Part7.2">3.2</a>, <a href="#rfc.xref.Part7.3">3.3</a>, <a href="#rfc.xref.Part7.4">3.3</a>, <a href="#rfc.xref.Part7.5">4.1</a>, <a href="#rfc.xref.Part7.6">4.1</a>, <a href="#rfc.xref.Part7.7">4.1</a>, <a href="#Part7"><b>14.1</b></a><ul> 5001 4956 <li><em>Section 3</em> <a href="#rfc.xref.Part7.5">4.1</a></li> 5002 4957 <li><em>Section 3.1</em> <a href="#rfc.xref.Part7.6">4.1</a></li> … … 5017 4972 <li>representation <a href="#rfc.iref.r.1">7</a></li> 5018 4973 <li>Retry-After header field <a href="#rfc.xref.header.retry-after.1">3.3</a>, <a href="#rfc.xref.header.retry-after.2">4.7.4</a>, <a href="#rfc.iref.r.3"><b>9.16</b></a>, <a href="#rfc.xref.header.retry-after.3">10.3</a></li> 5019 <li><em>RFC1123</em> <a href="#rfc.xref.RFC1123.1">5.1</a>, <a href="#rfc.xref.RFC1123.2">5.1</a>, <a href="#RFC1123"><b>1 3.2</b></a><ul>4974 <li><em>RFC1123</em> <a href="#rfc.xref.RFC1123.1">5.1</a>, <a href="#rfc.xref.RFC1123.2">5.1</a>, <a href="#RFC1123"><b>14.2</b></a><ul> 5020 4975 <li><em>Section 5.2.14</em> <a href="#rfc.xref.RFC1123.2">5.1</a></li> 5021 4976 </ul> 5022 4977 </li> 5023 <li><em>RFC1945</em> <a href="#rfc.xref.RFC1945.1">4.5</a>, <a href="#RFC1945"><b>1 3.2</b></a>, <a href="#rfc.xref.RFC1945.2">B</a><ul>4978 <li><em>RFC1945</em> <a href="#rfc.xref.RFC1945.1">4.5</a>, <a href="#RFC1945"><b>14.2</b></a>, <a href="#rfc.xref.RFC1945.2">B</a><ul> 5024 4979 <li><em>Section 9.3</em> <a href="#rfc.xref.RFC1945.1">4.5</a></li> 5025 4980 </ul> 5026 4981 </li> 5027 <li><em>RFC1950</em> <a href="#rfc.xref.RFC1950.1">10.4</a>, <a href="#RFC1950"><b>1 3.1</b></a></li>5028 <li><em>RFC1951</em> <a href="#rfc.xref.RFC1951.1">10.4</a>, <a href="#RFC1951"><b>1 3.1</b></a></li>5029 <li><em>RFC1952</em> <a href="#rfc.xref.RFC1952.1">10.4</a>, <a href="#RFC1952"><b>1 3.1</b></a></li>5030 <li><em>RFC2045</em> <a href="#RFC2045"><b>1 3.1</b></a>, <a href="#rfc.xref.RFC2045.1">A</a>, <a href="#rfc.xref.RFC2045.2">A.1</a></li>5031 <li><em>RFC2046</em> <a href="#rfc.xref.RFC2046.1">5.5</a>, <a href="#rfc.xref.RFC2046.2">5.5.2</a>, <a href="#rfc.xref.RFC2046.3">7.3</a>, <a href="#RFC2046"><b>1 3.1</b></a>, <a href="#rfc.xref.RFC2046.4">A.2</a><ul>4982 <li><em>RFC1950</em> <a href="#rfc.xref.RFC1950.1">10.4</a>, <a href="#RFC1950"><b>14.1</b></a></li> 4983 <li><em>RFC1951</em> <a href="#rfc.xref.RFC1951.1">10.4</a>, <a href="#RFC1951"><b>14.1</b></a></li> 4984 <li><em>RFC1952</em> <a href="#rfc.xref.RFC1952.1">10.4</a>, <a href="#RFC1952"><b>14.1</b></a></li> 4985 <li><em>RFC2045</em> <a href="#RFC2045"><b>14.1</b></a>, <a href="#rfc.xref.RFC2045.1">A</a>, <a href="#rfc.xref.RFC2045.2">A.1</a></li> 4986 <li><em>RFC2046</em> <a href="#rfc.xref.RFC2046.1">5.5</a>, <a href="#rfc.xref.RFC2046.2">5.5.2</a>, <a href="#rfc.xref.RFC2046.3">7.3</a>, <a href="#RFC2046"><b>14.1</b></a>, <a href="#rfc.xref.RFC2046.4">A.2</a><ul> 5032 4987 <li><em>Section 4.5.1</em> <a href="#rfc.xref.RFC2046.3">7.3</a></li> 5033 4988 <li><em>Section 5.1.1</em> <a href="#rfc.xref.RFC2046.2">5.5.2</a></li> 5034 4989 </ul> 5035 4990 </li> 5036 <li><em>RFC2049</em> <a href="#RFC2049"><b>1 3.2</b></a>, <a href="#rfc.xref.RFC2049.1">A.2</a><ul>4991 <li><em>RFC2049</em> <a href="#RFC2049"><b>14.2</b></a>, <a href="#rfc.xref.RFC2049.1">A.2</a><ul> 5037 4992 <li><em>Section 4</em> <a href="#rfc.xref.RFC2049.1">A.2</a></li> 5038 4993 </ul> 5039 4994 </li> 5040 <li><em>RFC2068</em> <a href="#rfc.xref.RFC2068.1">4.5</a>, <a href="#rfc.xref.RFC2068.2">4.5</a>, <a href="#RFC2068"><b>1 3.2</b></a>, <a href="#rfc.xref.RFC2068.3">B</a><ul>4995 <li><em>RFC2068</em> <a href="#rfc.xref.RFC2068.1">4.5</a>, <a href="#rfc.xref.RFC2068.2">4.5</a>, <a href="#RFC2068"><b>14.2</b></a>, <a href="#rfc.xref.RFC2068.3">B</a><ul> 5041 4996 <li><em>Section 10.3</em> <a href="#rfc.xref.RFC2068.2">4.5</a></li> 5042 4997 <li><em>Section 10.3.4</em> <a href="#rfc.xref.RFC2068.1">4.5</a></li> 5043 4998 </ul> 5044 4999 </li> 5045 <li><em>RFC2076</em> <a href="#RFC2076"><b>13.2</b></a>, <a href="#rfc.xref.RFC2076.1">B</a></li> 5046 <li><em>RFC2119</em> <a href="#rfc.xref.RFC2119.1">1.2</a>, <a href="#RFC2119"><b>13.1</b></a></li> 5047 <li><em>RFC2277</em> <a href="#rfc.xref.RFC2277.1">5.3</a>, <a href="#RFC2277"><b>13.2</b></a></li> 5048 <li><em>RFC2295</em> <a href="#rfc.xref.RFC2295.1">8</a>, <a href="#RFC2295"><b>13.2</b></a></li> 5049 <li><em>RFC2388</em> <a href="#rfc.xref.RFC2388.1">5.5.2</a>, <a href="#RFC2388"><b>13.2</b></a></li> 5050 <li><em>RFC2557</em> <a href="#rfc.xref.RFC2557.1">9.8</a>, <a href="#RFC2557"><b>13.2</b></a>, <a href="#rfc.xref.RFC2557.2">A.6</a><ul> 5000 <li><em>RFC2076</em> <a href="#RFC2076"><b>14.2</b></a>, <a href="#rfc.xref.RFC2076.1">B</a></li> 5001 <li><em>RFC2277</em> <a href="#rfc.xref.RFC2277.1">5.3</a>, <a href="#RFC2277"><b>14.2</b></a></li> 5002 <li><em>RFC2295</em> <a href="#rfc.xref.RFC2295.1">8</a>, <a href="#RFC2295"><b>14.2</b></a></li> 5003 <li><em>RFC2388</em> <a href="#rfc.xref.RFC2388.1">5.5.2</a>, <a href="#RFC2388"><b>14.2</b></a></li> 5004 <li><em>RFC2557</em> <a href="#rfc.xref.RFC2557.1">9.8</a>, <a href="#RFC2557"><b>14.2</b></a>, <a href="#rfc.xref.RFC2557.2">A.6</a><ul> 5051 5005 <li><em>Section 4</em> <a href="#rfc.xref.RFC2557.1">9.8</a></li> 5052 5006 </ul> 5053 5007 </li> 5054 <li><em>RFC2616</em> <a href="#rfc.xref.RFC2616.1">1</a>, <a href="#rfc.xref.RFC2616.2">4.5</a>, <a href="#rfc.xref.RFC2616.3">9.4</a>, <a href="#RFC2616"><b>1 3.2</b></a>, <a href="#rfc.xref.RFC2616.4">E.1</a><ul>5008 <li><em>RFC2616</em> <a href="#rfc.xref.RFC2616.1">1</a>, <a href="#rfc.xref.RFC2616.2">4.5</a>, <a href="#rfc.xref.RFC2616.3">9.4</a>, <a href="#RFC2616"><b>14.2</b></a>, <a href="#rfc.xref.RFC2616.4">E.1</a><ul> 5055 5009 <li><em>Section 10.3.8</em> <a href="#rfc.xref.RFC2616.2">4.5</a></li> 5056 5010 <li><em>Section 14.4</em> <a href="#rfc.xref.RFC2616.3">9.4</a></li> 5057 5011 </ul> 5058 5012 </li> 5059 <li><em>RFC2817</em> <a href="#rfc.xref.RFC2817.1">10.2</a>, <a href="#RFC2817"><b>1 3.2</b></a>, <a href="#rfc.xref.RFC2817.2">C</a>, <a href="#rfc.xref.RFC2817.3">C</a>, <a href="#rfc.xref.RFC2817.4">C</a><ul>5013 <li><em>RFC2817</em> <a href="#rfc.xref.RFC2817.1">10.2</a>, <a href="#RFC2817"><b>14.2</b></a>, <a href="#rfc.xref.RFC2817.2">C</a>, <a href="#rfc.xref.RFC2817.3">C</a>, <a href="#rfc.xref.RFC2817.4">C</a><ul> 5060 5014 <li><em>Section 7.1</em> <a href="#rfc.xref.RFC2817.1">10.2</a>, <a href="#rfc.xref.RFC2817.3">C</a></li> 5061 5015 </ul> 5062 5016 </li> 5063 <li><em>RFC3629</em> <a href="#rfc.xref.RFC3629.1">5.3</a>, <a href="#RFC3629"><b>1 3.2</b></a></li>5064 <li><em>RFC3864</em> <a href="#rfc.xref.RFC3864.1">3.1</a>, <a href="#rfc.xref.RFC3864.2">3.1</a>, <a href="#rfc.xref.RFC3864.3">10.3</a>, <a href="#RFC3864"><b>1 3.2</b></a><ul>5017 <li><em>RFC3629</em> <a href="#rfc.xref.RFC3629.1">5.3</a>, <a href="#RFC3629"><b>14.2</b></a></li> 5018 <li><em>RFC3864</em> <a href="#rfc.xref.RFC3864.1">3.1</a>, <a href="#rfc.xref.RFC3864.2">3.1</a>, <a href="#rfc.xref.RFC3864.3">10.3</a>, <a href="#RFC3864"><b>14.2</b></a><ul> 5065 5019 <li><em>Section 4.1</em> <a href="#rfc.xref.RFC3864.2">3.1</a></li> 5066 5020 </ul> 5067 5021 </li> 5068 <li><em>RFC3986</em> <a href="#rfc.xref.RFC3986.1">9.13</a>, <a href="#rfc.xref.RFC3986.2">9.13</a>, <a href="#RFC3986"><b>1 3.1</b></a><ul>5022 <li><em>RFC3986</em> <a href="#rfc.xref.RFC3986.1">9.13</a>, <a href="#rfc.xref.RFC3986.2">9.13</a>, <a href="#RFC3986"><b>14.1</b></a><ul> 5069 5023 <li><em>Section 4.2</em> <a href="#rfc.xref.RFC3986.1">9.13</a></li> 5070 5024 <li><em>Section 5</em> <a href="#rfc.xref.RFC3986.2">9.13</a></li> 5071 5025 </ul> 5072 5026 </li> 5073 <li><em>RFC4288</em> <a href="#rfc.xref.RFC4288.1">5.5</a>, <a href="#RFC4288"><b>1 3.2</b></a></li>5074 <li><em>RFC4647</em> <a href="#rfc.xref.RFC4647.1">9.4</a>, <a href="#rfc.xref.RFC4647.2">9.4</a>, <a href="#rfc.xref.RFC4647.3">9.4</a>, <a href="#rfc.xref.RFC4647.4">9.4</a>, <a href="#RFC4647"><b>1 3.1</b></a><ul>5027 <li><em>RFC4288</em> <a href="#rfc.xref.RFC4288.1">5.5</a>, <a href="#RFC4288"><b>14.2</b></a></li> 5028 <li><em>RFC4647</em> <a href="#rfc.xref.RFC4647.1">9.4</a>, <a href="#rfc.xref.RFC4647.2">9.4</a>, <a href="#rfc.xref.RFC4647.3">9.4</a>, <a href="#rfc.xref.RFC4647.4">9.4</a>, <a href="#RFC4647"><b>14.1</b></a><ul> 5075 5029 <li><em>Section 2.1</em> <a href="#rfc.xref.RFC4647.1">9.4</a></li> 5076 5030 <li><em>Section 2.3</em> <a href="#rfc.xref.RFC4647.2">9.4</a></li> … … 5079 5033 </ul> 5080 5034 </li> 5081 <li><em>RFC5226</em> <a href="#rfc.xref.RFC5226.1">2.2</a>, <a href="#rfc.xref.RFC5226.2">4.2</a>, <a href="#rfc.xref.RFC5226.3">5.4.1</a>, <a href="#RFC5226"><b>1 3.2</b></a><ul>5035 <li><em>RFC5226</em> <a href="#rfc.xref.RFC5226.1">2.2</a>, <a href="#rfc.xref.RFC5226.2">4.2</a>, <a href="#rfc.xref.RFC5226.3">5.4.1</a>, <a href="#RFC5226"><b>14.2</b></a><ul> 5082 5036 <li><em>Section 4.1</em> <a href="#rfc.xref.RFC5226.1">2.2</a>, <a href="#rfc.xref.RFC5226.2">4.2</a>, <a href="#rfc.xref.RFC5226.3">5.4.1</a></li> 5083 5037 </ul> 5084 5038 </li> 5085 <li><em>RFC5234</em> <a href="#rfc.xref.RFC5234.1"> 1.3</a>, <a href="#rfc.xref.RFC5234.2">1.3</a>, <a href="#rfc.xref.RFC5234.3">3.1</a>, <a href="#RFC5234"><b>13.1</b></a><ul>5086 <li><em>Appendix B.1</em> <a href="#rfc.xref.RFC5234. 2">1.3</a></li>5039 <li><em>RFC5234</em> <a href="#rfc.xref.RFC5234.1">3.1</a>, <a href="#rfc.xref.RFC5234.2">11</a>, <a href="#rfc.xref.RFC5234.3">11</a>, <a href="#RFC5234"><b>14.1</b></a><ul> 5040 <li><em>Appendix B.1</em> <a href="#rfc.xref.RFC5234.3">11</a></li> 5087 5041 </ul> 5088 5042 </li> 5089 <li><em>RFC5322</em> <a href="#rfc.xref.RFC5322.1">5.1</a>, <a href="#rfc.xref.RFC5322.2">9.10</a>, <a href="#rfc.xref.RFC5322.3">9.12</a>, <a href="#rfc.xref.RFC5322.4">9.12</a>, <a href="#RFC5322"><b>1 3.2</b></a>, <a href="#rfc.xref.RFC5322.5">A</a><ul>5043 <li><em>RFC5322</em> <a href="#rfc.xref.RFC5322.1">5.1</a>, <a href="#rfc.xref.RFC5322.2">9.10</a>, <a href="#rfc.xref.RFC5322.3">9.12</a>, <a href="#rfc.xref.RFC5322.4">9.12</a>, <a href="#RFC5322"><b>14.2</b></a>, <a href="#rfc.xref.RFC5322.5">A</a><ul> 5090 5044 <li><em>Section 3.3</em> <a href="#rfc.xref.RFC5322.1">5.1</a></li> 5091 5045 <li><em>Section 3.4</em> <a href="#rfc.xref.RFC5322.3">9.12</a>, <a href="#rfc.xref.RFC5322.4">9.12</a></li> … … 5093 5047 </ul> 5094 5048 </li> 5095 <li><em>RFC5646</em> <a href="#rfc.xref.RFC5646.1">5.6</a>, <a href="#rfc.xref.RFC5646.2">5.6</a>, <a href="#rfc.xref.RFC5646.3">5.6</a>, <a href="#RFC5646"><b>1 3.1</b></a><ul>5049 <li><em>RFC5646</em> <a href="#rfc.xref.RFC5646.1">5.6</a>, <a href="#rfc.xref.RFC5646.2">5.6</a>, <a href="#rfc.xref.RFC5646.3">5.6</a>, <a href="#RFC5646"><b>14.1</b></a><ul> 5096 5050 <li><em>Section 2.1</em> <a href="#rfc.xref.RFC5646.2">5.6</a></li> 5097 5051 </ul> 5098 5052 </li> 5099 <li><em>RFC5789</em> <a href="#rfc.xref.RFC5789.1">2.3.5</a>, <a href="#RFC5789"><b>1 3.2</b></a></li>5100 <li><em>RFC5987</em> <a href="#rfc.xref.RFC5987.1">3.1</a>, <a href="#RFC5987"><b>1 3.2</b></a></li>5101 <li><em>RFC6151</em> <a href="#RFC6151"><b>1 3.2</b></a>, <a href="#rfc.xref.RFC6151.1">C</a></li>5102 <li><em>RFC6266</em> <a href="#RFC6266"><b>1 3.2</b></a>, <a href="#rfc.xref.RFC6266.1">B</a>, <a href="#rfc.xref.RFC6266.2">C</a></li>5053 <li><em>RFC5789</em> <a href="#rfc.xref.RFC5789.1">2.3.5</a>, <a href="#RFC5789"><b>14.2</b></a></li> 5054 <li><em>RFC5987</em> <a href="#rfc.xref.RFC5987.1">3.1</a>, <a href="#RFC5987"><b>14.2</b></a></li> 5055 <li><em>RFC6151</em> <a href="#RFC6151"><b>14.2</b></a>, <a href="#rfc.xref.RFC6151.1">C</a></li> 5056 <li><em>RFC6266</em> <a href="#RFC6266"><b>14.2</b></a>, <a href="#rfc.xref.RFC6266.1">B</a>, <a href="#rfc.xref.RFC6266.2">C</a></li> 5103 5057 </ul> 5104 5058 </li> 5105 5059 <li><a id="rfc.index.S" href="#rfc.index.S"><b>S</b></a><ul> 5106 <li>Safe Methods <a href="#rfc.iref.s. 2"><b>2.1.1</b></a></li>5107 <li>selected representation <a href="#rfc.iref.s. 1"><b>1.1</b></a></li>5108 <li>Server header field <a href="#rfc.xref.header.server.1">3.3</a>, <a href="#rfc.iref.s.44"><b>9.17</b></a>, <a href="#rfc.xref.header.server.2">10.3</a>, <a href="#rfc.xref.header.server.3">1 1.1</a>, <a href="#rfc.xref.header.server.4">C</a></li>5060 <li>Safe Methods <a href="#rfc.iref.s.1"><b>2.1.1</b></a></li> 5061 <li>selected representation <a href="#rfc.iref.s.43"><b>7.2</b></a></li> 5062 <li>Server header field <a href="#rfc.xref.header.server.1">3.3</a>, <a href="#rfc.iref.s.44"><b>9.17</b></a>, <a href="#rfc.xref.header.server.2">10.3</a>, <a href="#rfc.xref.header.server.3">12.1</a>, <a href="#rfc.xref.header.server.4">C</a></li> 5109 5063 <li>Status Codes 5110 5064 <ul> 5111 <li>100 Continue <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.s. 4"><b>4.3.1</b></a>, <a href="#rfc.xref.status.100.2">10.2</a></li>5112 <li>101 Switching Protocols <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.s. 5"><b>4.3.2</b></a>, <a href="#rfc.xref.status.101.2">10.2</a></li>5113 <li>200 OK <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.s. 7"><b>4.4.1</b></a>, <a href="#rfc.xref.status.200.2">10.2</a></li>5114 <li>201 Created <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.s. 8"><b>4.4.2</b></a>, <a href="#rfc.xref.status.201.2">10.2</a></li>5115 <li>202 Accepted <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.s. 9"><b>4.4.3</b></a>, <a href="#rfc.xref.status.202.2">10.2</a></li>5116 <li>203 Non-Authoritative Information <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.s. 10"><b>4.4.4</b></a>, <a href="#rfc.xref.status.203.2">10.2</a>, <a href="#rfc.xref.status.203.3">C</a></li>5117 <li>204 No Content <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.s.1 1"><b>4.4.5</b></a>, <a href="#rfc.xref.status.204.2">10.2</a></li>5118 <li>205 Reset Content <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.s.1 2"><b>4.4.6</b></a>, <a href="#rfc.xref.status.205.2">10.2</a></li>5119 <li>300 Multiple Choices <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.s.1 4"><b>4.5.1</b></a>, <a href="#rfc.xref.status.300.2">10.2</a></li>5120 <li>301 Moved Permanently <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.s.1 5"><b>4.5.2</b></a>, <a href="#rfc.xref.status.301.2">10.2</a>, <a href="#rfc.xref.status.301.3">C</a></li>5121 <li>302 Found <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.s.1 6"><b>4.5.3</b></a>, <a href="#rfc.xref.status.302.2">10.2</a>, <a href="#rfc.xref.status.302.3">C</a></li>5122 <li>303 See Other <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.iref.s.1 7"><b>4.5.4</b></a>, <a href="#rfc.xref.status.303.2">10.2</a></li>5123 <li>305 Use Proxy <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.s.1 8"><b>4.5.5</b></a>, <a href="#rfc.xref.status.305.2">10.2</a>, <a href="#rfc.xref.status.305.3">C</a></li>5124 <li>306 (Unused) <a href="#rfc.iref.s.1 9"><b>4.5.6</b></a>, <a href="#rfc.xref.status.306.1">10.2</a></li>5125 <li>307 Temporary Redirect <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.iref.s. 20"><b>4.5.7</b></a>, <a href="#rfc.xref.status.307.2">10.2</a>, <a href="#rfc.xref.status.307.3">C</a></li>5126 <li>400 Bad Request <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.s.2 2"><b>4.6.1</b></a>, <a href="#rfc.xref.status.400.2">10.2</a></li>5127 <li>402 Payment Required <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.s.2 3"><b>4.6.2</b></a>, <a href="#rfc.xref.status.402.2">10.2</a></li>5128 <li>403 Forbidden <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.s.2 4"><b>4.6.3</b></a>, <a href="#rfc.xref.status.403.2">10.2</a></li>5129 <li>404 Not Found <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.s.2 5"><b>4.6.4</b></a>, <a href="#rfc.xref.status.404.2">10.2</a></li>5130 <li>405 Method Not Allowed <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.s.2 6"><b>4.6.5</b></a>, <a href="#rfc.xref.status.405.2">10.2</a></li>5131 <li>406 Not Acceptable <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.s.2 7"><b>4.6.6</b></a>, <a href="#rfc.xref.status.406.2">10.2</a></li>5132 <li>408 Request Timeout <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.s.2 8"><b>4.6.7</b></a>, <a href="#rfc.xref.status.408.2">10.2</a></li>5133 <li>409 Conflict <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.s.2 9"><b>4.6.8</b></a>, <a href="#rfc.xref.status.409.2">10.2</a></li>5134 <li>410 Gone <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.s. 30"><b>4.6.9</b></a>, <a href="#rfc.xref.status.410.2">10.2</a></li>5135 <li>411 Length Required <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.s.3 1"><b>4.6.10</b></a>, <a href="#rfc.xref.status.411.2">10.2</a></li>5136 <li>413 Request Representation Too Large <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.s.3 2"><b>4.6.11</b></a>, <a href="#rfc.xref.status.413.2">10.2</a></li>5137 <li>414 URI Too Long <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.s.3 3"><b>4.6.12</b></a>, <a href="#rfc.xref.status.414.2">10.2</a></li>5138 <li>415 Unsupported Media Type <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.s.3 4"><b>4.6.13</b></a>, <a href="#rfc.xref.status.415.2">10.2</a></li>5139 <li>417 Expectation Failed <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.s.3 5"><b>4.6.14</b></a>, <a href="#rfc.xref.status.417.2">10.2</a></li>5140 <li>426 Upgrade Required <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.s.3 6"><b>4.6.15</b></a>, <a href="#rfc.xref.status.426.2">10.2</a>, <a href="#rfc.xref.status.426.3">C</a></li>5141 <li>500 Internal Server Error <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.s.3 8"><b>4.7.1</b></a>, <a href="#rfc.xref.status.500.2">10.2</a></li>5142 <li>501 Not Implemented <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.s.3 9"><b>4.7.2</b></a>, <a href="#rfc.xref.status.501.2">10.2</a></li>5143 <li>502 Bad Gateway <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.s. 40"><b>4.7.3</b></a>, <a href="#rfc.xref.status.502.2">10.2</a></li>5144 <li>503 Service Unavailable <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.s.4 1"><b>4.7.4</b></a>, <a href="#rfc.xref.status.503.2">10.2</a></li>5145 <li>504 Gateway Timeout <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.s.4 2"><b>4.7.5</b></a>, <a href="#rfc.xref.status.504.2">10.2</a></li>5146 <li>505 HTTP Version Not Supported <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.s.4 3"><b>4.7.6</b></a>, <a href="#rfc.xref.status.505.2">10.2</a></li>5065 <li>100 Continue <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.s.3"><b>4.3.1</b></a>, <a href="#rfc.xref.status.100.2">10.2</a></li> 5066 <li>101 Switching Protocols <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.s.4"><b>4.3.2</b></a>, <a href="#rfc.xref.status.101.2">10.2</a></li> 5067 <li>200 OK <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.s.6"><b>4.4.1</b></a>, <a href="#rfc.xref.status.200.2">10.2</a></li> 5068 <li>201 Created <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.s.7"><b>4.4.2</b></a>, <a href="#rfc.xref.status.201.2">10.2</a></li> 5069 <li>202 Accepted <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.s.8"><b>4.4.3</b></a>, <a href="#rfc.xref.status.202.2">10.2</a></li> 5070 <li>203 Non-Authoritative Information <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.s.9"><b>4.4.4</b></a>, <a href="#rfc.xref.status.203.2">10.2</a>, <a href="#rfc.xref.status.203.3">C</a></li> 5071 <li>204 No Content <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.s.10"><b>4.4.5</b></a>, <a href="#rfc.xref.status.204.2">10.2</a></li> 5072 <li>205 Reset Content <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.s.11"><b>4.4.6</b></a>, <a href="#rfc.xref.status.205.2">10.2</a></li> 5073 <li>300 Multiple Choices <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.s.13"><b>4.5.1</b></a>, <a href="#rfc.xref.status.300.2">10.2</a></li> 5074 <li>301 Moved Permanently <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.s.14"><b>4.5.2</b></a>, <a href="#rfc.xref.status.301.2">10.2</a>, <a href="#rfc.xref.status.301.3">C</a></li> 5075 <li>302 Found <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.s.15"><b>4.5.3</b></a>, <a href="#rfc.xref.status.302.2">10.2</a>, <a href="#rfc.xref.status.302.3">C</a></li> 5076 <li>303 See Other <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.iref.s.16"><b>4.5.4</b></a>, <a href="#rfc.xref.status.303.2">10.2</a></li> 5077 <li>305 Use Proxy <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.s.17"><b>4.5.5</b></a>, <a href="#rfc.xref.status.305.2">10.2</a>, <a href="#rfc.xref.status.305.3">C</a></li> 5078 <li>306 (Unused) <a href="#rfc.iref.s.18"><b>4.5.6</b></a>, <a href="#rfc.xref.status.306.1">10.2</a></li> 5079 <li>307 Temporary Redirect <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.iref.s.19"><b>4.5.7</b></a>, <a href="#rfc.xref.status.307.2">10.2</a>, <a href="#rfc.xref.status.307.3">C</a></li> 5080 <li>400 Bad Request <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.s.21"><b>4.6.1</b></a>, <a href="#rfc.xref.status.400.2">10.2</a></li> 5081 <li>402 Payment Required <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.s.22"><b>4.6.2</b></a>, <a href="#rfc.xref.status.402.2">10.2</a></li> 5082 <li>403 Forbidden <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.s.23"><b>4.6.3</b></a>, <a href="#rfc.xref.status.403.2">10.2</a></li> 5083 <li>404 Not Found <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.s.24"><b>4.6.4</b></a>, <a href="#rfc.xref.status.404.2">10.2</a></li> 5084 <li>405 Method Not Allowed <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.s.25"><b>4.6.5</b></a>, <a href="#rfc.xref.status.405.2">10.2</a></li> 5085 <li>406 Not Acceptable <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.s.26"><b>4.6.6</b></a>, <a href="#rfc.xref.status.406.2">10.2</a></li> 5086 <li>408 Request Timeout <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.s.27"><b>4.6.7</b></a>, <a href="#rfc.xref.status.408.2">10.2</a></li> 5087 <li>409 Conflict <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.s.28"><b>4.6.8</b></a>, <a href="#rfc.xref.status.409.2">10.2</a></li> 5088 <li>410 Gone <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.s.29"><b>4.6.9</b></a>, <a href="#rfc.xref.status.410.2">10.2</a></li> 5089 <li>411 Length Required <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.s.30"><b>4.6.10</b></a>, <a href="#rfc.xref.status.411.2">10.2</a></li> 5090 <li>413 Request Representation Too Large <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.s.31"><b>4.6.11</b></a>, <a href="#rfc.xref.status.413.2">10.2</a></li> 5091 <li>414 URI Too Long <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.s.32"><b>4.6.12</b></a>, <a href="#rfc.xref.status.414.2">10.2</a></li> 5092 <li>415 Unsupported Media Type <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.s.33"><b>4.6.13</b></a>, <a href="#rfc.xref.status.415.2">10.2</a></li> 5093 <li>417 Expectation Failed <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.s.34"><b>4.6.14</b></a>, <a href="#rfc.xref.status.417.2">10.2</a></li> 5094 <li>426 Upgrade Required <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.s.35"><b>4.6.15</b></a>, <a href="#rfc.xref.status.426.2">10.2</a>, <a href="#rfc.xref.status.426.3">C</a></li> 5095 <li>500 Internal Server Error <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.s.37"><b>4.7.1</b></a>, <a href="#rfc.xref.status.500.2">10.2</a></li> 5096 <li>501 Not Implemented <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.s.38"><b>4.7.2</b></a>, <a href="#rfc.xref.status.501.2">10.2</a></li> 5097 <li>502 Bad Gateway <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.s.39"><b>4.7.3</b></a>, <a href="#rfc.xref.status.502.2">10.2</a></li> 5098 <li>503 Service Unavailable <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.s.40"><b>4.7.4</b></a>, <a href="#rfc.xref.status.503.2">10.2</a></li> 5099 <li>504 Gateway Timeout <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.s.41"><b>4.7.5</b></a>, <a href="#rfc.xref.status.504.2">10.2</a></li> 5100 <li>505 HTTP Version Not Supported <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.s.42"><b>4.7.6</b></a>, <a href="#rfc.xref.status.505.2">10.2</a></li> 5147 5101 </ul> 5148 5102 </li> 5149 5103 <li>Status Codes Classes 5150 5104 <ul> 5151 <li>1xx Informational <a href="#rfc.iref.s. 3"><b>4.3</b></a></li>5152 <li>2xx Successful <a href="#rfc.iref.s. 6"><b>4.4</b></a></li>5153 <li>3xx Redirection <a href="#rfc.iref.s.1 3"><b>4.5</b></a>, <a href="#rfc.xref.status.3xx.1">C</a></li>5154 <li>4xx Client Error <a href="#rfc.iref.s.2 1"><b>4.6</b></a></li>5155 <li>5xx Server Error <a href="#rfc.iref.s.3 7"><b>4.7</b></a></li>5105 <li>1xx Informational <a href="#rfc.iref.s.2"><b>4.3</b></a></li> 5106 <li>2xx Successful <a href="#rfc.iref.s.5"><b>4.4</b></a></li> 5107 <li>3xx Redirection <a href="#rfc.iref.s.12"><b>4.5</b></a>, <a href="#rfc.xref.status.3xx.1">C</a></li> 5108 <li>4xx Client Error <a href="#rfc.iref.s.20"><b>4.6</b></a></li> 5109 <li>5xx Server Error <a href="#rfc.iref.s.36"><b>4.7</b></a></li> 5156 5110 </ul> 5157 5111 </li> … … 5159 5113 </li> 5160 5114 <li><a id="rfc.index.T" href="#rfc.index.T"><b>T</b></a><ul> 5161 <li>TRACE method <a href="#rfc.iref.t.1"><b>2.3.7</b></a>, <a href="#rfc.xref.TRACE.1">9.14</a>, <a href="#rfc.xref.TRACE.2">10.1</a>, <a href="#rfc.xref.TRACE.3">1 1.1</a></li>5115 <li>TRACE method <a href="#rfc.iref.t.1"><b>2.3.7</b></a>, <a href="#rfc.xref.TRACE.1">9.14</a>, <a href="#rfc.xref.TRACE.2">10.1</a>, <a href="#rfc.xref.TRACE.3">12.1</a></li> 5162 5116 </ul> 5163 5117 </li> 5164 5118 <li><a id="rfc.index.U" href="#rfc.index.U"><b>U</b></a><ul> 5165 <li>User-Agent header field <a href="#rfc.xref.header.user-agent.1">3.2</a>, <a href="#rfc.xref.header.user-agent.2">8.1</a>, <a href="#rfc.iref.u.1"><b>9.18</b></a>, <a href="#rfc.xref.header.user-agent.3">10.3</a>, <a href="#rfc.xref.header.user-agent.4">1 1.1</a></li>5119 <li>User-Agent header field <a href="#rfc.xref.header.user-agent.1">3.2</a>, <a href="#rfc.xref.header.user-agent.2">8.1</a>, <a href="#rfc.iref.u.1"><b>9.18</b></a>, <a href="#rfc.xref.header.user-agent.3">10.3</a>, <a href="#rfc.xref.header.user-agent.4">12.1</a></li> 5166 5120 </ul> 5167 5121 </li> -
draft-ietf-httpbis/latest/p2-semantics.xml
r1778 r1781 188 188 distributed, collaborative, hypertext information systems. HTTP has been in 189 189 use by the World Wide Web global information initiative since 1990. This 190 document is Part 2 of the s even-part specification that defines the protocol191 referred to as "HTTP/1.1" and, taken together, obsoletes RFC 2616.192 </t> 193 <t> 194 Part 2 defines the semantics of HTTP messages as expressed by request190 document is Part 2 of the six-part specification that defines the protocol 191 referred to as "HTTP/1.1". 192 </t> 193 <t> 194 Part 2 defines the semantics of HTTP messages, as expressed by request 195 195 methods, request header fields, response status codes, and response header 196 fields . Furthermore, it defines HTTP message content, metadata, and content197 negotiation.196 fields, the payload of messages as metadata and body content, and the 197 mechanisms for content negotiation. 198 198 </t> 199 199 </abstract> … … 219 219 <section title="Introduction" anchor="introduction"> 220 220 <t> 221 This document defines HTTP/1.1 request and response semantics. Each HTTP 222 message, as defined in &messaging;, is in the form of either a request or 223 a response. An HTTP server listens on a connection for HTTP requests and 224 responds to each request, in the order received on that connection, with 225 one or more HTTP response messages. This document defines the commonly 226 agreed upon semantics of the HTTP uniform interface, the intentions defined 227 by each request method, and the various response messages that might be 228 expected as a result of applying that method to the target resource. 229 </t> 230 <t> 231 Furthermore, it defines HTTP/1.1 message payloads (a.k.a., content), the 232 associated metadata header fields that define how the payload is intended 233 to be interpreted by a recipient, the request header fields that 234 might influence content selection, and the various selection algorithms 235 that are collectively referred to as HTTP content negotiation. 236 </t> 237 <t> 221 This document defines HTTP/1.1 request and response semantics in terms of 222 the architecture, syntax notation, and conformance criteria defined in 223 &architecture;. Each HTTP message is either a request or a response. 224 A server listens on a connection for a request, parses each message 225 received, interprets the message semantics in relation to the identified 226 request target, and responds to that request with one or more response 227 messages. 228 </t> 229 <t> 230 HTTP provides a uniform interface for interacting with resources regardless 231 of their type, nature, or implementation. HTTP semantics includes the 232 intentions defined by each request method, extensions to those semantics 233 that might be described in request header fields, the meaning of status 234 codes to indicate a machine-readable response, and additional control data 235 and resource metadata that might be given in response header fields. 236 </t> 237 <t><iref item="content negotiation"/> 238 In addition, this document defines the payload of messages (a.k.a., 239 content), the associated metadata header fields that define how the payload 240 is intended to be interpreted by a recipient, the request header fields 241 that might influence content selection, and the various selection 242 algorithms that are collectively referred to as 243 "<x:dfn>content negotiation</x:dfn>". 244 </t> 245 <x:note><t> 238 246 This document is currently disorganized in order to minimize the changes 239 247 between drafts and enable reviewers to see the smaller errata changes. … … 245 253 reflects how widely dispersed these topics and associated requirements 246 254 had become in <xref target="RFC2616"/>. 247 </t> 248 249 <section title="Terminology" anchor="terminology"> 250 <t> 251 This specification uses a number of terms to refer to the roles 252 played by participants in, and objects of, the HTTP communication. 253 </t> 254 <t> 255 <iref item="content negotiation"/> 256 <x:dfn>content negotiation</x:dfn> 257 <list> 258 <t> 259 The mechanism for selecting the appropriate representation when 260 servicing a request. The representation in any response 261 can be negotiated (including error responses). 262 </t> 263 </list> 264 </t> 265 <t> 266 <iref primary="true" item="selected representation"/> 267 <x:dfn>selected representation</x:dfn> 268 <list> 269 <t> 270 The current representation of the target resource that would have been 271 selected in a successful response if the same request had used the 272 method GET and excluded any conditional request header fields. 273 </t> 274 </list> 275 </t> 276 </section> 277 278 <section title="Conformance and Error Handling" anchor="intro.conformance.and.error.handling"> 279 <t> 280 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 281 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 282 document are to be interpreted as described in <xref target="RFC2119"/>. 283 </t> 284 <t> 285 This specification targets conformance criteria according to the role of 286 a participant in HTTP communication. Hence, HTTP requirements are placed 287 on senders, recipients, clients, servers, user agents, intermediaries, 288 origin servers, proxies, gateways, or caches, depending on what behavior 289 is being constrained by the requirement. See &architecture; for definitions 290 of these terms. 291 </t> 292 <t> 293 The verb "generate" is used instead of "send" where a requirement 294 differentiates between creating a protocol element and merely forwarding a 295 received element downstream. 296 </t> 297 <t> 298 An implementation is considered conformant if it complies with all of the 299 requirements associated with the roles it partakes in HTTP. Note that 300 SHOULD-level requirements are relevant here, unless one of the documented 301 exceptions is applicable. 302 </t> 303 <t> 304 This document also uses ABNF to define valid protocol elements 305 (<xref target="notation"/>). 306 In addition to the prose requirements placed upon them, senders &MUST-NOT; 307 generate protocol elements that do not match the grammar defined by the 308 ABNF rules for those protocol elements that are applicable to the sender's 309 role. If a received protocol element is processed, the recipient &MUST; be 310 able to parse any value that would match the ABNF rules for that protocol 311 element, excluding only those rules not applicable to the recipient's role. 312 </t> 313 <t> 314 Unless noted otherwise, a recipient &MAY; attempt to recover a usable 315 protocol element from an invalid construct. HTTP does not define 316 specific error handling mechanisms except when they have a direct impact 317 on security, since different applications of the protocol require 318 different error handling strategies. For example, a Web browser might 319 wish to transparently recover from a response where the 320 <x:ref>Location</x:ref> header field doesn't parse according to the ABNF, 321 whereas a systems control client might consider any form of error recovery 322 to be dangerous. 323 </t> 324 </section> 325 326 <section title="Syntax Notation" anchor="notation"> 327 <x:anchor-alias value="ALPHA"/> 328 <x:anchor-alias value="CR"/> 329 <x:anchor-alias value="DIGIT"/> 330 <x:anchor-alias value="LF"/> 331 <x:anchor-alias value="OCTET"/> 332 <x:anchor-alias value="SP"/> 333 <x:anchor-alias value="VCHAR"/> 334 <t> 335 This specification uses the Augmented Backus-Naur Form (ABNF) notation 336 of <xref target="RFC5234"/> with the list rule extension defined in 337 ¬ation;. <xref target="collected.abnf"/> shows the collected ABNF 338 with the list rule expanded. 339 </t> 340 <t> 341 The following core rules are included by 342 reference, as defined in <xref target="RFC5234" x:fmt="," x:sec="B.1"/>: 343 ALPHA (letters), CR (carriage return), CRLF (CR LF), CTL (controls), 344 DIGIT (decimal 0-9), DQUOTE (double quote), 345 HEXDIG (hexadecimal 0-9/A-F/a-f), HTAB (horizontal tab), LF (line feed), 346 OCTET (any 8-bit sequence of data), SP (space), and 347 VCHAR (any visible US-ASCII character). 348 </t> 349 350 <section title="Core Rules" anchor="core.rules"> 351 <x:anchor-alias value="quoted-string"/> 352 <x:anchor-alias value="token"/> 353 <x:anchor-alias value="word"/> 354 <x:anchor-alias value="BWS"/> 355 <x:anchor-alias value="OWS"/> 356 <x:anchor-alias value="RWS"/> 357 <t> 358 The core rules below are defined in <xref target="Part1"/>: 359 </t> 360 <figure><artwork type="abnf2616"> 361 <x:ref>BWS</x:ref> = <BWS, defined in &whitespace;> 362 <x:ref>OWS</x:ref> = <OWS, defined in &whitespace;> 363 <x:ref>RWS</x:ref> = <RWS, defined in &whitespace;> 364 <x:ref>quoted-string</x:ref> = <quoted-string, defined in &field-components;> 365 <x:ref>token</x:ref> = <token, defined in &field-components;> 366 <x:ref>word</x:ref> = <word, defined in &field-components;> 367 </artwork></figure> 368 </section> 369 370 <section title="ABNF Rules defined in other Parts of the Specification" anchor="abnf.dependencies"> 371 <x:anchor-alias value="absolute-URI"/> 372 <x:anchor-alias value="comment"/> 373 <x:anchor-alias value="partial-URI"/> 374 <x:anchor-alias value="qvalue"/> 375 <x:anchor-alias value="URI-reference"/> 376 <t> 377 The ABNF rules below are defined in other parts: 378 </t> 379 <figure><!--Part1--><artwork type="abnf2616"> 380 <x:ref>absolute-URI</x:ref> = <absolute-URI, defined in &uri;> 381 <x:ref>comment</x:ref> = <comment, defined in &field-components;> 382 <x:ref>partial-URI</x:ref> = <partial-URI, defined in &uri;> 383 <x:ref>qvalue</x:ref> = <qvalue, defined in &qvalue;> 384 <x:ref>URI-reference</x:ref> = <URI-reference, defined in &uri;> 385 </artwork></figure> 386 </section> 387 </section> 255 </t></x:note> 388 256 </section> 389 257 … … 2781 2649 <c>Expires</c> <c>&header-expires;</c> 2782 2650 </texttable> 2651 <t><iref primary="true" item="selected representation"/> 2652 We use the term "<x:dfn>selected representation</x:dfn>" to refer to the 2653 the current representation of a target resource that would have been 2654 selected in a successful response if the same request had used the 2655 method GET and excluded any conditional request header fields. 2656 </t> 2783 2657 <t> 2784 2658 Additional header fields define metadata about the selected … … 3797 3671 &Note; Some recipients attempt to recover from Location fields 3798 3672 that are not valid URI references. This specification does not mandate or 3799 define such processing, but does allow it (see <xref target="intro.conformance.and.error.handling"/>).3673 define such processing, but does allow it. 3800 3674 </t> 3801 3675 </x:note> … … 4462 4336 </section> 4463 4337 4338 <section title="ABNF Rules Defined Elsewhere" anchor="abnf.dependencies"> 4339 <x:anchor-alias value="ALPHA"/> 4340 <x:anchor-alias value="CR"/> 4341 <x:anchor-alias value="DIGIT"/> 4342 <x:anchor-alias value="LF"/> 4343 <x:anchor-alias value="OCTET"/> 4344 <x:anchor-alias value="SP"/> 4345 <x:anchor-alias value="VCHAR"/> 4346 <x:anchor-alias value="BWS"/> 4347 <x:anchor-alias value="OWS"/> 4348 <x:anchor-alias value="RWS"/> 4349 <x:anchor-alias value="absolute-URI"/> 4350 <x:anchor-alias value="comment"/> 4351 <x:anchor-alias value="partial-URI"/> 4352 <x:anchor-alias value="qvalue"/> 4353 <x:anchor-alias value="URI-reference"/> 4354 <x:anchor-alias value="quoted-string"/> 4355 <x:anchor-alias value="token"/> 4356 <x:anchor-alias value="word"/> 4357 <t> 4358 This specification uses the Augmented Backus-Naur Form (ABNF) notation 4359 of <xref target="RFC5234"/> with the list rule extension defined in 4360 ¬ation;. <xref target="collected.abnf"/> shows the collected ABNF 4361 with the list rule expanded. 4362 </t> 4363 <t> 4364 The following core rules are included by 4365 reference, as defined in <xref target="RFC5234" x:fmt="," x:sec="B.1"/>: 4366 ALPHA (letters), CR (carriage return), CRLF (CR LF), CTL (controls), 4367 DIGIT (decimal 0-9), DQUOTE (double quote), 4368 HEXDIG (hexadecimal 0-9/A-F/a-f), HTAB (horizontal tab), LF (line feed), 4369 OCTET (any 8-bit sequence of data), SP (space), and 4370 VCHAR (any visible US-ASCII character). 4371 </t> 4372 <t> 4373 The ABNF rules below are defined in other parts: 4374 </t> 4375 <figure><artwork type="abnf2616"> 4376 <x:ref>BWS</x:ref> = <BWS, defined in &whitespace;> 4377 <x:ref>OWS</x:ref> = <OWS, defined in &whitespace;> 4378 <x:ref>RWS</x:ref> = <RWS, defined in &whitespace;> 4379 <x:ref>URI-reference</x:ref> = <URI-reference, defined in &uri;> 4380 <x:ref>absolute-URI</x:ref> = <absolute-URI, defined in &uri;> 4381 <x:ref>partial-URI</x:ref> = <partial-URI, defined in &uri;> 4382 <x:ref>quoted-string</x:ref> = <quoted-string, defined in &field-components;> 4383 <x:ref>qvalue</x:ref> = <qvalue, defined in &qvalue;> 4384 <x:ref>token</x:ref> = <token, defined in &field-components;> 4385 <x:ref>word</x:ref> = <word, defined in &field-components;> 4386 <x:ref>comment</x:ref> = <comment, defined in &field-components;> 4387 </artwork></figure> 4388 </section> 4389 4464 4390 <section title="Security Considerations" anchor="security.considerations"> 4465 4391 <t> … … 4871 4797 <seriesInfo name="RFC" value="2046"/> 4872 4798 </reference> 4873 4799 <!-- 4874 4800 <reference anchor="RFC2119"> 4875 4801 <front> … … 4884 4810 <seriesInfo name="RFC" value="2119"/> 4885 4811 </reference> 4886 4812 --> 4887 4813 <reference anchor="RFC3986"> 4888 4814 <front>
Note: See TracChangeset
for help on using the changeset viewer.