Changeset 1857
- Timestamp:
- 03/09/12 21:12:46 (10 years ago)
- Location:
- draft-ietf-httpbis/latest
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/p2-semantics.html
r1856 r1857 480 480 <link rel="Chapter" title="8 Response Header Fields" href="#rfc.section.8"> 481 481 <link rel="Chapter" title="9 Protocol Parameters" href="#rfc.section.9"> 482 <link rel="Chapter" title="10 Header Field Definitions" href="#rfc.section.10"> 483 <link rel="Chapter" title="11 IANA Considerations" 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"> 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"> 487 486 <link rel="Appendix" title="A Differences between HTTP and MIME" href="#rfc.section.A"> 488 487 <link rel="Appendix" title="B Additional Features" href="#rfc.section.B"> … … 588 587 <li><a href="#rfc.section.3">3.</a> <a href="#representation">Representation</a><ul> 589 588 <li><a href="#rfc.section.3.1">3.1</a> <a href="#identifying.response.associated.with.representation">Identifying the Resource Associated with a Representation</a></li> 590 <li><a href="#rfc.section.3.2">3.2</a> <a href="#representation.header.fields">Representation Header Fields</a></li> 591 <li><a href="#rfc.section.3.3">3.3</a> <a href="#representation.data">Representation Data</a></li> 592 <li><a href="#rfc.section.3.4">3.4</a> <a href="#content.negotiation">Content Negotiation</a><ul> 593 <li><a href="#rfc.section.3.4.1">3.4.1</a> <a href="#server-driven.negotiation">Server-driven Negotiation</a></li> 594 <li><a href="#rfc.section.3.4.2">3.4.2</a> <a href="#agent-driven.negotiation">Agent-driven Negotiation</a></li> 595 <li><a href="#rfc.section.3.4.3">3.4.3</a> <a href="#quality.values">Quality Values</a></li> 589 <li><a href="#rfc.section.3.2">3.2</a> <a href="#representation.header.fields">Representation Header Fields</a><ul> 590 <li><a href="#rfc.section.3.2.1">3.2.1</a> <a href="#header.content-type">Content-Type</a></li> 591 <li><a href="#rfc.section.3.2.2">3.2.2</a> <a href="#header.content-encoding">Content-Encoding</a></li> 592 <li><a href="#rfc.section.3.2.3">3.2.3</a> <a href="#header.content-language">Content-Language</a></li> 593 <li><a href="#rfc.section.3.2.4">3.2.4</a> <a href="#header.content-location">Content-Location</a></li> 594 </ul> 595 </li> 596 <li><a href="#rfc.section.3.3">3.3</a> <a href="#selected.representation">Selected Representation Header Fields</a></li> 597 <li><a href="#rfc.section.3.4">3.4</a> <a href="#representation.data">Representation Data</a></li> 598 <li><a href="#rfc.section.3.5">3.5</a> <a href="#content.negotiation">Content Negotiation</a><ul> 599 <li><a href="#rfc.section.3.5.1">3.5.1</a> <a href="#server-driven.negotiation">Server-driven Negotiation</a></li> 600 <li><a href="#rfc.section.3.5.2">3.5.2</a> <a href="#agent-driven.negotiation">Agent-driven Negotiation</a></li> 596 601 </ul> 597 602 </li> … … 625 630 </li> 626 631 <li><a href="#rfc.section.6">6.</a> <a href="#request.header.fields">Request Header Fields</a><ul> 627 <li><a href="#rfc.section.6.1">6.1</a> <a href="#request.controls">Controls</a></li> 632 <li><a href="#rfc.section.6.1">6.1</a> <a href="#request.controls">Controls</a><ul> 633 <li><a href="#rfc.section.6.1.1">6.1.1</a> <a href="#header.max-forwards">Max-Forwards</a></li> 634 <li><a href="#rfc.section.6.1.2">6.1.2</a> <a href="#header.expect">Expect</a></li> 635 </ul> 636 </li> 628 637 <li><a href="#rfc.section.6.2">6.2</a> <a href="#request.conditionals">Conditionals</a></li> 629 <li><a href="#rfc.section.6.3">6.3</a> <a href="#request.conneg">Content Negotiation</a></li> 638 <li><a href="#rfc.section.6.3">6.3</a> <a href="#request.conneg">Content Negotiation</a><ul> 639 <li><a href="#rfc.section.6.3.1">6.3.1</a> <a href="#quality.values">Quality Values</a></li> 640 <li><a href="#rfc.section.6.3.2">6.3.2</a> <a href="#header.accept">Accept</a></li> 641 <li><a href="#rfc.section.6.3.3">6.3.3</a> <a href="#header.accept-charset">Accept-Charset</a></li> 642 <li><a href="#rfc.section.6.3.4">6.3.4</a> <a href="#header.accept-encoding">Accept-Encoding</a></li> 643 <li><a href="#rfc.section.6.3.5">6.3.5</a> <a href="#header.accept-language">Accept-Language</a></li> 644 </ul> 645 </li> 630 646 <li><a href="#rfc.section.6.4">6.4</a> <a href="#request.auth">Authentication</a></li> 631 <li><a href="#rfc.section.6.5">6.5</a> <a href="#request.context">Context</a></li> 647 <li><a href="#rfc.section.6.5">6.5</a> <a href="#request.context">Context</a><ul> 648 <li><a href="#rfc.section.6.5.1">6.5.1</a> <a href="#header.from">From</a></li> 649 <li><a href="#rfc.section.6.5.2">6.5.2</a> <a href="#header.referer">Referer</a></li> 650 <li><a href="#rfc.section.6.5.3">6.5.3</a> <a href="#header.user-agent">User-Agent</a></li> 651 </ul> 652 </li> 632 653 </ul> 633 654 </li> … … 688 709 </li> 689 710 <li><a href="#rfc.section.8">8.</a> <a href="#response.header.fields">Response Header Fields</a><ul> 690 <li><a href="#rfc.section.8.1">8.1</a> <a href="#response.control.data">Control Data</a></li> 691 <li><a href="#rfc.section.8.2">8.2</a> <a href="#response.cache.related">Cache-related</a></li> 711 <li><a href="#rfc.section.8.1">8.1</a> <a href="#response.control.data">Control Data</a><ul> 712 <li><a href="#rfc.section.8.1.1">8.1.1</a> <a href="#header.location">Location</a></li> 713 <li><a href="#rfc.section.8.1.2">8.1.2</a> <a href="#header.retry-after">Retry-After</a></li> 714 </ul> 715 </li> 716 <li><a href="#rfc.section.8.2">8.2</a> <a href="#response.cache.related">Cache-related</a><ul> 717 <li><a href="#rfc.section.8.2.1">8.2.1</a> <a href="#header.date">Date</a></li> 718 </ul> 719 </li> 692 720 <li><a href="#rfc.section.8.3">8.3</a> <a href="#response.auth">Authentication Challenges</a></li> 693 <li><a href="#rfc.section.8.4">8.4</a> <a href="#response.inform">Informative</a></li> 721 <li><a href="#rfc.section.8.4">8.4</a> <a href="#response.inform">Informative</a><ul> 722 <li><a href="#rfc.section.8.4.1">8.4.1</a> <a href="#header.allow">Allow</a></li> 723 <li><a href="#rfc.section.8.4.2">8.4.2</a> <a href="#header.server">Server</a></li> 724 </ul> 725 </li> 694 726 </ul> 695 727 </li> … … 707 739 </ul> 708 740 </li> 709 <li><a href="#rfc.section.10">10.</a> <a href="#header.field.definitions">Header Field Definitions</a><ul> 710 <li><a href="#rfc.section.10.1">10.1</a> <a href="#header.accept">Accept</a></li> 711 <li><a href="#rfc.section.10.2">10.2</a> <a href="#header.accept-charset">Accept-Charset</a></li> 712 <li><a href="#rfc.section.10.3">10.3</a> <a href="#header.accept-encoding">Accept-Encoding</a></li> 713 <li><a href="#rfc.section.10.4">10.4</a> <a href="#header.accept-language">Accept-Language</a></li> 714 <li><a href="#rfc.section.10.5">10.5</a> <a href="#header.allow">Allow</a></li> 715 <li><a href="#rfc.section.10.6">10.6</a> <a href="#header.content-encoding">Content-Encoding</a></li> 716 <li><a href="#rfc.section.10.7">10.7</a> <a href="#header.content-language">Content-Language</a></li> 717 <li><a href="#rfc.section.10.8">10.8</a> <a href="#header.content-location">Content-Location</a></li> 718 <li><a href="#rfc.section.10.9">10.9</a> <a href="#header.content-type">Content-Type</a></li> 719 <li><a href="#rfc.section.10.10">10.10</a> <a href="#header.date">Date</a></li> 720 <li><a href="#rfc.section.10.11">10.11</a> <a href="#header.expect">Expect</a></li> 721 <li><a href="#rfc.section.10.12">10.12</a> <a href="#header.from">From</a></li> 722 <li><a href="#rfc.section.10.13">10.13</a> <a href="#header.location">Location</a></li> 723 <li><a href="#rfc.section.10.14">10.14</a> <a href="#header.max-forwards">Max-Forwards</a></li> 724 <li><a href="#rfc.section.10.15">10.15</a> <a href="#header.referer">Referer</a></li> 725 <li><a href="#rfc.section.10.16">10.16</a> <a href="#header.retry-after">Retry-After</a></li> 726 <li><a href="#rfc.section.10.17">10.17</a> <a href="#header.server">Server</a></li> 727 <li><a href="#rfc.section.10.18">10.18</a> <a href="#header.user-agent">User-Agent</a></li> 728 </ul> 729 </li> 730 <li><a href="#rfc.section.11">11.</a> <a href="#IANA.considerations">IANA Considerations</a><ul> 731 <li><a href="#rfc.section.11.1">11.1</a> <a href="#method.registry">Method Registry</a><ul> 732 <li><a href="#rfc.section.11.1.1">11.1.1</a> <a href="#method.procedure">Procedure</a></li> 733 <li><a href="#rfc.section.11.1.2">11.1.2</a> <a href="#considerations.for.new.methods">Considerations for New Methods</a></li> 734 <li><a href="#rfc.section.11.1.3">11.1.3</a> <a href="#method.registration">Registrations</a></li> 741 <li><a href="#rfc.section.10">10.</a> <a href="#IANA.considerations">IANA Considerations</a><ul> 742 <li><a href="#rfc.section.10.1">10.1</a> <a href="#method.registry">Method Registry</a><ul> 743 <li><a href="#rfc.section.10.1.1">10.1.1</a> <a href="#method.procedure">Procedure</a></li> 744 <li><a href="#rfc.section.10.1.2">10.1.2</a> <a href="#considerations.for.new.methods">Considerations for New Methods</a></li> 745 <li><a href="#rfc.section.10.1.3">10.1.3</a> <a href="#method.registration">Registrations</a></li> 735 746 </ul> 736 747 </li> 737 <li><a href="#rfc.section.1 1.2">11.2</a> <a href="#status.code.registry">Status Code Registry</a><ul>738 <li><a href="#rfc.section.1 1.2.1">11.2.1</a> <a href="#status.code.procedure">Procedure</a></li>739 <li><a href="#rfc.section.1 1.2.2">11.2.2</a> <a href="#considerations.for.new.status.codes">Considerations for New Status Codes</a></li>740 <li><a href="#rfc.section.1 1.2.3">11.2.3</a> <a href="#status.code.registration">Registrations</a></li>748 <li><a href="#rfc.section.10.2">10.2</a> <a href="#status.code.registry">Status Code Registry</a><ul> 749 <li><a href="#rfc.section.10.2.1">10.2.1</a> <a href="#status.code.procedure">Procedure</a></li> 750 <li><a href="#rfc.section.10.2.2">10.2.2</a> <a href="#considerations.for.new.status.codes">Considerations for New Status Codes</a></li> 751 <li><a href="#rfc.section.10.2.3">10.2.3</a> <a href="#status.code.registration">Registrations</a></li> 741 752 </ul> 742 753 </li> 743 <li><a href="#rfc.section.1 1.3">11.3</a> <a href="#header.field.registry">Header Field Registry</a><ul>744 <li><a href="#rfc.section.1 1.3.1">11.3.1</a> <a href="#considerations.for.new.header.fields">Considerations for New Header Fields</a></li>745 <li><a href="#rfc.section.1 1.3.2">11.3.2</a> <a href="#header.field.registration">Registrations</a></li>754 <li><a href="#rfc.section.10.3">10.3</a> <a href="#header.field.registry">Header Field Registry</a><ul> 755 <li><a href="#rfc.section.10.3.1">10.3.1</a> <a href="#considerations.for.new.header.fields">Considerations for New Header Fields</a></li> 756 <li><a href="#rfc.section.10.3.2">10.3.2</a> <a href="#header.field.registration">Registrations</a></li> 746 757 </ul> 747 758 </li> 748 <li><a href="#rfc.section.1 1.4">11.4</a> <a href="#content.coding.registry">Content Coding Registry</a><ul>749 <li><a href="#rfc.section.1 1.4.1">11.4.1</a> <a href="#content.coding.procedure">Procedure</a></li>750 <li><a href="#rfc.section.1 1.4.2">11.4.2</a> <a href="#content.coding.registration">Registrations</a></li>759 <li><a href="#rfc.section.10.4">10.4</a> <a href="#content.coding.registry">Content Coding Registry</a><ul> 760 <li><a href="#rfc.section.10.4.1">10.4.1</a> <a href="#content.coding.procedure">Procedure</a></li> 761 <li><a href="#rfc.section.10.4.2">10.4.2</a> <a href="#content.coding.registration">Registrations</a></li> 751 762 </ul> 752 763 </li> 753 764 </ul> 754 765 </li> 755 <li><a href="#rfc.section.1 2">12.</a> <a href="#security.considerations">Security Considerations</a><ul>756 <li><a href="#rfc.section.1 2.1">12.1</a> <a href="#security.sensitive">Transfer of Sensitive Information</a></li>757 <li><a href="#rfc.section.1 2.2">12.2</a> <a href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></li>758 <li><a href="#rfc.section.1 2.3">12.3</a> <a href="#location.spoofing-leakage">Location Header Fields: Spoofing and Information Leakage</a></li>759 <li><a href="#rfc.section.1 2.4">12.4</a> <a href="#rfc.section.12.4">Security Considerations for CONNECT</a></li>760 <li><a href="#rfc.section.1 2.5">12.5</a> <a href="#privacy.issues.connected.to.accept.header.fields">Privacy Issues Connected to Accept Header Fields</a></li>766 <li><a href="#rfc.section.11">11.</a> <a href="#security.considerations">Security Considerations</a><ul> 767 <li><a href="#rfc.section.11.1">11.1</a> <a href="#security.sensitive">Transfer of Sensitive Information</a></li> 768 <li><a href="#rfc.section.11.2">11.2</a> <a href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></li> 769 <li><a href="#rfc.section.11.3">11.3</a> <a href="#location.spoofing-leakage">Location Header Fields: Spoofing and Information Leakage</a></li> 770 <li><a href="#rfc.section.11.4">11.4</a> <a href="#rfc.section.11.4">Security Considerations for CONNECT</a></li> 771 <li><a href="#rfc.section.11.5">11.5</a> <a href="#privacy.issues.connected.to.accept.header.fields">Privacy Issues Connected to Accept Header Fields</a></li> 761 772 </ul> 762 773 </li> 763 <li><a href="#rfc.section.1 3">13.</a> <a href="#acks">Acknowledgments</a></li>764 <li><a href="#rfc.section.1 4">14.</a> <a href="#rfc.references">References</a><ul>765 <li><a href="#rfc.section.1 4.1">14.1</a> <a href="#rfc.references.1">Normative References</a></li>766 <li><a href="#rfc.section.1 4.2">14.2</a> <a href="#rfc.references.2">Informative References</a></li>774 <li><a href="#rfc.section.12">12.</a> <a href="#acks">Acknowledgments</a></li> 775 <li><a href="#rfc.section.13">13.</a> <a href="#rfc.references">References</a><ul> 776 <li><a href="#rfc.section.13.1">13.1</a> <a href="#rfc.references.1">Normative References</a></li> 777 <li><a href="#rfc.section.13.2">13.2</a> <a href="#rfc.references.2">Informative References</a></li> 767 778 </ul> 768 779 </li> … … 917 928 <tbody> 918 929 <tr> 930 <td class="left">Content-Type</td> 931 <td class="left"><a href="#header.content-type" id="rfc.xref.header.content-type.1" title="Content-Type">Section 3.2.1</a></td> 932 </tr> 933 <tr> 919 934 <td class="left">Content-Encoding</td> 920 <td class="left"><a href="#header.content-encoding" id="rfc.xref.header.content-encoding.1" title="Content-Encoding">Section 10.6</a></td>935 <td class="left"><a href="#header.content-encoding" id="rfc.xref.header.content-encoding.1" title="Content-Encoding">Section 3.2.2</a></td> 921 936 </tr> 922 937 <tr> 923 938 <td class="left">Content-Language</td> 924 <td class="left"><a href="#header.content-language" id="rfc.xref.header.content-language.1" title="Content-Language">Section 10.7</a></td>939 <td class="left"><a href="#header.content-language" id="rfc.xref.header.content-language.1" title="Content-Language">Section 3.2.3</a></td> 925 940 </tr> 926 941 <tr> 927 942 <td class="left">Content-Location</td> 928 <td class="left"><a href="#header.content-location" id="rfc.xref.header.content-location.1" title="Content-Location">Section 10.8</a></td> 929 </tr> 930 <tr> 931 <td class="left">Content-Type</td> 932 <td class="left"><a href="#header.content-type" id="rfc.xref.header.content-type.1" title="Content-Type">Section 10.9</a></td> 943 <td class="left"><a href="#header.content-location" id="rfc.xref.header.content-location.1" title="Content-Location">Section 3.2.4</a></td> 933 944 </tr> 934 945 <tr> … … 939 950 </table> 940 951 </div> 941 <p id="rfc.section.3.2.p.3"><span id="rfc.iref.s.1"></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 952 <div id="rfc.iref.c.2"></div> 953 <div id="rfc.iref.h.1"></div> 954 <h3 id="rfc.section.3.2.1"><a href="#rfc.section.3.2.1">3.2.1</a> <a id="header.content-type" href="#header.content-type">Content-Type</a></h3> 955 <p id="rfc.section.3.2.1.p.1">The "Content-Type" header field indicates the media type of the representation. In the case of responses to the HEAD method, 956 the media type is that which would have been sent had the request been a GET. 957 </p> 958 <div id="rfc.figure.u.1"></div><pre class="inline"><span id="rfc.iref.g.1"></span> <a href="#header.content-type" class="smpl">Content-Type</a> = <a href="#media.types" class="smpl">media-type</a> 959 </pre><p id="rfc.section.3.2.1.p.3">Media types are defined in <a href="#media.types" title="Media Types">Section 9.5</a>. An example of the field is 960 </p> 961 <div id="rfc.figure.u.2"></div><pre class="text"> Content-Type: text/html; charset=ISO-8859-4 962 </pre><p id="rfc.section.3.2.1.p.5">Further discussion of Content-Type is provided in <a href="#representation.data" title="Representation Data">Section 3.4</a>. 963 </p> 964 <div id="rfc.iref.c.3"></div> 965 <div id="rfc.iref.h.2"></div> 966 <h3 id="rfc.section.3.2.2"><a href="#rfc.section.3.2.2">3.2.2</a> <a id="header.content-encoding" href="#header.content-encoding">Content-Encoding</a></h3> 967 <p id="rfc.section.3.2.2.p.1">The "Content-Encoding" header field indicates what content-codings have been applied to the representation beyond those inherent 968 in the media type, and thus what decoding mechanisms have to be applied in order to obtain the media-type referenced by the <a href="#header.content-type" class="smpl">Content-Type</a> header field. Content-Encoding is primarily used to allow a representation to be compressed without losing the identity of 969 its underlying media type. 970 </p> 971 <div id="rfc.figure.u.3"></div><pre class="inline"><span id="rfc.iref.g.2"></span> <a href="#header.content-encoding" class="smpl">Content-Encoding</a> = 1#<a href="#content.codings" class="smpl">content-coding</a> 972 </pre><p id="rfc.section.3.2.2.p.3">Content codings are defined in <a href="#content.codings" title="Content Codings">Section 9.4</a>. An example of its use is 973 </p> 974 <div id="rfc.figure.u.4"></div><pre class="text"> Content-Encoding: gzip 975 </pre><p id="rfc.section.3.2.2.p.5">The content-coding is a characteristic of the representation. Typically, the representation body is stored with this encoding 976 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 977 directive is present in the message. 978 </p> 979 <p id="rfc.section.3.2.2.p.6">If the media type includes an inherent encoding, such as a data format that is always compressed, then that encoding would 980 not be restated as a Content-Encoding even if it happens to be the same algorithm as one of the content-codings. Such a content-coding 981 would only be listed if, for some bizarre reason, it is applied a second time to form the representation. Likewise, an origin 982 server might choose to publish the same payload data as multiple representations that differ only in whether the coding is 983 defined as part of <a href="#header.content-type" class="smpl">Content-Type</a> or Content-Encoding, since some user agents will behave differently in their handling of each response (e.g., open a "Save 984 as ..." dialog instead of automatic decompression and rendering of content). 985 </p> 986 <p id="rfc.section.3.2.2.p.7">A representation that has a content-coding applied to it <em class="bcp14">MUST</em> include a Content-Encoding header field that lists the content-coding(s) applied. 987 </p> 988 <p id="rfc.section.3.2.2.p.8">If multiple encodings have been applied to a representation, the content codings <em class="bcp14">MUST</em> be listed in the order in which they were applied. Additional information about the encoding parameters <em class="bcp14">MAY</em> be provided by other header fields not defined by this specification. 989 </p> 990 <p id="rfc.section.3.2.2.p.9">If the content-coding of a representation in a request message is not acceptable to the origin server, the server <em class="bcp14">SHOULD</em> respond with a status code of 415 (Unsupported Media Type). 991 </p> 992 <div id="rfc.iref.c.4"></div> 993 <div id="rfc.iref.h.3"></div> 994 <h3 id="rfc.section.3.2.3"><a href="#rfc.section.3.2.3">3.2.3</a> <a id="header.content-language" href="#header.content-language">Content-Language</a></h3> 995 <p id="rfc.section.3.2.3.p.1">The "Content-Language" header field describes the natural language(s) of the intended audience for the representation. Note 996 that this might not be equivalent to all the languages used within the representation. 997 </p> 998 <div id="rfc.figure.u.5"></div><pre class="inline"><span id="rfc.iref.g.3"></span> <a href="#header.content-language" class="smpl">Content-Language</a> = 1#<a href="#language.tags" class="smpl">language-tag</a> 999 </pre><p id="rfc.section.3.2.3.p.3">Language tags are defined in <a href="#language.tags" title="Language Tags">Section 9.6</a>. The primary purpose of Content-Language is to allow a user to identify and differentiate representations according to the 1000 user's own preferred language. Thus, if the body content is intended only for a Danish-literate audience, the appropriate 1001 field is 1002 </p> 1003 <div id="rfc.figure.u.6"></div><pre class="text"> Content-Language: da 1004 </pre><p id="rfc.section.3.2.3.p.5">If no Content-Language is specified, the default is that the content is intended for all language audiences. This might mean 1005 that the sender does not consider it to be specific to any natural language, or that the sender does not know for which language 1006 it is intended. 1007 </p> 1008 <p id="rfc.section.3.2.3.p.6">Multiple languages <em class="bcp14">MAY</em> be listed for content that is intended for multiple audiences. For example, a rendition of the "Treaty of Waitangi", presented 1009 simultaneously in the original Maori and English versions, would call for 1010 </p> 1011 <div id="rfc.figure.u.7"></div><pre class="text"> Content-Language: mi, en 1012 </pre><p id="rfc.section.3.2.3.p.8">However, just because multiple languages are present within a representation does not mean that it is intended for multiple 1013 linguistic audiences. An example would be a beginner's language primer, such as "A First Lesson in Latin", which is clearly 1014 intended to be used by an English-literate audience. In this case, the Content-Language would properly only include "en". 1015 </p> 1016 <p id="rfc.section.3.2.3.p.9">Content-Language <em class="bcp14">MAY</em> be applied to any media type — it is not limited to textual documents. 1017 </p> 1018 <div id="rfc.iref.c.5"></div> 1019 <div id="rfc.iref.h.4"></div> 1020 <h3 id="rfc.section.3.2.4"><a href="#rfc.section.3.2.4">3.2.4</a> <a id="header.content-location" href="#header.content-location">Content-Location</a></h3> 1021 <p id="rfc.section.3.2.4.p.1">The "Content-Location" header field supplies a URI that can be used as a specific identifier for the representation in this 1022 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. 1023 </p> 1024 <div id="rfc.figure.u.8"></div><pre class="inline"><span id="rfc.iref.g.4"></span> <a href="#header.content-location" class="smpl">Content-Location</a> = <a href="#imported.abnf" class="smpl">absolute-URI</a> / <a href="#imported.abnf" class="smpl">partial-URI</a> 1025 </pre><p id="rfc.section.3.2.4.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.9"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[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 1026 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. 1027 </p> 1028 <p id="rfc.section.3.2.4.p.4">If Content-Location is included in a response message and its value is the same as the effective request URI, then the response 1029 payload <em class="bcp14">SHOULD</em> be considered a current representation of that resource. For a GET or HEAD request, this is the same as the default semantics 1030 when no Content-Location is provided by the server. For a state-changing request like PUT or POST, it implies that the server's 1031 response contains the new representation of that resource, thereby distinguishing it from representations that might only 1032 report about the action (e.g., "It worked!"). This allows authoring applications to update their local copies without the 1033 need for a subsequent GET request. 1034 </p> 1035 <p id="rfc.section.3.2.4.p.5">If Content-Location is included in a response message and its value differs from the effective request URI, then the origin 1036 server is informing recipients that this representation has its own, presumably more specific, identifier. For a GET or HEAD 1037 request, this is an indication that the effective request URI identifies a resource that is subject to content negotiation 1038 and the selected representation for this response can also be found at the identified URI. For other methods, such a Content-Location 1039 indicates that this representation contains a report on the action's status and the same report is available (for future access 1040 with GET) at the given URI. For example, a purchase transaction made via a POST request might include a receipt document as 1041 the payload of the <a href="#status.200" class="smpl">200 (OK)</a> response; the Content-Location value provides an identifier for retrieving a copy of that same receipt in the future. 1042 </p> 1043 <p id="rfc.section.3.2.4.p.6">If Content-Location is included in a request message, then it <em class="bcp14">MAY</em> be interpreted by the origin server as an indication of where the user agent originally obtained the content of the enclosed 1044 representation (prior to any subsequent modification of the content by that user agent). In other words, the user agent is 1045 providing the same representation metadata that it received with the original representation. However, such interpretation <em class="bcp14">MUST NOT</em> be used to alter the semantics of the method requested by the client. For example, if a client makes a PUT request on a negotiated 1046 resource and the origin server accepts that PUT (without redirection), then the new set of values for that resource is expected 1047 to be consistent with the one representation supplied in that PUT; the Content-Location cannot be used as a form of reverse 1048 content selection that identifies only one of the negotiated representations to be updated. If the user agent had wanted the 1049 latter semantics, it would have applied the PUT directly to the Content-Location URI. 1050 </p> 1051 <p id="rfc.section.3.2.4.p.7">A Content-Location field received in a request message is transitory information that <em class="bcp14">SHOULD NOT</em> be saved with other representation metadata for use in later responses. The Content-Location's value might be saved for use 1052 in other contexts, such as within source links or other metadata. 1053 </p> 1054 <p id="rfc.section.3.2.4.p.8">A cache cannot assume that a representation with a Content-Location different from the URI used to retrieve it can be used 1055 to respond to later requests on that Content-Location URI. 1056 </p> 1057 <p id="rfc.section.3.2.4.p.9">If the Content-Location value is a partial URI, the partial URI is interpreted relative to the effective request URI.</p> 1058 <h2 id="rfc.section.3.3"><a href="#rfc.section.3.3">3.3</a> <a id="selected.representation" href="#selected.representation">Selected Representation Header Fields</a></h2> 1059 <p id="rfc.section.3.3.p.1"><span id="rfc.iref.s.1"></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 942 1060 the same request had used the method GET and excluded any conditional request header fields. 943 1061 </p> 944 <p id="rfc.section.3. 2.p.4">Additional header fields define metadata about the selected representation, which might differ from the representation included1062 <p id="rfc.section.3.3.p.2">Additional header fields define metadata about the selected representation, which might differ from the representation included 945 1063 in the message for responses to some state-changing methods. The following header fields are defined as selected representation 946 1064 metadata: … … 966 1084 </table> 967 1085 </div> 968 <h2 id="rfc.section.3. 3"><a href="#rfc.section.3.3">3.3</a> <a id="representation.data" href="#representation.data">Representation Data</a></h2>969 <p id="rfc.section.3. 3.p.1">The representation body associated with an HTTP message is either provided as the payload body of the message or referred1086 <h2 id="rfc.section.3.4"><a href="#rfc.section.3.4">3.4</a> <a id="representation.data" href="#representation.data">Representation Data</a></h2> 1087 <p id="rfc.section.3.4.p.1">The representation body associated with an HTTP message is either provided as the payload body of the message or referred 970 1088 to by the message semantics and the effective request URI. The representation data is in a format and encoding defined by 971 1089 the representation metadata header fields. 972 1090 </p> 973 <p id="rfc.section.3. 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:974 </p> 975 <div id="rfc.figure.u. 1"></div><pre class="text"> representation-data := Content-Encoding( Content-Type( bits ) )976 </pre><p id="rfc.section.3. 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 payload1091 <p id="rfc.section.3.4.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: 1092 </p> 1093 <div id="rfc.figure.u.9"></div><pre class="text"> representation-data := Content-Encoding( Content-Type( bits ) ) 1094 </pre><p id="rfc.section.3.4.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 977 1095 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 978 1096 to the sender. If the Content-Type header field is not present, it indicates that the sender does not know the media type 979 1097 of the representation; recipients <em class="bcp14">MAY</em> either assume that the media type is "application/octet-stream" (<a href="#RFC2046" id="rfc.xref.RFC2046.1"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types">[RFC2046]</cite></a>, <a href="http://tools.ietf.org/html/rfc2046#section-4.5.1">Section 4.5.1</a>) or examine the content to determine its type. 980 1098 </p> 981 <p id="rfc.section.3. 3.p.5">In practice, resource owners do not always properly configure their origin server to provide the correct Content-Type for1099 <p id="rfc.section.3.4.p.5">In practice, resource owners do not always properly configure their origin server to provide the correct Content-Type for 982 1100 a given representation, with the result that some clients will examine a response body's content and override the specified 983 1101 type. Clients that do so risk drawing incorrect conclusions, which might expose additional security risks (e.g., "privilege … … 986 1104 such "content sniffing" when it is used. 987 1105 </p> 988 <p id="rfc.section.3. 3.p.6"> <a href="#header.content-encoding" class="smpl">Content-Encoding</a> is used to indicate any additional content codings applied to the data, usually for the purpose of data compression, that1106 <p id="rfc.section.3.4.p.6"> <a href="#header.content-encoding" class="smpl">Content-Encoding</a> is used to indicate any additional content codings applied to the data, usually for the purpose of data compression, that 989 1107 are a property of the representation. If Content-Encoding is not present, then there is no additional encoding beyond that 990 1108 defined by the <a href="#header.content-type" class="smpl">Content-Type</a> header field. 991 1109 </p> 992 <h2 id="rfc.section.3. 4"><a href="#rfc.section.3.4">3.4</a> <a id="content.negotiation" href="#content.negotiation">Content Negotiation</a></h2>993 <p id="rfc.section.3. 4.p.1">HTTP responses include a representation which contains information for interpretation, whether by a human user or for further1110 <h2 id="rfc.section.3.5"><a href="#rfc.section.3.5">3.5</a> <a id="content.negotiation" href="#content.negotiation">Content Negotiation</a></h2> 1111 <p id="rfc.section.3.5.p.1">HTTP responses include a representation which contains information for interpretation, whether by a human user or for further 994 1112 processing. Often, the server has different ways of representing the same information; for example, in different formats, 995 1113 languages, or using different character encodings. 996 1114 </p> 997 <p id="rfc.section.3. 4.p.2">HTTP clients and their users might have different or variable capabilities, characteristics or preferences which would influence1115 <p id="rfc.section.3.5.p.2">HTTP clients and their users might have different or variable capabilities, characteristics or preferences which would influence 998 1116 which representation, among those available from the server, would be best for the server to deliver. For this reason, HTTP 999 1117 provides mechanisms for "content negotiation" — a process of allowing selection of a representation of a given resource, when 1000 1118 more than one is available. 1001 1119 </p> 1002 <p id="rfc.section.3. 4.p.3">This specification defines two patterns of content negotiation; "server-driven", where the server selects the representation1120 <p id="rfc.section.3.5.p.3">This specification defines two patterns of content negotiation; "server-driven", where the server selects the representation 1003 1121 based upon the client's stated preferences, and "agent-driven" negotiation, where the server provides a list of representations 1004 1122 for the client to choose from, based upon their metadata. In addition, there are other patterns: some applications use an … … 1006 1124 parameters, selects additional resources to invoke. "Transparent Content Negotiation" (<a href="#RFC2295" id="rfc.xref.RFC2295.1"><cite title="Transparent Content Negotiation in HTTP">[RFC2295]</cite></a>) has also been proposed. 1007 1125 </p> 1008 <p id="rfc.section.3. 4.p.4">These patterns are all widely used, and have trade-offs in applicability and practicality. In particular, when the number1126 <p id="rfc.section.3.5.p.4">These patterns are all widely used, and have trade-offs in applicability and practicality. In particular, when the number 1009 1127 of preferences or capabilities to be expressed by a client are large (such as when many different formats are supported by 1010 1128 a user-agent), server-driven negotiation becomes unwieldy, and might not be appropriate. Conversely, when the number of representations 1011 1129 to choose from is very large, agent-driven negotiation might not be appropriate. 1012 1130 </p> 1013 <p id="rfc.section.3. 4.p.5">Note that, in all cases, the supplier of representations has the responsibility for determining which representations might1131 <p id="rfc.section.3.5.p.5">Note that, in all cases, the supplier of representations has the responsibility for determining which representations might 1014 1132 be considered to be the "same information". 1015 1133 </p> 1016 <h3 id="rfc.section.3. 4.1"><a href="#rfc.section.3.4.1">3.4.1</a> <a id="server-driven.negotiation" href="#server-driven.negotiation">Server-driven Negotiation</a></h3>1017 <p id="rfc.section.3. 4.1.p.1">If the selection of the best representation for a response is made by an algorithm located at the server, it is called server-driven1134 <h3 id="rfc.section.3.5.1"><a href="#rfc.section.3.5.1">3.5.1</a> <a id="server-driven.negotiation" href="#server-driven.negotiation">Server-driven Negotiation</a></h3> 1135 <p id="rfc.section.3.5.1.p.1">If the selection of the best representation for a response is made by an algorithm located at the server, it is called server-driven 1018 1136 negotiation. Selection is based on the available representations of the response (the dimensions over which it can vary; e.g., 1019 1137 language, content-coding, etc.) and the contents of particular header fields in the request message or on other information 1020 1138 pertaining to the request (such as the network address of the client). 1021 1139 </p> 1022 <p id="rfc.section.3. 4.1.p.2">Server-driven negotiation is advantageous when the algorithm for selecting from among the available representations is difficult1140 <p id="rfc.section.3.5.1.p.2">Server-driven negotiation is advantageous when the algorithm for selecting from among the available representations is difficult 1023 1141 to describe to the user agent, or when the server desires to send its "best guess" to the client along with the first response 1024 1142 (hoping to avoid the round-trip delay of a subsequent request if the "best guess" is good enough for the user). In order to 1025 1143 improve the server's guess, the user agent <em class="bcp14">MAY</em> include request header fields (<a href="#header.accept" class="smpl">Accept</a>, <a href="#header.accept-language" class="smpl">Accept-Language</a>, <a href="#header.accept-encoding" class="smpl">Accept-Encoding</a>, etc.) which describe its preferences for such a response. 1026 1144 </p> 1027 <p id="rfc.section.3. 4.1.p.3">Server-driven negotiation has disadvantages: </p>1145 <p id="rfc.section.3.5.1.p.3">Server-driven negotiation has disadvantages: </p> 1028 1146 <ol> 1029 1147 <li>It is impossible for the server to accurately determine what might be "best" for any given user, since that would require … … 1037 1155 <li>It might limit a public cache's ability to use the same response for multiple user's requests.</li> 1038 1156 </ol> 1039 <p id="rfc.section.3. 4.1.p.4">Server-driven negotiation allows the user agent to specify its preferences, but it cannot expect responses to always honor1157 <p id="rfc.section.3.5.1.p.4">Server-driven negotiation allows the user agent to specify its preferences, but it cannot expect responses to always honor 1040 1158 them. For example, the origin server might not implement server-driven negotiation, or it might decide that sending a response 1041 1159 that doesn't conform to them is better than sending a <a href="#status.406" class="smpl">406 1042 1160 (Not Acceptable)</a> response. 1043 1161 </p> 1044 <p id="rfc.section.3. 4.1.p.5">HTTP/1.1 includes the following header fields for enabling server-driven negotiation through description of user agent capabilities1045 and user preferences: <a href="#header.accept" class="smpl">Accept</a> (<a href="#header.accept" id="rfc.xref.header.accept.1" title="Accept">Section 10.1</a>), <a href="#header.accept-charset" class="smpl">Accept-Charset</a> (<a href="#header.accept-charset" id="rfc.xref.header.accept-charset.1" title="Accept-Charset">Section 10.2</a>), <a href="#header.accept-encoding" class="smpl">Accept-Encoding</a> (<a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.1" title="Accept-Encoding">Section 10.3</a>), <a href="#header.accept-language" class="smpl">Accept-Language</a> (<a href="#header.accept-language" id="rfc.xref.header.accept-language.1" title="Accept-Language">Section 10.4</a>), and <a href="#header.user-agent" class="smpl">User-Agent</a> (<a href="#header.user-agent" id="rfc.xref.header.user-agent.1" title="User-Agent">Section 10.18</a>). However, an origin server is not limited to these dimensions and <em class="bcp14">MAY</em> vary the response based on any aspect of the request, including aspects of the connection (e.g., IP address) or information1162 <p id="rfc.section.3.5.1.p.5">HTTP/1.1 includes the following header fields for enabling server-driven negotiation through description of user agent capabilities 1163 and user preferences: <a href="#header.accept" class="smpl">Accept</a> (<a href="#header.accept" id="rfc.xref.header.accept.1" title="Accept">Section 6.3.2</a>), <a href="#header.accept-charset" class="smpl">Accept-Charset</a> (<a href="#header.accept-charset" id="rfc.xref.header.accept-charset.1" title="Accept-Charset">Section 6.3.3</a>), <a href="#header.accept-encoding" class="smpl">Accept-Encoding</a> (<a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.1" title="Accept-Encoding">Section 6.3.4</a>), <a href="#header.accept-language" class="smpl">Accept-Language</a> (<a href="#header.accept-language" id="rfc.xref.header.accept-language.1" title="Accept-Language">Section 6.3.5</a>), and <a href="#header.user-agent" class="smpl">User-Agent</a> (<a href="#header.user-agent" id="rfc.xref.header.user-agent.1" title="User-Agent">Section 6.5.3</a>). However, an origin server is not limited to these dimensions and <em class="bcp14">MAY</em> vary the response based on any aspect of the request, including aspects of the connection (e.g., IP address) or information 1046 1164 within extension header fields not defined by this specification. 1047 1165 </p> 1048 <div class="note" id="rfc.section.3. 4.1.p.6">1166 <div class="note" id="rfc.section.3.5.1.p.6"> 1049 1167 <p> <b>Note:</b> In practice, <a href="#header.user-agent" class="smpl">User-Agent</a> based negotiation is fragile, because new clients might not be recognized. 1050 1168 </p> 1051 1169 </div> 1052 <p id="rfc.section.3. 4.1.p.7">The <a href="p6-cache.html#header.vary" class="smpl">Vary</a> header field (<a href="p6-cache.html#header.vary" title="Vary">Section 7.5</a> of <a href="#Part6" id="rfc.xref.Part6.2"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) can be used to express the parameters the server uses to select a representation that is subject to server-driven negotiation.1053 </p> 1054 <h3 id="rfc.section.3. 4.2"><a href="#rfc.section.3.4.2">3.4.2</a> <a id="agent-driven.negotiation" href="#agent-driven.negotiation">Agent-driven Negotiation</a></h3>1055 <p id="rfc.section.3. 4.2.p.1">With agent-driven negotiation, selection of the best representation for a response is performed by the user agent after receiving1170 <p id="rfc.section.3.5.1.p.7">The <a href="p6-cache.html#header.vary" class="smpl">Vary</a> header field (<a href="p6-cache.html#header.vary" title="Vary">Section 7.5</a> of <a href="#Part6" id="rfc.xref.Part6.2"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) can be used to express the parameters the server uses to select a representation that is subject to server-driven negotiation. 1171 </p> 1172 <h3 id="rfc.section.3.5.2"><a href="#rfc.section.3.5.2">3.5.2</a> <a id="agent-driven.negotiation" href="#agent-driven.negotiation">Agent-driven Negotiation</a></h3> 1173 <p id="rfc.section.3.5.2.p.1">With agent-driven negotiation, selection of the best representation for a response is performed by the user agent after receiving 1056 1174 an initial response from the origin server. Selection is based on a list of the available representations of the response 1057 1175 included within the header fields or body of the initial response, with each representation identified by its own URI. Selection … … 1059 1177 user selecting from a generated (possibly hypertext) menu. 1060 1178 </p> 1061 <p id="rfc.section.3. 4.2.p.2">Agent-driven negotiation is advantageous when the response would vary over commonly-used dimensions (such as type, language,1179 <p id="rfc.section.3.5.2.p.2">Agent-driven negotiation is advantageous when the response would vary over commonly-used dimensions (such as type, language, 1062 1180 or encoding), when the origin server is unable to determine a user agent's capabilities from examining the request, and generally 1063 1181 when public caches are used to distribute server load and reduce network usage. 1064 1182 </p> 1065 <p id="rfc.section.3. 4.2.p.3">Agent-driven negotiation suffers from the disadvantage of needing a second request to obtain the best alternate representation.1183 <p id="rfc.section.3.5.2.p.3">Agent-driven negotiation suffers from the disadvantage of needing a second request to obtain the best alternate representation. 1066 1184 This second request is only efficient when caching is used. In addition, this specification does not define any mechanism 1067 1185 for supporting automatic selection, though it also does not prevent any such mechanism from being developed as an extension 1068 1186 and used within HTTP/1.1. 1069 1187 </p> 1070 <p id="rfc.section.3. 4.2.p.4">This specification defines the <a href="#status.300" class="smpl">300 (Multiple Choices)</a> and <a href="#status.406" class="smpl">406 (Not Acceptable)</a> status codes for enabling agent-driven negotiation when the server is unwilling or unable to provide a varying response using1188 <p id="rfc.section.3.5.2.p.4">This specification defines the <a href="#status.300" class="smpl">300 (Multiple Choices)</a> and <a href="#status.406" class="smpl">406 (Not Acceptable)</a> status codes for enabling agent-driven negotiation when the server is unwilling or unable to provide a varying response using 1071 1189 server-driven negotiation. 1072 </p>1073 <h3 id="rfc.section.3.4.3"><a href="#rfc.section.3.4.3">3.4.3</a> <a id="quality.values" href="#quality.values">Quality Values</a></h3>1074 <p id="rfc.section.3.4.3.p.1">Many of the request header fields for server-driven content negotiation use a common parameter, named "q", to assign a relative1075 "weight" to the preference for that associated kind of content. This weight is referred to as a "quality value" (or "qvalue")1076 because the same parameter name is often used within server configurations to assign a weight to the relative quality of the1077 various representations that can be selected for a resource.1078 </p>1079 <p id="rfc.section.3.4.3.p.2">The weight is normalized to a real number in the range 0 through 1, where 0.001 is the least preferred and 1 is the most preferred;1080 a value of 0 means "not acceptable". If no "q" parameter is present, the default weight is 1.1081 </p>1082 <div id="rfc.figure.u.2"></div><pre class="inline"><span id="rfc.iref.g.1"></span><span id="rfc.iref.g.2"></span> <a href="#quality.values" class="smpl">weight</a> = <a href="#imported.abnf" class="smpl">OWS</a> ";" <a href="#imported.abnf" class="smpl">OWS</a> "q=" <a href="#quality.values" class="smpl">qvalue</a>1083 <a href="#quality.values" class="smpl">qvalue</a> = ( "0" [ "." 0*3<a href="#imported.abnf" class="smpl">DIGIT</a> ] )1084 / ( "1" [ "." 0*3("0") ] )1085 </pre><p id="rfc.section.3.4.3.p.4">A sender of qvalue <em class="bcp14">MUST NOT</em> generate more than three digits after the decimal point. User configuration of these values ought to be limited in the same1086 fashion.1087 1190 </p> 1088 1191 <h1 id="rfc.section.4"><a href="#rfc.section.4">4.</a> <a id="payload" href="#payload">Payload</a></h1> … … 1111 1214 <tr> 1112 1215 <td class="left">Content-Length</td> 1113 <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. 9"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a></td>1216 <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.10"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a></td> 1114 1217 </tr> 1115 1218 <tr> … … 1121 1224 </div> 1122 1225 <h2 id="rfc.section.4.2"><a href="#rfc.section.4.2">4.2</a> <a id="payload.body" href="#payload.body">Payload Body</a></h2> 1123 <p id="rfc.section.4.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.1 0"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[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.1226 <p id="rfc.section.4.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.11"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[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. 1124 1227 </p> 1125 1228 <h1 id="rfc.section.5"><a href="#rfc.section.5">5.</a> <a id="methods" href="#methods">Request Methods</a></h1> … … 1128 1231 this request and what is expected by the client as a successful result. The request semantics <em class="bcp14">MAY</em> be further specialized by the semantics of some header fields when present in a request (<a href="#request.header.fields" title="Request Header Fields">Section 6</a>) if those additional semantics do not conflict with the method. 1129 1232 </p> 1130 <div id="rfc.figure.u. 3"></div><pre class="inline"><span id="rfc.iref.g.3"></span> <a href="#method.overview" class="smpl">method</a> = <a href="#imported.abnf" class="smpl">token</a>1233 <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g.5"></span> <a href="#method.overview" class="smpl">method</a> = <a href="#imported.abnf" class="smpl">token</a> 1131 1234 </pre><p id="rfc.section.5.1.p.3">HTTP was originally designed to be usable as an interface to distributed object systems. The request method was envisioned 1132 1235 as applying semantics to a target resource in much the same way as invoking a defined method on an identified object would … … 1198 1301 </p> 1199 1302 <p id="rfc.section.5.1.p.7">Additional methods <em class="bcp14">MAY</em> be used in HTTP; many have already been standardized outside the scope of this specification and registered within the HTTP 1200 Method Registry maintained by IANA, as defined in <a href="#method.registry" title="Method Registry">Section 1 1.1</a>.1201 </p> 1202 <p id="rfc.section.5.1.p.8">The set of methods allowed by a target resource can be listed 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 10.5</a>). However, the set of allowed methods can change dynamically. When a request message is received that is unrecognized or1303 Method Registry maintained by IANA, as defined in <a href="#method.registry" title="Method Registry">Section 10.1</a>. 1304 </p> 1305 <p id="rfc.section.5.1.p.8">The set of methods allowed by a target resource can be listed 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 8.4.1</a>). However, the set of allowed methods can change dynamically. When a request message is received that is unrecognized or 1203 1306 not implemented by an origin server, the origin server <em class="bcp14">SHOULD</em> respond with the <a href="#status.501" class="smpl">501 (Not Implemented)</a> status code. When a request message is received that is known by an origin server but not allowed for the target resource, 1204 1307 the origin server <em class="bcp14">SHOULD</em> respond with the <a href="#status.405" class="smpl">405 (Method Not Allowed)</a> status code. … … 1248 1351 repeated failures would indicate a problem within the server. 1249 1352 </p> 1250 <div id="rfc.iref.c. 2"></div>1353 <div id="rfc.iref.c.6"></div> 1251 1354 <h3 id="rfc.section.5.2.3"><a href="#rfc.section.5.2.3">5.2.3</a> <a id="cacheable.methods" href="#cacheable.methods">Cacheable Methods</a></h3> 1252 1355 <p id="rfc.section.5.2.3.p.1">Request methods are considered "<dfn id="cacheable">cacheable</dfn>" if it is possible and useful to answer a current client request with a stored response from a prior request. GET and HEAD … … 1257 1360 <h2 id="rfc.section.5.3"><a href="#rfc.section.5.3">5.3</a> <a id="method.definitions" href="#method.definitions">Method Definitions</a></h2> 1258 1361 <h3 id="rfc.section.5.3.1"><a href="#rfc.section.5.3.1">5.3.1</a> <a id="GET" href="#GET">GET</a></h3> 1259 <div id="rfc.iref.g. 4"></div>1362 <div id="rfc.iref.g.6"></div> 1260 1363 <div id="rfc.iref.m.1"></div> 1261 1364 <p id="rfc.section.5.3.1.p.1">The GET method requests transfer of a current representation of the target resource.</p> … … 1275 1378 <p id="rfc.section.5.3.1.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.4"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1276 1379 </p> 1277 <p id="rfc.section.5.3.1.p.7">See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 1 2.2</a> for security considerations when used for forms.1380 <p id="rfc.section.5.3.1.p.7">See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 11.2</a> for security considerations when used for forms. 1278 1381 </p> 1279 1382 <h3 id="rfc.section.5.3.2"><a href="#rfc.section.5.3.2">5.3.2</a> <a id="HEAD" href="#HEAD">HEAD</a></h3> 1280 <div id="rfc.iref.h. 1"></div>1383 <div id="rfc.iref.h.5"></div> 1281 1384 <div id="rfc.iref.m.2"></div> 1282 1385 <p id="rfc.section.5.3.2.p.1">The HEAD method is identical to GET except that the server <em class="bcp14">MUST NOT</em> return a message body in the response. The metadata contained in the HTTP header fields in response to a HEAD request <em class="bcp14">SHOULD</em> be identical to the information sent in response to a GET request. This method can be used for obtaining metadata about the … … 1307 1410 the result. 1308 1411 </p> 1309 <p id="rfc.section.5.3.3.p.4">If a resource has been created on the origin server, the response <em class="bcp14">SHOULD</em> be <a href="#status.201" class="smpl">201 (Created)</a> and contain a representation which describes the status of the request and refers to the new resource, and a <a href="#header.location" class="smpl">Location</a> header field (see <a href="#header.location" id="rfc.xref.header.location.1" title="Location">Section 10.13</a>).1310 </p> 1311 <p id="rfc.section.5.3.3.p.5">Responses to POST requests are only cacheable when they include explicit freshness information (see <a href="p6-cache.html#calculating.freshness.lifetime" title="Calculating Freshness Lifetime">Section 4.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.6"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). A cached POST response with a <a href="#header.content-location" class="smpl">Content-Location</a> header field (see <a href="#header.content-location" id="rfc.xref.header.content-location.2" title="Content-Location">Section 10.8</a>) whose value is the effective Request URI <em class="bcp14">MAY</em> be used to satisfy subsequent GET and HEAD requests.1412 <p id="rfc.section.5.3.3.p.4">If a resource has been created on the origin server, the response <em class="bcp14">SHOULD</em> be <a href="#status.201" class="smpl">201 (Created)</a> and contain a representation which describes the status of the request and refers to the new resource, and a <a href="#header.location" class="smpl">Location</a> header field (see <a href="#header.location" id="rfc.xref.header.location.1" title="Location">Section 8.1.1</a>). 1413 </p> 1414 <p id="rfc.section.5.3.3.p.5">Responses to POST requests are only cacheable when they include explicit freshness information (see <a href="p6-cache.html#calculating.freshness.lifetime" title="Calculating Freshness Lifetime">Section 4.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.6"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). A cached POST response with a <a href="#header.content-location" class="smpl">Content-Location</a> header field (see <a href="#header.content-location" id="rfc.xref.header.content-location.2" title="Content-Location">Section 3.2.4</a>) whose value is the effective Request URI <em class="bcp14">MAY</em> be used to satisfy subsequent GET and HEAD requests. 1312 1415 </p> 1313 1416 <p id="rfc.section.5.3.3.p.6">Note that POST caching is not widely implemented. However, the <a href="#status.303" class="smpl">303 (See Other)</a> response can be used to direct the user agent to retrieve a cacheable representation of the resource. … … 1393 1496 for the effective request URI, those stored responses will be invalidated (see <a href="p6-cache.html#invalidation.after.updates.or.deletions" title="Request Methods that Invalidate">Section 6</a> of <a href="#Part6" id="rfc.xref.Part6.8"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1394 1497 </p> 1395 <div id="rfc.iref.c. 3"></div>1498 <div id="rfc.iref.c.7"></div> 1396 1499 <div id="rfc.iref.m.6"></div> 1397 1500 <h3 id="rfc.section.5.3.6"><a href="#rfc.section.5.3.6">5.3.6</a> <a id="CONNECT" href="#CONNECT">CONNECT</a></h3> … … 1399 1502 its behavior to blind forwarding of packets until the connection is closed. 1400 1503 </p> 1401 <p id="rfc.section.5.3.6.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.1 1"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[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.1504 <p id="rfc.section.5.3.6.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.12"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[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. 1402 1505 For example, 1403 1506 </p> 1404 <div id="rfc.figure.u. 4"></div><pre class="text2">CONNECT server.example.com:80 HTTP/1.11507 <div id="rfc.figure.u.11"></div><pre class="text2">CONNECT server.example.com:80 HTTP/1.1 1405 1508 Host: server.example.com:80 1406 1509 … … 1415 1518 </p> 1416 1519 <p id="rfc.section.5.3.6.p.7">Proxy authentication might be used to establish the authority to create a tunnel:</p> 1417 <div id="rfc.figure.u. 5"></div><pre class="text2">CONNECT server.example.com:80 HTTP/1.11520 <div id="rfc.figure.u.12"></div><pre class="text2">CONNECT server.example.com:80 HTTP/1.1 1418 1521 Host: server.example.com:80 1419 1522 Proxy-Authorization: basic aGVsbG86d29ybGQ= … … 1445 1548 body to make more detailed queries on the server. 1446 1549 </p> 1447 <p id="rfc.section.5.3.7.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.1 2"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) is an asterisk ("*"), the OPTIONS request is intended to apply to the server in general rather than to a specific resource.1550 <p id="rfc.section.5.3.7.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.13"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) is an asterisk ("*"), the OPTIONS request is intended to apply to the server in general rather than to a specific resource. 1448 1551 Since a server's communication options typically depend on the resource, the "*" request is only useful as a "ping" or "no-op" 1449 1552 type of method; it does nothing beyond allowing the client to test the capabilities of the server. For example, this can be … … 1456 1559 but might be defined by future extensions to HTTP. Content negotiation <em class="bcp14">MAY</em> be used to select the appropriate response format. If no response body is included, the response <em class="bcp14">MUST</em> include a <a href="p1-messaging.html#header.content-length" class="smpl">Content-Length</a> field with a field-value of "0". 1457 1560 </p> 1458 <p id="rfc.section.5.3.7.p.7">The <a href="#header.max-forwards" class="smpl">Max-Forwards</a> header field <em class="bcp14">MAY</em> be used to target a specific proxy in the request chain (see <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.1" title="Max-Forwards">Section 10.14</a>). If no Max-Forwards field is present in the request, then the forwarded request <em class="bcp14">MUST NOT</em> include a Max-Forwards field.1561 <p id="rfc.section.5.3.7.p.7">The <a href="#header.max-forwards" class="smpl">Max-Forwards</a> header field <em class="bcp14">MAY</em> be used to target a specific proxy in the request chain (see <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.1" title="Max-Forwards">Section 6.1.1</a>). If no Max-Forwards field is present in the request, then the forwarded request <em class="bcp14">MUST NOT</em> include a Max-Forwards field. 1459 1562 </p> 1460 1563 <h3 id="rfc.section.5.3.8"><a href="#rfc.section.5.3.8">5.3.8</a> <a id="TRACE" href="#TRACE">TRACE</a></h3> 1461 1564 <div id="rfc.iref.t.1"></div> 1462 1565 <div id="rfc.iref.m.8"></div> 1463 <p id="rfc.section.5.3.8.p.1">The TRACE method requests a remote, application-layer loop-back of the request message. The final recipient of the request <em class="bcp14">SHOULD</em> reflect the message received back to the client as the message body of a <a href="#status.200" class="smpl">200 (OK)</a> response. The final recipient is either the origin server or the first proxy to receive a <a href="#header.max-forwards" class="smpl">Max-Forwards</a> value of zero (0) in the request (see <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.2" title="Max-Forwards">Section 10.14</a>). A TRACE request <em class="bcp14">MUST NOT</em> include a message body.1566 <p id="rfc.section.5.3.8.p.1">The TRACE method requests a remote, application-layer loop-back of the request message. The final recipient of the request <em class="bcp14">SHOULD</em> reflect the message received back to the client as the message body of a <a href="#status.200" class="smpl">200 (OK)</a> response. The final recipient is either the origin server or the first proxy to receive a <a href="#header.max-forwards" class="smpl">Max-Forwards</a> value of zero (0) in the request (see <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.2" title="Max-Forwards">Section 6.1.1</a>). A TRACE request <em class="bcp14">MUST NOT</em> include a message body. 1464 1567 </p> 1465 1568 <p id="rfc.section.5.3.8.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 1466 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 5.7</a> of <a href="#Part1" id="rfc.xref.Part1.1 3"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[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 forwarding1569 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 5.7</a> of <a href="#Part1" id="rfc.xref.Part1.14"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[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 1467 1570 messages in an infinite loop. 1468 1571 </p> 1469 <p id="rfc.section.5.3.8.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.1 4"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[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.1572 <p id="rfc.section.5.3.8.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.15"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[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. 1470 1573 </p> 1471 1574 <h1 id="rfc.section.6"><a href="#rfc.section.6">6.</a> <a id="request.header.fields" href="#request.header.fields">Request Header Fields</a></h1> … … 1488 1591 <tr> 1489 1592 <td class="left">Host</td> 1490 <td class="left"><a href="p1-messaging.html#header.host" title="Host">Section 5.4</a> of <a href="#Part1" id="rfc.xref.Part1.1 5"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a></td>1593 <td class="left"><a href="p1-messaging.html#header.host" title="Host">Section 5.4</a> of <a href="#Part1" id="rfc.xref.Part1.16"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a></td> 1491 1594 </tr> 1492 1595 <tr> 1493 1596 <td class="left">Max-Forwards</td> 1494 <td class="left"><a href="#header.max-forwards" id="rfc.xref.header.max-forwards.3" title="Max-Forwards">Section 10.14</a></td>1597 <td class="left"><a href="#header.max-forwards" id="rfc.xref.header.max-forwards.3" title="Max-Forwards">Section 6.1.1</a></td> 1495 1598 </tr> 1496 1599 <tr> 1497 1600 <td class="left">Expect</td> 1498 <td class="left"><a href="#header.expect" id="rfc.xref.header.expect.1" title="Expect">Section 10.11</a></td>1601 <td class="left"><a href="#header.expect" id="rfc.xref.header.expect.1" title="Expect">Section 6.1.2</a></td> 1499 1602 </tr> 1500 1603 <tr> … … 1505 1608 </table> 1506 1609 </div> 1610 <div id="rfc.iref.m.9"></div> 1611 <div id="rfc.iref.h.6"></div> 1612 <h3 id="rfc.section.6.1.1"><a href="#rfc.section.6.1.1">6.1.1</a> <a id="header.max-forwards" href="#header.max-forwards">Max-Forwards</a></h3> 1613 <p id="rfc.section.6.1.1.p.1">The "Max-Forwards" header field provides a mechanism with the TRACE (<a href="#TRACE" id="rfc.xref.TRACE.2" title="TRACE">Section 5.3.8</a>) and OPTIONS (<a href="#OPTIONS" id="rfc.xref.OPTIONS.2" title="OPTIONS">Section 5.3.7</a>) methods to limit the number of times that the request is forwarded by proxies. This can be useful when the client is attempting 1614 to trace a request which appears to be failing or looping mid-chain. 1615 </p> 1616 <div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.7"></span> <a href="#header.max-forwards" class="smpl">Max-Forwards</a> = 1*<a href="#imported.abnf" class="smpl">DIGIT</a> 1617 </pre><p id="rfc.section.6.1.1.p.3">The Max-Forwards value is a decimal integer indicating the remaining number of times this request message can be forwarded.</p> 1618 <p id="rfc.section.6.1.1.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). 1619 </p> 1620 <p id="rfc.section.6.1.1.p.5">The Max-Forwards header field <em class="bcp14">MAY</em> be ignored for all other request methods. 1621 </p> 1622 <div id="rfc.iref.e.1"></div> 1623 <div id="rfc.iref.h.7"></div> 1624 <h3 id="rfc.section.6.1.2"><a href="#rfc.section.6.1.2">6.1.2</a> <a id="header.expect" href="#header.expect">Expect</a></h3> 1625 <p id="rfc.section.6.1.2.p.1">The "Expect" header field is used to indicate that particular server behaviors are required by the client.</p> 1626 <div id="rfc.figure.u.14"></div><pre class="inline"><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> <a href="#header.expect" class="smpl">Expect</a> = 1#<a href="#header.expect" class="smpl">expectation</a> 1627 1628 <a href="#header.expect" class="smpl">expectation</a> = <a href="#header.expect" class="smpl">expect-name</a> [ <a href="#imported.abnf" class="smpl">BWS</a> "=" <a href="#imported.abnf" class="smpl">BWS</a> <a href="#header.expect" class="smpl">expect-value</a> ] 1629 *( <a href="#imported.abnf" class="smpl">OWS</a> ";" [ <a href="#imported.abnf" class="smpl">OWS</a> <a href="#header.expect" class="smpl">expect-param</a> ] ) 1630 <a href="#header.expect" class="smpl">expect-param</a> = <a href="#header.expect" class="smpl">expect-name</a> [ <a href="#imported.abnf" class="smpl">BWS</a> "=" <a href="#imported.abnf" class="smpl">BWS</a> <a href="#header.expect" class="smpl">expect-value</a> ] 1631 1632 <a href="#header.expect" class="smpl">expect-name</a> = <a href="#imported.abnf" class="smpl">token</a> 1633 <a href="#header.expect" class="smpl">expect-value</a> = <a href="#imported.abnf" class="smpl">token</a> / <a href="#imported.abnf" class="smpl">quoted-string</a> 1634 </pre><p id="rfc.section.6.1.2.p.3">If all received Expect header field(s) are syntactically valid but contain an expectation that the recipient does not understand 1635 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. 1636 </p> 1637 <p id="rfc.section.6.1.2.p.4">The only expectation defined by this specification is:</p> 1638 <p id="rfc.section.6.1.2.p.5"><span id="rfc.iref.46"></span><span id="rfc.iref.e.2"></span> 100-continue 1639 </p> 1640 <ul class="empty"> 1641 <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.3</a> of <a href="#Part1" id="rfc.xref.Part1.17"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. It does not support any expect-params. 1642 </li> 1643 </ul> 1644 <p id="rfc.section.6.1.2.p.6">Comparison is case-insensitive for names (expect-name), and case-sensitive for values (expect-value).</p> 1645 <p id="rfc.section.6.1.2.p.7">The Expect mechanism is hop-by-hop: the above requirements apply to any server, including proxies. However, the Expect header 1646 field itself is end-to-end; it <em class="bcp14">MUST</em> be forwarded if the request is forwarded. 1647 </p> 1648 <p id="rfc.section.6.1.2.p.8">Many older HTTP/1.0 and HTTP/1.1 applications do not understand the Expect header field.</p> 1507 1649 <h2 id="rfc.section.6.2"><a href="#rfc.section.6.2">6.2</a> <a id="request.conditionals" href="#request.conditionals">Conditionals</a></h2> 1508 1650 <p id="rfc.section.6.2.p.1">Conditionals are request header fields that indicate a precondition to be tested before applying the method semantics to the … … 1554 1696 <tr> 1555 1697 <td class="left">Accept</td> 1556 <td class="left"><a href="#header.accept" id="rfc.xref.header.accept.2" title="Accept">Section 10.1</a></td>1698 <td class="left"><a href="#header.accept" id="rfc.xref.header.accept.2" title="Accept">Section 6.3.2</a></td> 1557 1699 </tr> 1558 1700 <tr> 1559 1701 <td class="left">Accept-Charset</td> 1560 <td class="left"><a href="#header.accept-charset" id="rfc.xref.header.accept-charset.2" title="Accept-Charset">Section 10.2</a></td>1702 <td class="left"><a href="#header.accept-charset" id="rfc.xref.header.accept-charset.2" title="Accept-Charset">Section 6.3.3</a></td> 1561 1703 </tr> 1562 1704 <tr> 1563 1705 <td class="left">Accept-Encoding</td> 1564 <td class="left"><a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.2" title="Accept-Encoding">Section 10.3</a></td>1706 <td class="left"><a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.2" title="Accept-Encoding">Section 6.3.4</a></td> 1565 1707 </tr> 1566 1708 <tr> 1567 1709 <td class="left">Accept-Language</td> 1568 <td class="left"><a href="#header.accept-language" id="rfc.xref.header.accept-language.2" title="Accept-Language">Section 10.4</a></td>1710 <td class="left"><a href="#header.accept-language" id="rfc.xref.header.accept-language.2" title="Accept-Language">Section 6.3.5</a></td> 1569 1711 </tr> 1570 1712 </tbody> 1571 1713 </table> 1572 1714 </div> 1715 <h3 id="rfc.section.6.3.1"><a href="#rfc.section.6.3.1">6.3.1</a> <a id="quality.values" href="#quality.values">Quality Values</a></h3> 1716 <p id="rfc.section.6.3.1.p.1">Many of the request header fields for server-driven content negotiation use a common parameter, named "q", to assign a relative 1717 "weight" to the preference for that associated kind of content. This weight is referred to as a "quality value" (or "qvalue") 1718 because the same parameter name is often used within server configurations to assign a weight to the relative quality of the 1719 various representations that can be selected for a resource. 1720 </p> 1721 <p id="rfc.section.6.3.1.p.2">The weight is normalized to a real number in the range 0 through 1, where 0.001 is the least preferred and 1 is the most preferred; 1722 a value of 0 means "not acceptable". If no "q" parameter is present, the default weight is 1. 1723 </p> 1724 <div id="rfc.figure.u.15"></div><pre class="inline"><span id="rfc.iref.g.13"></span><span id="rfc.iref.g.14"></span> <a href="#quality.values" class="smpl">weight</a> = <a href="#imported.abnf" class="smpl">OWS</a> ";" <a href="#imported.abnf" class="smpl">OWS</a> "q=" <a href="#quality.values" class="smpl">qvalue</a> 1725 <a href="#quality.values" class="smpl">qvalue</a> = ( "0" [ "." 0*3<a href="#imported.abnf" class="smpl">DIGIT</a> ] ) 1726 / ( "1" [ "." 0*3("0") ] ) 1727 </pre><p id="rfc.section.6.3.1.p.4">A sender of qvalue <em class="bcp14">MUST NOT</em> generate more than three digits after the decimal point. User configuration of these values ought to be limited in the same 1728 fashion. 1729 </p> 1730 <div id="rfc.iref.a.1"></div> 1731 <div id="rfc.iref.h.8"></div> 1732 <h3 id="rfc.section.6.3.2"><a href="#rfc.section.6.3.2">6.3.2</a> <a id="header.accept" href="#header.accept">Accept</a></h3> 1733 <p id="rfc.section.6.3.2.p.1">The "Accept" header field can be used by user agents to specify response media types that are acceptable. Accept header fields 1734 can be used to indicate that the request is specifically limited to a small set of desired types, as in the case of a request 1735 for an in-line image. 1736 </p> 1737 <div id="rfc.figure.u.16"></div><pre class="inline"><span id="rfc.iref.g.15"></span><span id="rfc.iref.g.16"></span><span id="rfc.iref.g.17"></span><span id="rfc.iref.g.18"></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> ] ) 1738 1739 <a href="#header.accept" class="smpl">media-range</a> = ( "*/*" 1740 / ( <a href="#media.types" class="smpl">type</a> "/" "*" ) 1741 / ( <a href="#media.types" class="smpl">type</a> "/" <a href="#media.types" class="smpl">subtype</a> ) 1742 ) *( <a href="#imported.abnf" class="smpl">OWS</a> ";" <a href="#imported.abnf" class="smpl">OWS</a> <a href="#rule.parameter" class="smpl">parameter</a> ) 1743 <a href="#header.accept" class="smpl">accept-params</a> = <a href="#quality.values" class="smpl">weight</a> *( <a href="#header.accept" class="smpl">accept-ext</a> ) 1744 <a href="#header.accept" class="smpl">accept-ext</a> = <a href="#imported.abnf" class="smpl">OWS</a> ";" <a href="#imported.abnf" class="smpl">OWS</a> <a href="#imported.abnf" class="smpl">token</a> [ "=" <a href="#imported.abnf" class="smpl">word</a> ] 1745 </pre><p id="rfc.section.6.3.2.p.3">The asterisk "*" character is used to group media types into ranges, with "*/*" indicating all media types and "type/*" indicating 1746 all subtypes of that type. The media-range <em class="bcp14">MAY</em> include media type parameters that are applicable to that range. 1747 </p> 1748 <p id="rfc.section.6.3.2.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 weight, as defined in <a href="#quality.values" title="Quality Values">Section 6.3.1</a>. The first "q" parameter (if any) separates the media-range parameter(s) from the accept-params. 1749 </p> 1750 <div class="note" id="rfc.section.6.3.2.p.5"> 1751 <p> <b>Note:</b> Use of the "q" parameter name to separate media type parameters from Accept extension parameters is due to historical practice. 1752 Although this prevents any media type parameter named "q" from being used with a media range, such an event is believed to 1753 be unlikely given the lack of any "q" parameters in the IANA media type registry and the rare usage of any media type parameters 1754 in Accept. Future media types are discouraged from registering any parameter named "q". 1755 </p> 1756 </div> 1757 <p id="rfc.section.6.3.2.p.6">The example</p> 1758 <div id="rfc.figure.u.17"></div><pre class="text"> Accept: audio/*; q=0.2, audio/basic 1759 </pre><p id="rfc.section.6.3.2.p.8"> <em class="bcp14">SHOULD</em> be interpreted as "I prefer audio/basic, but send me any audio type if it is the best available after an 80% mark-down in 1760 quality". 1761 </p> 1762 <p id="rfc.section.6.3.2.p.9">A request without any Accept header field implies that the user agent will accept any media type in response. If an Accept 1763 header field is present in a request and none of the available representations for the response have a media type that is 1764 listed as acceptable, the origin server <em class="bcp14">MAY</em> either honor the Accept header field by sending a <a href="#status.406" class="smpl">406 (Not Acceptable)</a> response or disregard the Accept header field by treating the response as if it is not subject to content negotiation. 1765 </p> 1766 <p id="rfc.section.6.3.2.p.10">A more elaborate example is</p> 1767 <div id="rfc.figure.u.18"></div><pre class="text"> Accept: text/plain; q=0.5, text/html, 1768 text/x-dvi; q=0.8, text/x-c 1769 </pre><p id="rfc.section.6.3.2.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 1770 send the text/x-dvi representation, and if that does not exist, send the text/plain representation". 1771 </p> 1772 <p id="rfc.section.6.3.2.p.13">Media ranges can be overridden by more specific media ranges or specific media types. If more than one media range applies 1773 to a given type, the most specific reference has precedence. For example, 1774 </p> 1775 <div id="rfc.figure.u.19"></div><pre class="text"> Accept: text/*, text/plain, text/plain;format=flowed, */* 1776 </pre><p id="rfc.section.6.3.2.p.15">have the following precedence: </p> 1777 <ol> 1778 <li>text/plain;format=flowed</li> 1779 <li>text/plain</li> 1780 <li>text/*</li> 1781 <li>*/*</li> 1782 </ol> 1783 <p id="rfc.section.6.3.2.p.16">The media type quality factor associated with a given type is determined by finding the media range with the highest precedence 1784 which matches that type. For example, 1785 </p> 1786 <div id="rfc.figure.u.20"></div><pre class="text"> Accept: text/*;q=0.3, text/html;q=0.7, text/html;level=1, 1787 text/html;level=2;q=0.4, */*;q=0.5 1788 </pre><p id="rfc.section.6.3.2.p.18">would cause the following values to be associated:</p> 1789 <div id="rfc.table.u.7"> 1790 <table class="tt full left" cellpadding="3" cellspacing="0"> 1791 <thead> 1792 <tr> 1793 <th>Media Type</th> 1794 <th>Quality Value</th> 1795 </tr> 1796 </thead> 1797 <tbody> 1798 <tr> 1799 <td class="left">text/html;level=1</td> 1800 <td class="left">1</td> 1801 </tr> 1802 <tr> 1803 <td class="left">text/html</td> 1804 <td class="left">0.7</td> 1805 </tr> 1806 <tr> 1807 <td class="left">text/plain</td> 1808 <td class="left">0.3</td> 1809 </tr> 1810 <tr> 1811 <td class="left">image/jpeg</td> 1812 <td class="left">0.5</td> 1813 </tr> 1814 <tr> 1815 <td class="left">text/html;level=2</td> 1816 <td class="left">0.4</td> 1817 </tr> 1818 <tr> 1819 <td class="left">text/html;level=3</td> 1820 <td class="left">0.7</td> 1821 </tr> 1822 </tbody> 1823 </table> 1824 </div> 1825 <p id="rfc.section.6.3.2.p.19"> <b>Note:</b> A user agent might be provided with a default set of quality values for certain media ranges. However, unless the user agent 1826 is a closed system which cannot interact with other rendering agents, this default set ought to be configurable by the user. 1827 </p> 1828 <div id="rfc.iref.a.2"></div> 1829 <div id="rfc.iref.h.9"></div> 1830 <h3 id="rfc.section.6.3.3"><a href="#rfc.section.6.3.3">6.3.3</a> <a id="header.accept-charset" href="#header.accept-charset">Accept-Charset</a></h3> 1831 <p id="rfc.section.6.3.3.p.1">The "Accept-Charset" header field can be used by user agents to indicate what character encodings are acceptable in a response 1832 payload. This field allows clients capable of understanding more comprehensive or special-purpose character encodings to signal 1833 that capability to a server which is capable of representing documents in those character encodings. 1834 </p> 1835 <div id="rfc.figure.u.21"></div><pre class="inline"><span id="rfc.iref.g.19"></span> <a href="#header.accept-charset" class="smpl">Accept-Charset</a> = 1#( ( <a href="#rule.charset" class="smpl">charset</a> / "*" ) [ <a href="#quality.values" class="smpl">weight</a> ] ) 1836 </pre><p id="rfc.section.6.3.3.p.3">Character encoding values (a.k.a., charsets) are described in <a href="#character.sets" title="Character Encodings (charset)">Section 9.3</a>. Each charset <em class="bcp14">MAY</em> be given an associated quality value which represents the user's preference for that charset, as defined in <a href="#quality.values" title="Quality Values">Section 6.3.1</a>. An example is 1837 </p> 1838 <div id="rfc.figure.u.22"></div><pre class="text"> Accept-Charset: iso-8859-5, unicode-1-1;q=0.8 1839 </pre><p id="rfc.section.6.3.3.p.5">The special value "*", if present in the Accept-Charset field, matches every character encoding which is not mentioned elsewhere 1840 in the Accept-Charset field. If no "*" is present in an Accept-Charset field, then any character encodings not explicitly 1841 mentioned in the field are considered "not acceptable" to the client. 1842 </p> 1843 <p id="rfc.section.6.3.3.p.6">A request without any Accept-Charset header field implies that the user agent will accept any character encoding in response.</p> 1844 <p id="rfc.section.6.3.3.p.7">If an Accept-Charset header field is present in a request and none of the available representations for the response have 1845 a character encoding that is listed as acceptable, the origin server <em class="bcp14">MAY</em> either honor the Accept-Charset header field by sending a <a href="#status.406" class="smpl">406 (Not Acceptable)</a> response or disregard the Accept-Charset header field by treating the response as if it is not subject to content negotiation. 1846 </p> 1847 <div id="rfc.iref.a.3"></div> 1848 <div id="rfc.iref.h.10"></div> 1849 <h3 id="rfc.section.6.3.4"><a href="#rfc.section.6.3.4">6.3.4</a> <a id="header.accept-encoding" href="#header.accept-encoding">Accept-Encoding</a></h3> 1850 <p id="rfc.section.6.3.4.p.1">The "Accept-Encoding" header field can be used by user agents to indicate what response content-codings (<a href="#content.codings" title="Content Codings">Section 9.4</a>) are acceptable in the response. An "identity" token is used as a synonym for "no encoding" in order to communicate when 1851 no encoding is preferred. 1852 </p> 1853 <div id="rfc.figure.u.23"></div><pre class="inline"><span id="rfc.iref.g.20"></span><span id="rfc.iref.g.21"></span> <a href="#header.accept-encoding" class="smpl">Accept-Encoding</a> = #( <a href="#header.accept-encoding" class="smpl">codings</a> [ <a href="#quality.values" class="smpl">weight</a> ] ) 1854 <a href="#header.accept-encoding" class="smpl">codings</a> = <a href="#content.codings" class="smpl">content-coding</a> / "identity" / "*" 1855 </pre><p id="rfc.section.6.3.4.p.3">Each codings value <em class="bcp14">MAY</em> be given an associated quality value which represents the preference for that encoding, as defined in <a href="#quality.values" title="Quality Values">Section 6.3.1</a>. 1856 </p> 1857 <p id="rfc.section.6.3.4.p.4">For example,</p> 1858 <div id="rfc.figure.u.24"></div><pre class="text"> Accept-Encoding: compress, gzip 1859 Accept-Encoding: 1860 Accept-Encoding: * 1861 Accept-Encoding: compress;q=0.5, gzip;q=1.0 1862 Accept-Encoding: gzip;q=1.0, identity; q=0.5, *;q=0 1863 </pre><p id="rfc.section.6.3.4.p.6">A server tests whether a content-coding for a given representation is acceptable, according to an Accept-Encoding field, using 1864 these rules: 1865 </p> 1866 <ol> 1867 <li>The special "*" symbol in an Accept-Encoding field matches any available content-coding not explicitly listed in the header 1868 field. 1869 </li> 1870 <li>If the representation has no content-coding, then it is acceptable by default unless specifically excluded by the Accept-Encoding 1871 field stating either "identity;q=0" or "*;q=0" without a more specific entry for "identity". 1872 </li> 1873 <li>If the representation's content-coding is one of the content-codings listed in the Accept-Encoding field, then it is acceptable 1874 unless it is accompanied by a qvalue of 0. (As defined in <a href="#quality.values" title="Quality Values">Section 6.3.1</a>, a qvalue of 0 means "not acceptable".) 1875 </li> 1876 <li>If multiple content-codings are acceptable, then the acceptable content-coding with the highest non-zero qvalue is preferred.</li> 1877 </ol> 1878 <p id="rfc.section.6.3.4.p.7">An Accept-Encoding header field with a combined field-value that is empty implies that the user agent does not want any content-coding 1879 in response. If an Accept-Encoding header field is present in a request and none of the available representations for the 1880 response have a content-coding that is listed as acceptable, the origin server <em class="bcp14">SHOULD</em> send a response without any content-coding. 1881 </p> 1882 <p id="rfc.section.6.3.4.p.8">A request without an Accept-Encoding header field implies that the user agent will accept any content-coding in response.</p> 1883 <div class="note" id="rfc.section.6.3.4.p.9"> 1884 <p> <b>Note:</b> Most HTTP/1.0 applications do not recognize or obey qvalues associated with content-codings. This means that qvalues will 1885 not work and are not permitted with x-gzip or x-compress. 1886 </p> 1887 </div> 1888 <div id="rfc.iref.a.4"></div> 1889 <div id="rfc.iref.h.11"></div> 1890 <h3 id="rfc.section.6.3.5"><a href="#rfc.section.6.3.5">6.3.5</a> <a id="header.accept-language" href="#header.accept-language">Accept-Language</a></h3> 1891 <p id="rfc.section.6.3.5.p.1">The "Accept-Language" header field can be used by user agents to indicate the set of natural languages that are preferred 1892 in the response. Language tags are defined in <a href="#language.tags" title="Language Tags">Section 9.6</a>. 1893 </p> 1894 <div id="rfc.figure.u.25"></div><pre class="inline"><span id="rfc.iref.g.22"></span><span id="rfc.iref.g.23"></span> <a href="#header.accept-language" class="smpl">Accept-Language</a> = 1#( <a href="#header.accept-language" class="smpl">language-range</a> [ <a href="#quality.values" class="smpl">weight</a> ] ) 1895 <a href="#header.accept-language" class="smpl">language-range</a> = 1896 <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>> 1897 </pre><p id="rfc.section.6.3.5.p.3">Each language-range can be given an associated quality value which represents an estimate of the user's preference for the 1898 languages specified by that range, as defined in <a href="#quality.values" title="Quality Values">Section 6.3.1</a>. For example, 1899 </p> 1900 <div id="rfc.figure.u.26"></div><pre class="text"> Accept-Language: da, en-gb;q=0.8, en;q=0.7 1901 </pre><p id="rfc.section.6.3.5.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>) 1902 </p> 1903 <p id="rfc.section.6.3.5.p.6">For matching, <a href="http://tools.ietf.org/html/rfc4647#section-3">Section 3</a> of <a href="#RFC4647" id="rfc.xref.RFC4647.3"><cite title="Matching of Language Tags">[RFC4647]</cite></a> defines several matching schemes. Implementations can offer the most appropriate matching scheme for their requirements. 1904 </p> 1905 <div class="note" id="rfc.section.6.3.5.p.7"> 1906 <p> <b>Note:</b> The "Basic Filtering" scheme (<a href="#RFC4647" id="rfc.xref.RFC4647.4"><cite title="Matching of Language Tags">[RFC4647]</cite></a>, <a href="http://tools.ietf.org/html/rfc4647#section-3.3.1">Section 3.3.1</a>) is identical to the matching scheme that was previously defined in <a href="http://tools.ietf.org/html/rfc2616#section-14.4">Section 14.4</a> of <a href="#RFC2616" id="rfc.xref.RFC2616.1"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2616]</cite></a>. 1907 </p> 1908 </div> 1909 <p id="rfc.section.6.3.5.p.8">It might be contrary to the privacy expectations of the user to send an Accept-Language header field with the complete linguistic 1910 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 11.5</a>. 1911 </p> 1912 <p id="rfc.section.6.3.5.p.9">As intelligibility is highly dependent on the individual user, it is recommended that client applications make the choice 1913 of linguistic preference available to the user. If the choice is not made available, then the Accept-Language header field <em class="bcp14">MUST NOT</em> be given in the request. 1914 </p> 1915 <div class="note" id="rfc.section.6.3.5.p.10"> 1916 <p> <b>Note:</b> When making the choice of linguistic preference available to the user, we remind implementers of the fact that users are not 1917 familiar with the details of language matching as described above, and ought to be provided appropriate guidance. As an example, 1918 users might assume that on selecting "en-gb", they will be served any kind of English document if British English is not available. 1919 A user agent might suggest in such a case to add "en" to get the best matching behavior. 1920 </p> 1921 </div> 1573 1922 <h2 id="rfc.section.6.4"><a href="#rfc.section.6.4">6.4</a> <a id="request.auth" href="#request.auth">Authentication</a></h2> 1574 <div id="rfc.table.u. 7">1923 <div id="rfc.table.u.8"> 1575 1924 <table class="tt full left" cellpadding="3" cellspacing="0"> 1576 1925 <thead> … … 1593 1942 </div> 1594 1943 <h2 id="rfc.section.6.5"><a href="#rfc.section.6.5">6.5</a> <a id="request.context" href="#request.context">Context</a></h2> 1595 <div id="rfc.table.u. 8">1944 <div id="rfc.table.u.9"> 1596 1945 <table class="tt full left" cellpadding="3" cellspacing="0"> 1597 1946 <thead> … … 1604 1953 <tr> 1605 1954 <td class="left">From</td> 1606 <td class="left"><a href="#header.from" id="rfc.xref.header.from.1" title="From">Section 10.12</a></td>1955 <td class="left"><a href="#header.from" id="rfc.xref.header.from.1" title="From">Section 6.5.1</a></td> 1607 1956 </tr> 1608 1957 <tr> 1609 1958 <td class="left">Referer</td> 1610 <td class="left"><a href="#header.referer" id="rfc.xref.header.referer.1" title="Referer">Section 10.15</a></td>1959 <td class="left"><a href="#header.referer" id="rfc.xref.header.referer.1" title="Referer">Section 6.5.2</a></td> 1611 1960 </tr> 1612 1961 <tr> 1613 1962 <td class="left">TE</td> 1614 <td class="left"><a href="p1-messaging.html#header.te" title="TE">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.1 6"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a></td>1963 <td class="left"><a href="p1-messaging.html#header.te" title="TE">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.18"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a></td> 1615 1964 </tr> 1616 1965 <tr> 1617 1966 <td class="left">User-Agent</td> 1618 <td class="left"><a href="#header.user-agent" id="rfc.xref.header.user-agent.2" title="User-Agent">Section 10.18</a></td>1967 <td class="left"><a href="#header.user-agent" id="rfc.xref.header.user-agent.2" title="User-Agent">Section 6.5.3</a></td> 1619 1968 </tr> 1620 1969 </tbody> 1621 1970 </table> 1622 1971 </div> 1623 <h1 id="rfc.section.7"><a href="#rfc.section.7">7.</a> <a id="status.codes" href="#status.codes">Response Status Codes</a></h1> 1972 <div id="rfc.iref.f.1"></div> 1973 <div id="rfc.iref.h.12"></div> 1974 <h3 id="rfc.section.6.5.1"><a href="#rfc.section.6.5.1">6.5.1</a> <a id="header.from" href="#header.from">From</a></h3> 1975 <p id="rfc.section.6.5.1.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.1"><cite title="Internet Message Format">[RFC5322]</cite></a>: 1976 </p> 1977 <div id="rfc.figure.u.27"></div><pre class="inline"><span id="rfc.iref.g.24"></span> <a href="#header.from" class="smpl">From</a> = <a href="#header.from" class="smpl">mailbox</a> 1978 1979 <a href="#header.from" class="smpl">mailbox</a> = <mailbox, defined in <a href="#RFC5322" id="rfc.xref.RFC5322.2"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a>> 1980 </pre><p id="rfc.section.6.5.1.p.3">An example is:</p> 1981 <div id="rfc.figure.u.28"></div><pre class="text"> From: webmaster@example.org 1982 </pre><p id="rfc.section.6.5.1.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 1983 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 1984 end. 1985 </p> 1986 <p id="rfc.section.6.5.1.p.6">The Internet e-mail address in this field <em class="bcp14">MAY</em> be separate from the Internet host which issued the request. For example, when a request is passed through a proxy the original 1987 issuer's address <em class="bcp14">SHOULD</em> be used. 1988 </p> 1989 <p id="rfc.section.6.5.1.p.7">The client <em class="bcp14">SHOULD NOT</em> send the From header field without the user's approval, as it might conflict with the user's privacy interests or their site's 1990 security policy. It is strongly recommended that the user be able to disable, enable, and modify the value of this field at 1991 any time prior to a request. 1992 </p> 1993 <div id="rfc.iref.r.2"></div> 1994 <div id="rfc.iref.h.13"></div> 1995 <h3 id="rfc.section.6.5.2"><a href="#rfc.section.6.5.2">6.5.2</a> <a id="header.referer" href="#header.referer">Referer</a></h3> 1996 <p id="rfc.section.6.5.2.p.1">The "Referer" [sic] header field allows the client to specify the URI of the resource from which the target URI was obtained 1997 (the "referrer", although the header field is misspelled.). 1998 </p> 1999 <p id="rfc.section.6.5.2.p.2">The Referer header field allows servers to generate lists of back-links to resources for interest, logging, optimized caching, 2000 etc. It also allows obsolete or mistyped links to be traced for maintenance. Some servers use Referer as a means of controlling 2001 where they allow links from (so-called "deep linking"), but legitimate requests do not always contain a Referer header field. 2002 </p> 2003 <p id="rfc.section.6.5.2.p.3">If the target URI was obtained from a source that does not have its own URI (e.g., input from the user keyboard), the Referer 2004 field <em class="bcp14">MUST</em> either be sent with the value "about:blank", or not be sent at all. Note that this requirement does not apply to sources with 2005 non-HTTP URIs (e.g., FTP). 2006 </p> 2007 <div id="rfc.figure.u.29"></div><pre class="inline"><span id="rfc.iref.g.25"></span> <a href="#header.referer" class="smpl">Referer</a> = <a href="#imported.abnf" class="smpl">absolute-URI</a> / <a href="#imported.abnf" class="smpl">partial-URI</a> 2008 </pre><p id="rfc.section.6.5.2.p.5">Example:</p> 2009 <div id="rfc.figure.u.30"></div><pre class="text"> Referer: http://www.example.org/hypertext/Overview.html 2010 </pre><p id="rfc.section.6.5.2.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 11.2</a> for security considerations. 2011 </p> 2012 <div id="rfc.iref.u.1"></div> 2013 <div id="rfc.iref.h.14"></div> 2014 <h3 id="rfc.section.6.5.3"><a href="#rfc.section.6.5.3">6.5.3</a> <a id="header.user-agent" href="#header.user-agent">User-Agent</a></h3> 2015 <p id="rfc.section.6.5.3.p.1">The "User-Agent" header field contains information about the user agent originating the request. User agents <em class="bcp14">SHOULD</em> include this field with requests. 2016 </p> 2017 <p id="rfc.section.6.5.3.p.2">Typically, it is used for statistical purposes, the tracing of protocol violations, and tailoring responses to avoid particular 2018 user agent limitations. 2019 </p> 2020 <p id="rfc.section.6.5.3.p.3">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 9.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.19"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) identifying the agent and its significant subproducts. By convention, the product tokens are listed in order of their significance 2021 for identifying the application. 2022 </p> 2023 <p id="rfc.section.6.5.3.p.4">Because this field is usually sent on every request a user agent makes, implementations are encouraged not to include needlessly 2024 fine-grained detail, and to limit (or even prohibit) the addition of subproducts by third parties. Overly long and detailed 2025 User-Agent field values make requests larger and can also be used to identify ("fingerprint") the user against their wishes. 2026 </p> 2027 <p id="rfc.section.6.5.3.p.5">Likewise, implementations are encouraged not to use the product tokens of other implementations in order to declare compatibility 2028 with them, as this circumvents the purpose of the field. Finally, they are encouraged not to use comments to identify products; 2029 doing so makes the field value more difficult to parse. 2030 </p> 2031 <div id="rfc.figure.u.31"></div><pre class="inline"><span id="rfc.iref.g.26"></span> <a href="#header.user-agent" class="smpl">User-Agent</a> = <a href="#product.tokens" class="smpl">product</a> *( <a href="#imported.abnf" class="smpl">RWS</a> ( <a href="#product.tokens" class="smpl">product</a> / <a href="#imported.abnf" class="smpl">comment</a> ) ) 2032 </pre><p id="rfc.section.6.5.3.p.7">Example:</p> 2033 <div id="rfc.figure.u.32"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b3 2034 </pre><h1 id="rfc.section.7"><a href="#rfc.section.7">7.</a> <a id="status.codes" href="#status.codes">Response Status Codes</a></h1> 1624 2035 <p id="rfc.section.7.p.1">The status-code element is a 3-digit integer result code of the attempt to understand and satisfy the request.</p> 1625 2036 <p id="rfc.section.7.p.2">HTTP status codes are extensible. HTTP applications are not required to understand the meaning of all registered status codes, … … 1644 2055 </li> 1645 2056 </ul> 1646 <p id="rfc.section.7.p.4">For most status codes the response can carry a payload, in which case a <a href="#header.content-type" class="smpl">Content-Type</a> header field indicates the payload's media type (<a href="#header.content-type" id="rfc.xref.header.content-type.2" title="Content-Type">Section 10.9</a>).2057 <p id="rfc.section.7.p.4">For most status codes the response can carry a payload, in which case a <a href="#header.content-type" class="smpl">Content-Type</a> header field indicates the payload's media type (<a href="#header.content-type" id="rfc.xref.header.content-type.2" title="Content-Type">Section 3.2.1</a>). 1647 2058 </p> 1648 2059 <h2 id="rfc.section.7.1"><a href="#rfc.section.7.1">7.1</a> <a id="overview.of.status.codes" href="#overview.of.status.codes">Overview of Status Codes</a></h2> … … 1650 2061 protocol. 1651 2062 </p> 1652 <div id="rfc.table.u. 9">2063 <div id="rfc.table.u.10"> 1653 2064 <table class="tt full left" cellpadding="3" cellspacing="0"> 1654 2065 <thead> … … 1870 2281 <p id="rfc.section.7.1.p.2">Note that this list is not exhaustive — it does not include extension status codes defined in other specifications.</p> 1871 2282 <h2 id="rfc.section.7.2"><a href="#rfc.section.7.2">7.2</a> <a id="status.1xx" href="#status.1xx">Informational 1xx</a></h2> 1872 <div id="rfc.iref. 26"></div>2283 <div id="rfc.iref.75"></div> 1873 2284 <div id="rfc.iref.s.3"></div> 1874 2285 <p id="rfc.section.7.2.p.1">This class of status code indicates a provisional response, consisting only of the status-line and optional header fields, … … 1883 2294 a request, then it need not forward the corresponding <a href="#status.100" class="smpl">100 (Continue)</a> response(s).) 1884 2295 </p> 1885 <div id="rfc.iref. 27"></div>2296 <div id="rfc.iref.76"></div> 1886 2297 <div id="rfc.iref.s.4"></div> 1887 2298 <h3 id="rfc.section.7.2.1"><a href="#rfc.section.7.2.1">7.2.1</a> <a id="status.100" href="#status.100">100 Continue</a></h3> 1888 2299 <p id="rfc.section.7.2.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 1889 2300 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 1890 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.3</a> of <a href="#Part1" id="rfc.xref.Part1. 17"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a> for detailed discussion of the use and handling of this status code.1891 </p> 1892 <div id="rfc.iref. 28"></div>2301 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.3</a> of <a href="#Part1" id="rfc.xref.Part1.20"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a> for detailed discussion of the use and handling of this status code. 2302 </p> 2303 <div id="rfc.iref.77"></div> 1893 2304 <div id="rfc.iref.s.5"></div> 1894 2305 <h3 id="rfc.section.7.2.2"><a href="#rfc.section.7.2.2">7.2.2</a> <a id="status.101" href="#status.101">101 Switching Protocols</a></h3> 1895 <p id="rfc.section.7.2.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.4</a> of <a href="#Part1" id="rfc.xref.Part1. 18"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>), for a change in the application protocol being used on this connection. The server will switch protocols to those defined2306 <p id="rfc.section.7.2.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.4</a> of <a href="#Part1" id="rfc.xref.Part1.21"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>), for a change in the application protocol being used on this connection. The server will switch protocols to those defined 1896 2307 by the response's Upgrade header field immediately after the empty line which terminates the 101 response. 1897 2308 </p> … … 1901 2312 </p> 1902 2313 <h2 id="rfc.section.7.3"><a href="#rfc.section.7.3">7.3</a> <a id="status.2xx" href="#status.2xx">Successful 2xx</a></h2> 1903 <div id="rfc.iref. 29"></div>2314 <div id="rfc.iref.78"></div> 1904 2315 <div id="rfc.iref.s.6"></div> 1905 2316 <p id="rfc.section.7.3.p.1">This class of status code indicates that the client's request was successfully received, understood, and accepted.</p> 1906 <div id="rfc.iref. 30"></div>2317 <div id="rfc.iref.79"></div> 1907 2318 <div id="rfc.iref.s.7"></div> 1908 2319 <h3 id="rfc.section.7.3.1"><a href="#rfc.section.7.3.1">7.3.1</a> <a id="status.200" href="#status.200">200 OK</a></h3> … … 1920 2331 <p id="rfc.section.7.3.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.9"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 200 responses. 1921 2332 </p> 1922 <div id="rfc.iref. 31"></div>2333 <div id="rfc.iref.80"></div> 1923 2334 <div id="rfc.iref.s.8"></div> 1924 2335 <h3 id="rfc.section.7.3.2"><a href="#rfc.section.7.3.2">7.3.2</a> <a id="status.201" href="#status.201">201 Created</a></h3> … … 1933 2344 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.12"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>). 1934 2345 </p> 1935 <div id="rfc.iref. 32"></div>2346 <div id="rfc.iref.81"></div> 1936 2347 <div id="rfc.iref.s.9"></div> 1937 2348 <h3 id="rfc.section.7.3.3"><a href="#rfc.section.7.3.3">7.3.3</a> <a id="status.202" href="#status.202">202 Accepted</a></h3> … … 1945 2356 user can expect the request to be fulfilled. 1946 2357 </p> 1947 <div id="rfc.iref. 33"></div>2358 <div id="rfc.iref.82"></div> 1948 2359 <div id="rfc.iref.s.10"></div> 1949 2360 <h3 id="rfc.section.7.3.4"><a href="#rfc.section.7.3.4">7.3.4</a> <a id="status.203" href="#status.203">203 Non-Authoritative Information</a></h3> 1950 <p id="rfc.section.7.3.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.3</a> of <a href="#Part1" id="rfc.xref.Part1. 19"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[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.10"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>).2361 <p id="rfc.section.7.3.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.3</a> of <a href="#Part1" id="rfc.xref.Part1.22"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[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.10"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1951 2362 </p> 1952 2363 <p id="rfc.section.7.3.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 … … 1955 2366 <p id="rfc.section.7.3.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.12"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 203 responses. 1956 2367 </p> 1957 <div id="rfc.iref. 34"></div>2368 <div id="rfc.iref.83"></div> 1958 2369 <div id="rfc.iref.s.11"></div> 1959 2370 <h3 id="rfc.section.7.3.5"><a href="#rfc.section.7.3.5">7.3.5</a> <a id="status.204" href="#status.204">204 No Content</a></h3> … … 1976 2387 <p id="rfc.section.7.3.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. 1977 2388 </p> 1978 <div id="rfc.iref. 35"></div>2389 <div id="rfc.iref.84"></div> 1979 2390 <div id="rfc.iref.s.12"></div> 1980 2391 <h3 id="rfc.section.7.3.6"><a href="#rfc.section.7.3.6">7.3.6</a> <a id="status.205" href="#status.205">205 Reset Content</a></h3> … … 1983 2394 another input action. 1984 2395 </p> 1985 <p id="rfc.section.7.3.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.2 0"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>.2396 <p id="rfc.section.7.3.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.23"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. 1986 2397 </p> 1987 2398 <h2 id="rfc.section.7.4"><a href="#rfc.section.7.4">7.4</a> <a id="status.3xx" href="#status.3xx">Redirection 3xx</a></h2> 1988 <div id="rfc.iref. 36"></div>2399 <div id="rfc.iref.85"></div> 1989 2400 <div id="rfc.iref.s.13"></div> 1990 2401 <p id="rfc.section.7.4.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. … … 2006 2417 </li> 2007 2418 <li> 2008 <p>Redirection offering a choice of matching resources for use by agent-driven content negotiation (<a href="#agent-driven.negotiation" title="Agent-driven Negotiation">Section 3. 4.2</a>). This is status code <a href="#status.300" class="smpl">300 (Multiple Choices)</a>.2419 <p>Redirection offering a choice of matching resources for use by agent-driven content negotiation (<a href="#agent-driven.negotiation" title="Agent-driven Negotiation">Section 3.5.2</a>). This is status code <a href="#status.300" class="smpl">300 (Multiple Choices)</a>. 2009 2420 </p> 2010 2421 </li> … … 2018 2429 <p> <b>Note:</b> In HTTP/1.0, only the status codes <a href="#status.301" class="smpl">301 (Moved Permanently)</a> and <a href="#status.302" class="smpl">302 (Found)</a> were defined for the first type of redirect, and the second type did not exist at all (<a href="#RFC1945" id="rfc.xref.RFC1945.1"><cite title="Hypertext Transfer Protocol -- HTTP/1.0">[RFC1945]</cite></a>, <a href="http://tools.ietf.org/html/rfc1945#section-9.3">Section 9.3</a>). However it turned out that web forms using POST expected redirects to change the operation for the subsequent request to 2019 2430 retrieval (GET). To address this use case, HTTP/1.1 introduced the second type of redirect with the status code <a href="#status.303" class="smpl">303 (See Other)</a> (<a href="#RFC2068" id="rfc.xref.RFC2068.1"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2068]</cite></a>, <a href="http://tools.ietf.org/html/rfc2068#section-10.3.4">Section 10.3.4</a>). As user agents did not change their behavior to maintain backwards compatibility, the first revision of HTTP/1.1 added 2020 yet another status code, <a href="#status.307" class="smpl">307 (Temporary Redirect)</a>, for which the backwards compatibility problems did not apply (<a href="#RFC2616" id="rfc.xref.RFC2616. 1"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2616]</cite></a>, <a href="http://tools.ietf.org/html/rfc2616#section-10.3.8">Section 10.3.8</a>). Over 10 years later, most user agents still do method rewriting for status codes <a href="#status.301" class="smpl">301</a> and <a href="#status.302" class="smpl">302</a>, therefore this specification makes that behavior conformant in case the original request was POST.2431 yet another status code, <a href="#status.307" class="smpl">307 (Temporary Redirect)</a>, for which the backwards compatibility problems did not apply (<a href="#RFC2616" id="rfc.xref.RFC2616.2"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2616]</cite></a>, <a href="http://tools.ietf.org/html/rfc2616#section-10.3.8">Section 10.3.8</a>). Over 10 years later, most user agents still do method rewriting for status codes <a href="#status.301" class="smpl">301</a> and <a href="#status.302" class="smpl">302</a>, therefore this specification makes that behavior conformant in case the original request was POST. 2021 2432 </p> 2022 2433 </div> 2023 <p id="rfc.section.7.4.p.4">A <a href="#header.location" class="smpl">Location</a> header field on a 3xx response indicates that a client <em class="bcp14">MAY</em> automatically redirect to the URI provided; see <a href="#header.location" id="rfc.xref.header.location.2" title="Location">Section 10.13</a>.2434 <p id="rfc.section.7.4.p.4">A <a href="#header.location" class="smpl">Location</a> header field on a 3xx response indicates that a client <em class="bcp14">MAY</em> automatically redirect to the URI provided; see <a href="#header.location" id="rfc.xref.header.location.2" title="Location">Section 8.1.1</a>. 2024 2435 </p> 2025 2436 <p id="rfc.section.7.4.p.5">Note that for methods not known to be "safe", as defined in <a href="#safe.methods" title="Safe Methods">Section 5.2.1</a>, automatic redirection needs to done with care, since the redirect might change the conditions under which the request was … … 2032 2443 </p> 2033 2444 </div> 2034 <div id="rfc.iref. 37"></div>2445 <div id="rfc.iref.86"></div> 2035 2446 <div id="rfc.iref.s.14"></div> 2036 2447 <h3 id="rfc.section.7.4.1"><a href="#rfc.section.7.4.1">7.4.1</a> <a id="status.300" href="#status.300">300 Multiple Choices</a></h3> 2037 2448 <p id="rfc.section.7.4.1.p.1">The target resource has more than one representation, each with its own specific location, and agent-driven negotiation information 2038 (<a href="#content.negotiation" title="Content Negotiation">Section 3. 4</a>) is being provided so that the user (or user agent) can select a preferred representation by redirecting its request to that2449 (<a href="#content.negotiation" title="Content Negotiation">Section 3.5</a>) is being provided so that the user (or user agent) can select a preferred representation by redirecting its request to that 2039 2450 location. 2040 2451 </p> … … 2047 2458 <p id="rfc.section.7.4.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.13"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 300 responses. 2048 2459 </p> 2049 <div id="rfc.iref. 38"></div>2460 <div id="rfc.iref.87"></div> 2050 2461 <div id="rfc.iref.s.15"></div> 2051 2462 <h3 id="rfc.section.7.4.2"><a href="#rfc.section.7.4.2">7.4.2</a> <a id="status.301" href="#status.301">301 Moved Permanently</a></h3> … … 2061 2472 </p> 2062 2473 </div> 2063 <div id="rfc.iref. 39"></div>2474 <div id="rfc.iref.88"></div> 2064 2475 <div id="rfc.iref.s.16"></div> 2065 2476 <h3 id="rfc.section.7.4.3"><a href="#rfc.section.7.4.3">7.4.3</a> <a id="status.302" href="#status.302">302 Found</a></h3> … … 2072 2483 </p> 2073 2484 </div> 2074 <div id="rfc.iref. 40"></div>2485 <div id="rfc.iref.89"></div> 2075 2486 <div id="rfc.iref.s.17"></div> 2076 2487 <h3 id="rfc.section.7.4.4"><a href="#rfc.section.7.4.4">7.4.4</a> <a id="status.303" href="#status.303">303 See Other</a></h3> … … 2093 2504 <p id="rfc.section.7.4.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. 2094 2505 </p> 2095 <div id="rfc.iref. 41"></div>2506 <div id="rfc.iref.90"></div> 2096 2507 <div id="rfc.iref.s.18"></div> 2097 2508 <h3 id="rfc.section.7.4.5"><a href="#rfc.section.7.4.5">7.4.5</a> <a id="status.305" href="#status.305">305 Use Proxy</a></h3> 2098 2509 <p id="rfc.section.7.4.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. 2099 2510 </p> 2100 <div id="rfc.iref. 42"></div>2511 <div id="rfc.iref.91"></div> 2101 2512 <div id="rfc.iref.s.19"></div> 2102 2513 <h3 id="rfc.section.7.4.6"><a href="#rfc.section.7.4.6">7.4.6</a> <a id="status.306" href="#status.306">306 (Unused)</a></h3> 2103 2514 <p id="rfc.section.7.4.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> 2104 <div id="rfc.iref. 43"></div>2515 <div id="rfc.iref.92"></div> 2105 2516 <div id="rfc.iref.s.20"></div> 2106 2517 <h3 id="rfc.section.7.4.7"><a href="#rfc.section.7.4.7">7.4.7</a> <a id="status.307" href="#status.307">307 Temporary Redirect</a></h3> … … 2116 2527 </div> 2117 2528 <h2 id="rfc.section.7.5"><a href="#rfc.section.7.5">7.5</a> <a id="status.4xx" href="#status.4xx">Client Error 4xx</a></h2> 2118 <div id="rfc.iref. 44"></div>2529 <div id="rfc.iref.93"></div> 2119 2530 <div id="rfc.iref.s.21"></div> 2120 2531 <p id="rfc.section.7.5.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 … … 2122 2533 These status codes are applicable to any request method. User agents <em class="bcp14">SHOULD</em> display any included representation to the user. 2123 2534 </p> 2124 <div id="rfc.iref. 45"></div>2535 <div id="rfc.iref.94"></div> 2125 2536 <div id="rfc.iref.s.22"></div> 2126 2537 <h3 id="rfc.section.7.5.1"><a href="#rfc.section.7.5.1">7.5.1</a> <a id="status.400" href="#status.400">400 Bad Request</a></h3> 2127 2538 <p id="rfc.section.7.5.1.p.1">The server cannot or will not process the request, due to a client error (e.g., malformed syntax).</p> 2128 <div id="rfc.iref. 46"></div>2539 <div id="rfc.iref.95"></div> 2129 2540 <div id="rfc.iref.s.23"></div> 2130 2541 <h3 id="rfc.section.7.5.2"><a href="#rfc.section.7.5.2">7.5.2</a> <a id="status.402" href="#status.402">402 Payment Required</a></h3> 2131 2542 <p id="rfc.section.7.5.2.p.1">This code is reserved for future use.</p> 2132 <div id="rfc.iref. 47"></div>2543 <div id="rfc.iref.96"></div> 2133 2544 <div id="rfc.iref.s.24"></div> 2134 2545 <h3 id="rfc.section.7.5.3"><a href="#rfc.section.7.5.3">7.5.3</a> <a id="status.403" href="#status.403">403 Forbidden</a></h3> … … 2140 2551 (Not Found)</a> <em class="bcp14">MAY</em> be used instead. 2141 2552 </p> 2142 <div id="rfc.iref. 48"></div>2553 <div id="rfc.iref.97"></div> 2143 2554 <div id="rfc.iref.s.25"></div> 2144 2555 <h3 id="rfc.section.7.5.4"><a href="#rfc.section.7.5.4">7.5.4</a> <a id="status.404" href="#status.404">404 Not Found</a></h3> … … 2148 2559 has been refused, or when no other response is applicable. 2149 2560 </p> 2150 <div id="rfc.iref. 49"></div>2561 <div id="rfc.iref.98"></div> 2151 2562 <div id="rfc.iref.s.26"></div> 2152 2563 <h3 id="rfc.section.7.5.5"><a href="#rfc.section.7.5.5">7.5.5</a> <a id="status.405" href="#status.405">405 Method Not Allowed</a></h3> 2153 2564 <p id="rfc.section.7.5.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. 2154 2565 </p> 2155 <div id="rfc.iref. 50"></div>2566 <div id="rfc.iref.99"></div> 2156 2567 <div id="rfc.iref.s.27"></div> 2157 2568 <h3 id="rfc.section.7.5.6"><a href="#rfc.section.7.5.6">7.5.6</a> <a id="status.406" href="#status.406">406 Not Acceptable</a></h3> … … 2171 2582 <p id="rfc.section.7.5.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. 2172 2583 </p> 2173 <div id="rfc.iref. 51"></div>2584 <div id="rfc.iref.100"></div> 2174 2585 <div id="rfc.iref.s.28"></div> 2175 2586 <h3 id="rfc.section.7.5.7"><a href="#rfc.section.7.5.7">7.5.7</a> <a id="status.408" href="#status.408">408 Request Timeout</a></h3> 2176 2587 <p id="rfc.section.7.5.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. 2177 2588 </p> 2178 <div id="rfc.iref. 52"></div>2589 <div id="rfc.iref.101"></div> 2179 2590 <div id="rfc.iref.s.29"></div> 2180 2591 <h3 id="rfc.section.7.5.8"><a href="#rfc.section.7.5.8">7.5.8</a> <a id="status.409" href="#status.409">409 Conflict</a></h3> … … 2189 2600 contain a list of the differences between the two versions. 2190 2601 </p> 2191 <div id="rfc.iref. 53"></div>2602 <div id="rfc.iref.102"></div> 2192 2603 <div id="rfc.iref.s.30"></div> 2193 2604 <h3 id="rfc.section.7.5.9"><a href="#rfc.section.7.5.9">7.5.9</a> <a id="status.410" href="#status.410">410 Gone</a></h3> … … 2204 2615 <p id="rfc.section.7.5.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.15"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 410 responses. 2205 2616 </p> 2206 <div id="rfc.iref. 54"></div>2617 <div id="rfc.iref.103"></div> 2207 2618 <div id="rfc.iref.s.31"></div> 2208 2619 <h3 id="rfc.section.7.5.10"><a href="#rfc.section.7.5.10">7.5.10</a> <a id="status.411" href="#status.411">411 Length Required</a></h3> … … 2210 2621 message. 2211 2622 </p> 2212 <div id="rfc.iref. 55"></div>2623 <div id="rfc.iref.104"></div> 2213 2624 <div id="rfc.iref.s.32"></div> 2214 2625 <h3 id="rfc.section.7.5.11"><a href="#rfc.section.7.5.11">7.5.11</a> <a id="status.413" href="#status.413">413 Request Representation Too Large</a></h3> … … 2218 2629 <p id="rfc.section.7.5.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. 2219 2630 </p> 2220 <div id="rfc.iref. 56"></div>2631 <div id="rfc.iref.105"></div> 2221 2632 <div id="rfc.iref.s.33"></div> 2222 2633 <h3 id="rfc.section.7.5.12"><a href="#rfc.section.7.5.12">7.5.12</a> <a id="status.414" href="#status.414">414 URI Too Long</a></h3> … … 2227 2638 in some servers using fixed-length buffers for reading or manipulating the request-target. 2228 2639 </p> 2229 <div id="rfc.iref. 57"></div>2640 <div id="rfc.iref.106"></div> 2230 2641 <div id="rfc.iref.s.34"></div> 2231 2642 <h3 id="rfc.section.7.5.13"><a href="#rfc.section.7.5.13">7.5.13</a> <a id="status.415" href="#status.415">415 Unsupported Media Type</a></h3> … … 2233 2644 on the target resource. 2234 2645 </p> 2235 <div id="rfc.iref. 58"></div>2646 <div id="rfc.iref.107"></div> 2236 2647 <div id="rfc.iref.s.35"></div> 2237 2648 <h3 id="rfc.section.7.5.14"><a href="#rfc.section.7.5.14">7.5.14</a> <a id="status.417" href="#status.417">417 Expectation Failed</a></h3> 2238 <p id="rfc.section.7.5.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 10.11</a>) could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could2649 <p id="rfc.section.7.5.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 6.1.2</a>) could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could 2239 2650 not be met by the next-hop server. 2240 2651 </p> 2241 <div id="rfc.iref. 59"></div>2652 <div id="rfc.iref.108"></div> 2242 2653 <div id="rfc.iref.s.36"></div> 2243 2654 <h3 id="rfc.section.7.5.15"><a href="#rfc.section.7.5.15">7.5.15</a> <a id="status.426" href="#status.426">426 Upgrade Required</a></h3> 2244 <p id="rfc.section.7.5.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.4</a> of <a href="#Part1" id="rfc.xref.Part1.2 1"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) specifying the required protocols.2245 </p> 2246 <div id="rfc.figure.u. 6"></div>2655 <p id="rfc.section.7.5.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.4</a> of <a href="#Part1" id="rfc.xref.Part1.24"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) specifying the required protocols. 2656 </p> 2657 <div id="rfc.figure.u.33"></div> 2247 2658 <p>Example:</p> <pre class="text">HTTP/1.1 426 Upgrade Required 2248 2659 Upgrade: HTTP/3.0 … … 2256 2667 </p> 2257 2668 <h2 id="rfc.section.7.6"><a href="#rfc.section.7.6">7.6</a> <a id="status.5xx" href="#status.5xx">Server Error 5xx</a></h2> 2258 <div id="rfc.iref. 60"></div>2669 <div id="rfc.iref.109"></div> 2259 2670 <div id="rfc.iref.s.37"></div> 2260 2671 <p id="rfc.section.7.6.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 … … 2262 2673 User agents <em class="bcp14">SHOULD</em> display any included representation to the user. These response codes are applicable to any request method. 2263 2674 </p> 2264 <div id="rfc.iref. 61"></div>2675 <div id="rfc.iref.110"></div> 2265 2676 <div id="rfc.iref.s.38"></div> 2266 2677 <h3 id="rfc.section.7.6.1"><a href="#rfc.section.7.6.1">7.6.1</a> <a id="status.500" href="#status.500">500 Internal Server Error</a></h3> 2267 2678 <p id="rfc.section.7.6.1.p.1">The server encountered an unexpected condition which prevented it from fulfilling the request.</p> 2268 <div id="rfc.iref. 62"></div>2679 <div id="rfc.iref.111"></div> 2269 2680 <div id="rfc.iref.s.39"></div> 2270 2681 <h3 id="rfc.section.7.6.2"><a href="#rfc.section.7.6.2">7.6.2</a> <a id="status.501" href="#status.501">501 Not Implemented</a></h3> … … 2272 2683 does not recognize the request method and is not capable of supporting it for any resource. 2273 2684 </p> 2274 <div id="rfc.iref. 63"></div>2685 <div id="rfc.iref.112"></div> 2275 2686 <div id="rfc.iref.s.40"></div> 2276 2687 <h3 id="rfc.section.7.6.3"><a href="#rfc.section.7.6.3">7.6.3</a> <a id="status.502" href="#status.502">502 Bad Gateway</a></h3> … … 2278 2689 to fulfill the request. 2279 2690 </p> 2280 <div id="rfc.iref. 64"></div>2691 <div id="rfc.iref.113"></div> 2281 2692 <div id="rfc.iref.s.41"></div> 2282 2693 <h3 id="rfc.section.7.6.4"><a href="#rfc.section.7.6.4">7.6.4</a> <a id="status.503" href="#status.503">503 Service Unavailable</a></h3> 2283 2694 <p id="rfc.section.7.6.4.p.1">The server is currently unable to handle the request due to a temporary overloading or maintenance of the server.</p> 2284 2695 <p id="rfc.section.7.6.4.p.2">The implication is that this is a temporary condition which will be alleviated after some delay. If known, the length of the 2285 delay <em class="bcp14">MAY</em> be indicated in a <a href="#header.retry-after" class="smpl">Retry-After</a> header field (<a href="#header.retry-after" id="rfc.xref.header.retry-after.1" title="Retry-After">Section 10.16</a>). If no Retry-After is given, the client <em class="bcp14">SHOULD</em> handle the response as it would for a <a href="#status.500" class="smpl">500 (Internal2696 delay <em class="bcp14">MAY</em> be indicated in a <a href="#header.retry-after" class="smpl">Retry-After</a> header field (<a href="#header.retry-after" id="rfc.xref.header.retry-after.1" title="Retry-After">Section 8.1.2</a>). If no Retry-After is given, the client <em class="bcp14">SHOULD</em> handle the response as it would for a <a href="#status.500" class="smpl">500 (Internal 2286 2697 Server Error)</a> response. 2287 2698 </p> … … 2291 2702 </p> 2292 2703 </div> 2293 <div id="rfc.iref. 65"></div>2704 <div id="rfc.iref.114"></div> 2294 2705 <div id="rfc.iref.s.42"></div> 2295 2706 <h3 id="rfc.section.7.6.5"><a href="#rfc.section.7.6.5">7.6.5</a> <a id="status.504" href="#status.504">504 Gateway Timeout</a></h3> … … 2302 2713 </p> 2303 2714 </div> 2304 <div id="rfc.iref. 66"></div>2715 <div id="rfc.iref.115"></div> 2305 2716 <div id="rfc.iref.s.43"></div> 2306 2717 <h3 id="rfc.section.7.6.6"><a href="#rfc.section.7.6.6">7.6.6</a> <a id="status.505" href="#status.505">505 HTTP Version Not Supported</a></h3> 2307 2718 <p id="rfc.section.7.6.6.p.1">The server does not support, or refuses to support, the protocol version that was used in the request message. The server 2308 2719 is indicating that it is unable or unwilling to complete the request using the same major version as the client, as described 2309 in <a href="p1-messaging.html#http.version" title="Protocol Versioning">Section 2.6</a> of <a href="#Part1" id="rfc.xref.Part1.2 2"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[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.2720 in <a href="p1-messaging.html#http.version" title="Protocol Versioning">Section 2.6</a> of <a href="#Part1" id="rfc.xref.Part1.25"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[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. 2310 2721 </p> 2311 2722 <h1 id="rfc.section.8"><a href="#rfc.section.8">8.</a> <a id="response.header.fields" href="#response.header.fields">Response Header Fields</a></h1> 2312 2723 <p id="rfc.section.8.p.1">The response header fields allow the server to pass additional information about the response which cannot be placed in the 2313 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.2 3"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>).2724 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.26"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>). 2314 2725 </p> 2315 2726 <h2 id="rfc.section.8.1"><a href="#rfc.section.8.1">8.1</a> <a id="response.control.data" href="#response.control.data">Control Data</a></h2> 2316 2727 <p id="rfc.section.8.1.p.1">Response header fields can supply control data that supplements the status code or instructs the client where to go next.</p> 2317 <div id="rfc.table.u.1 0">2728 <div id="rfc.table.u.11"> 2318 2729 <table class="tt full left" cellpadding="3" cellspacing="0"> 2319 2730 <thead> … … 2326 2737 <tr> 2327 2738 <td class="left">Location</td> 2328 <td class="left"><a href="#header.location" id="rfc.xref.header.location.3" title="Location">Section 10.13</a></td>2739 <td class="left"><a href="#header.location" id="rfc.xref.header.location.3" title="Location">Section 8.1.1</a></td> 2329 2740 </tr> 2330 2741 <tr> 2331 2742 <td class="left">Retry-After</td> 2332 <td class="left"><a href="#header.retry-after" id="rfc.xref.header.retry-after.2" title="Retry-After">Section 10.16</a></td>2743 <td class="left"><a href="#header.retry-after" id="rfc.xref.header.retry-after.2" title="Retry-After">Section 8.1.2</a></td> 2333 2744 </tr> 2334 2745 </tbody> 2335 2746 </table> 2336 2747 </div> 2748 <div id="rfc.iref.l.1"></div> 2749 <div id="rfc.iref.h.15"></div> 2750 <h3 id="rfc.section.8.1.1"><a href="#rfc.section.8.1.1">8.1.1</a> <a id="header.location" href="#header.location">Location</a></h3> 2751 <p id="rfc.section.8.1.1.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. 2752 </p> 2753 <div id="rfc.figure.u.34"></div><pre class="inline"><span id="rfc.iref.g.27"></span> <a href="#header.location" class="smpl">Location</a> = <a href="#imported.abnf" class="smpl">URI-reference</a> 2754 </pre><p id="rfc.section.8.1.1.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. 2755 </p> 2756 <p id="rfc.section.8.1.1.p.4">The field value consists of a single URI-reference. When it has the form of a relative reference (<a href="#RFC3986" id="rfc.xref.RFC3986.1"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-4.2">Section 4.2</a>), the final value is computed by resolving it against the effective request URI (<a href="#RFC3986" id="rfc.xref.RFC3986.2"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-5">Section 5</a>). If the original URI, as navigated to by the user agent, did contain a fragment identifier, and the final value does not, 2757 then the original URI's fragment identifier is added to the final value. 2758 </p> 2759 <div id="rfc.figure.u.35"></div> 2760 <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 2761 </pre> <p>would result in a final value of "http://www.example.org/pub/WWW/People.html#tim"</p> 2762 <div id="rfc.figure.u.36"></div> 2763 <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 2764 </pre> <p>would result in a final value of "http://www.example.net/index.html#larry", preserving the original fragment identifier.</p> 2765 <div class="note" id="rfc.section.8.1.1.p.7"> 2766 <p> <b>Note:</b> Some recipients attempt to recover from Location fields that are not valid URI references. This specification does not mandate 2767 or define such processing, but does allow it. 2768 </p> 2769 </div> 2770 <p id="rfc.section.8.1.1.p.8">There are circumstances in which a fragment identifier in a Location URI would not be appropriate. For instance, when it appears 2771 in a <a href="#status.201" class="smpl">201 2772 (Created)</a> response, where the Location header field specifies the URI for the entire created resource. 2773 </p> 2774 <div class="note" id="rfc.section.8.1.1.p.9"> 2775 <p> <b>Note:</b> The <a href="#header.content-location" class="smpl">Content-Location</a> header field (<a href="#header.content-location" id="rfc.xref.header.content-location.3" title="Content-Location">Section 3.2.4</a>) differs from Location in that the Content-Location identifies the most specific resource corresponding to the enclosed representation. 2776 It is therefore possible for a response to contain header fields for both Location and Content-Location. 2777 </p> 2778 </div> 2779 <div id="rfc.iref.r.3"></div> 2780 <div id="rfc.iref.h.16"></div> 2781 <h3 id="rfc.section.8.1.2"><a href="#rfc.section.8.1.2">8.1.2</a> <a id="header.retry-after" href="#header.retry-after">Retry-After</a></h3> 2782 <p id="rfc.section.8.1.2.p.1">The header "Retry-After" field can be used with a <a href="#status.503" class="smpl">503 (Service 2783 Unavailable)</a> response to indicate how long the service is expected to be unavailable to the requesting client. This field <em class="bcp14">MAY</em> also be used with any <a href="#status.3xx" class="smpl">3xx (Redirection)</a> response to indicate the minimum time the user-agent is asked to wait before issuing the redirected request. 2784 </p> 2785 <p id="rfc.section.8.1.2.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> 2786 <div id="rfc.figure.u.37"></div><pre class="inline"><span id="rfc.iref.g.28"></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> 2787 </pre><div id="rule.delta-seconds"> 2788 <p id="rfc.section.8.1.2.p.4"> Time spans are non-negative decimal integers, representing time in seconds.</p> 2789 </div> 2790 <div id="rfc.figure.u.38"></div><pre class="inline"><span id="rfc.iref.g.29"></span> <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> = 1*<a href="#imported.abnf" class="smpl">DIGIT</a> 2791 </pre><p id="rfc.section.8.1.2.p.6">Two examples of its use are</p> 2792 <div id="rfc.figure.u.39"></div><pre class="text"> Retry-After: Fri, 31 Dec 1999 23:59:59 GMT 2793 Retry-After: 120 2794 </pre><p id="rfc.section.8.1.2.p.8">In the latter example, the delay is 2 minutes.</p> 2337 2795 <h2 id="rfc.section.8.2"><a href="#rfc.section.8.2">8.2</a> <a id="response.cache.related" href="#response.cache.related">Cache-related</a></h2> 2338 2796 <p id="rfc.section.8.2.p.1">Cache-related response header fields provide metadata about the message in order to assist downstream caches.</p> 2339 <div id="rfc.table.u.1 1">2797 <div id="rfc.table.u.12"> 2340 2798 <table class="tt full left" cellpadding="3" cellspacing="0"> 2341 2799 <thead> … … 2348 2806 <tr> 2349 2807 <td class="left">Date</td> 2350 <td class="left"><a href="#header.date" id="rfc.xref.header.date.1" title="Date">Section 10.10</a></td>2808 <td class="left"><a href="#header.date" id="rfc.xref.header.date.1" title="Date">Section 8.2.1</a></td> 2351 2809 </tr> 2352 2810 <tr> … … 2361 2819 </table> 2362 2820 </div> 2821 <div id="rfc.iref.d.2"></div> 2822 <div id="rfc.iref.h.17"></div> 2823 <h3 id="rfc.section.8.2.1"><a href="#rfc.section.8.2.1">8.2.1</a> <a id="header.date" href="#header.date">Date</a></h3> 2824 <p id="rfc.section.8.2.1.p.1">The "Date" header field represents the date and time at which the message was originated, having the same semantics as the 2825 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.3"><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 9.1</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format. 2826 </p> 2827 <div id="rfc.figure.u.40"></div><pre class="inline"><span id="rfc.iref.g.30"></span> <a href="#header.date" class="smpl">Date</a> = <a href="#http.date" class="smpl">HTTP-date</a> 2828 </pre><p id="rfc.section.8.2.1.p.3">An example is</p> 2829 <div id="rfc.figure.u.41"></div><pre class="text"> Date: Tue, 15 Nov 1994 08:12:31 GMT 2830 </pre><p id="rfc.section.8.2.1.p.5">Origin servers <em class="bcp14">MUST</em> include a Date header field in all responses, except in these cases: 2831 </p> 2832 <ol> 2833 <li>If the response status code is <a href="#status.100" class="smpl">100 (Continue)</a> or <a href="#status.101" class="smpl">101 (Switching Protocols)</a>, the response <em class="bcp14">MAY</em> include a Date header field, at the server's option. 2834 </li> 2835 <li>If the response status code conveys a server error, e.g., <a href="#status.500" class="smpl">500 2836 (Internal Server Error)</a> or <a href="#status.503" class="smpl">503 (Service Unavailable)</a>, and it is inconvenient or impossible to generate a valid Date. 2837 </li> 2838 <li>If the server does not have a clock that can provide a reasonable approximation of the current time, its responses <em class="bcp14">MUST NOT</em> include a Date header field. 2839 </li> 2840 </ol> 2841 <p id="rfc.section.8.2.1.p.6">A received message that does not have a Date header field <em class="bcp14">MUST</em> be assigned one by the recipient if the message will be cached by that recipient. 2842 </p> 2843 <p id="rfc.section.8.2.1.p.7">Clients can use the Date header field as well; in order to keep request messages small, they are advised not to include it 2844 when it doesn't convey any useful information (as is usually the case for requests that do not contain a payload). 2845 </p> 2846 <p id="rfc.section.8.2.1.p.8">The HTTP-date sent in a Date header field <em class="bcp14">SHOULD NOT</em> represent a date and time subsequent to the generation of the message. It <em class="bcp14">SHOULD</em> represent the best available approximation of the date and time of message generation, unless the implementation has no means 2847 of generating a reasonably accurate date and time. In theory, the date ought to represent the moment just before the payload 2848 is generated. In practice, the date can be generated at any time during the message origination without affecting its semantic 2849 value. 2850 </p> 2363 2851 <h2 id="rfc.section.8.3"><a href="#rfc.section.8.3">8.3</a> <a id="response.auth" href="#response.auth">Authentication Challenges</a></h2> 2364 <p id="rfc.section.8.3.p.1">Authentication challenges indicate what mechanisms are available for the user or client to provide authentication credentials2365 in futurerequests.2366 </p> 2367 <div id="rfc.table.u.1 2">2852 <p id="rfc.section.8.3.p.1">Authentication challenges indicate what mechanisms are available for the client to provide authentication credentials in future 2853 requests. 2854 </p> 2855 <div id="rfc.table.u.13"> 2368 2856 <table class="tt full left" cellpadding="3" cellspacing="0"> 2369 2857 <thead> … … 2387 2875 <h2 id="rfc.section.8.4"><a href="#rfc.section.8.4">8.4</a> <a id="response.inform" href="#response.inform">Informative</a></h2> 2388 2876 <p id="rfc.section.8.4.p.1">The remaining response header fields provide more information about the target resource for potential use in later requests.</p> 2389 <div id="rfc.table.u.1 3">2877 <div id="rfc.table.u.14"> 2390 2878 <table class="tt full left" cellpadding="3" cellspacing="0"> 2391 2879 <thead> … … 2402 2890 <tr> 2403 2891 <td class="left">Allow</td> 2404 <td class="left"><a href="#header.allow" id="rfc.xref.header.allow.2" title="Allow">Section 10.5</a></td>2892 <td class="left"><a href="#header.allow" id="rfc.xref.header.allow.2" title="Allow">Section 8.4.1</a></td> 2405 2893 </tr> 2406 2894 <tr> 2407 2895 <td class="left">Server</td> 2408 <td class="left"><a href="#header.server" id="rfc.xref.header.server.1" title="Server">Section 10.17</a></td>2896 <td class="left"><a href="#header.server" id="rfc.xref.header.server.1" title="Server">Section 8.4.2</a></td> 2409 2897 </tr> 2410 2898 </tbody> 2411 2899 </table> 2900 </div> 2901 <div id="rfc.iref.a.5"></div> 2902 <div id="rfc.iref.h.18"></div> 2903 <h3 id="rfc.section.8.4.1"><a href="#rfc.section.8.4.1">8.4.1</a> <a id="header.allow" href="#header.allow">Allow</a></h3> 2904 <p id="rfc.section.8.4.1.p.1">The "Allow" header field lists the set of methods advertised as supported by the target resource. The purpose of this field 2905 is strictly to inform the recipient of valid request methods associated with the resource. 2906 </p> 2907 <div id="rfc.figure.u.42"></div><pre class="inline"><span id="rfc.iref.g.31"></span> <a href="#header.allow" class="smpl">Allow</a> = #<a href="#method.overview" class="smpl">method</a> 2908 </pre><p id="rfc.section.8.4.1.p.3">Example of use:</p> 2909 <div id="rfc.figure.u.43"></div><pre class="text"> Allow: GET, HEAD, PUT 2910 </pre><p id="rfc.section.8.4.1.p.5">The actual set of allowed methods is defined by the origin server at the time of each request.</p> 2911 <p id="rfc.section.8.4.1.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 2912 to the generic message handling rules. 2913 </p> 2914 <div id="rfc.iref.s.44"></div> 2915 <div id="rfc.iref.h.19"></div> 2916 <h3 id="rfc.section.8.4.2"><a href="#rfc.section.8.4.2">8.4.2</a> <a id="header.server" href="#header.server">Server</a></h3> 2917 <p id="rfc.section.8.4.2.p.1">The "Server" header field contains information about the software used by the origin server to handle the request.</p> 2918 <p id="rfc.section.8.4.2.p.2">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 9.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.27"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) identifying the server and any significant subproducts. The product tokens are listed in order of their significance for 2919 identifying the application. 2920 </p> 2921 <div id="rfc.figure.u.44"></div><pre class="inline"><span id="rfc.iref.g.32"></span> <a href="#header.server" class="smpl">Server</a> = <a href="#product.tokens" class="smpl">product</a> *( <a href="#imported.abnf" class="smpl">RWS</a> ( <a href="#product.tokens" class="smpl">product</a> / <a href="#imported.abnf" class="smpl">comment</a> ) ) 2922 </pre><p id="rfc.section.8.4.2.p.4">Example:</p> 2923 <div id="rfc.figure.u.45"></div><pre class="text"> Server: CERN/3.0 libwww/2.17 2924 </pre><p id="rfc.section.8.4.2.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 5.7</a> of <a href="#Part1" id="rfc.xref.Part1.28"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>). 2925 </p> 2926 <div class="note" id="rfc.section.8.4.2.p.7"> 2927 <p> <b>Note:</b> Revealing the specific software version of the server might allow the server machine to become more vulnerable to attacks 2928 against software that is known to contain security holes. Server implementers are encouraged to make this field a configurable 2929 option. 2930 </p> 2412 2931 </div> 2413 2932 <h1 id="rfc.section.9"><a href="#rfc.section.9">9.</a> <a id="protocol.parameters" href="#protocol.parameters">Protocol Parameters</a></h1> … … 2416 2935 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>: 2417 2936 </p> 2418 <div id="rfc.figure.u. 7"></div><pre class="text">Sun, 06 Nov 1994 08:49:37 GMT ; RFC 11232937 <div id="rfc.figure.u.46"></div><pre class="text">Sun, 06 Nov 1994 08:49:37 GMT ; RFC 1123 2419 2938 </pre><p id="rfc.section.9.1.p.3">The other formats are described here only for compatibility with obsolete implementations.</p> 2420 <div id="rfc.figure.u. 8"></div><pre class="text">Sunday, 06-Nov-94 08:49:37 GMT ; obsolete RFC 850 format2939 <div id="rfc.figure.u.47"></div><pre class="text">Sunday, 06-Nov-94 08:49:37 GMT ; obsolete RFC 850 format 2421 2940 Sun Nov 6 08:49:37 1994 ; ANSI C's asctime() format 2422 2941 </pre><p id="rfc.section.9.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. … … 2426 2945 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. 2427 2946 </p> 2428 <div id="rfc.figure.u. 9"></div><pre class="inline"><span id="rfc.iref.g.5"></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>2947 <div id="rfc.figure.u.48"></div><pre class="inline"><span id="rfc.iref.g.33"></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> 2429 2948 </pre><div id="preferred.date.format"> 2430 2949 <p id="rfc.section.9.1.p.8"> Preferred format:</p> 2431 2950 </div> 2432 <div id="rfc.figure.u. 10"></div><pre class="inline"><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><span id="rfc.iref.g.16"></span><span id="rfc.iref.g.17"></span> <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#imported.abnf" class="smpl">SP</a> date1 <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a>2951 <div id="rfc.figure.u.49"></div><pre class="inline"><span id="rfc.iref.g.34"></span><span id="rfc.iref.g.35"></span><span id="rfc.iref.g.36"></span><span id="rfc.iref.g.37"></span><span id="rfc.iref.g.38"></span><span id="rfc.iref.g.39"></span><span id="rfc.iref.g.40"></span><span id="rfc.iref.g.41"></span><span id="rfc.iref.g.42"></span><span id="rfc.iref.g.43"></span><span id="rfc.iref.g.44"></span><span id="rfc.iref.g.45"></span> <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#imported.abnf" class="smpl">SP</a> date1 <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a> 2433 2952 ; fixed length subset of the format defined in 2434 2953 ; <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> … … 2468 2987 <a href="#preferred.date.format" class="smpl">minute</a> = 2<a href="#imported.abnf" class="smpl">DIGIT</a> 2469 2988 <a href="#preferred.date.format" class="smpl">second</a> = 2<a href="#imported.abnf" class="smpl">DIGIT</a> 2470 </pre><p id="rfc.section.9.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>).2989 </pre><p id="rfc.section.9.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.4"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.3">Section 3.3</a>). 2471 2990 </p> 2472 2991 <div id="obsolete.date.formats"> 2473 2992 <p id="rfc.section.9.1.p.11"> Obsolete formats:</p> 2474 2993 </div> 2475 <div id="rfc.figure.u. 11"></div><pre class="inline"><span id="rfc.iref.g.18"></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>2476 </pre><div id="rfc.figure.u. 12"></div><pre class="inline"><span id="rfc.iref.g.19"></span> <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> = <a href="#obsolete.date.formats" class="smpl">day-name-l</a> "," <a href="#imported.abnf" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date2</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a>2994 <div id="rfc.figure.u.50"></div><pre class="inline"><span id="rfc.iref.g.46"></span> <a href="#obsolete.date.formats" class="smpl">obs-date</a> = <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> / <a href="#obsolete.date.formats" class="smpl">asctime-date</a> 2995 </pre><div id="rfc.figure.u.51"></div><pre class="inline"><span id="rfc.iref.g.47"></span> <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> = <a href="#obsolete.date.formats" class="smpl">day-name-l</a> "," <a href="#imported.abnf" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date2</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a> 2477 2996 <a href="#obsolete.date.formats" class="smpl">date2</a> = <a href="#preferred.date.format" class="smpl">day</a> "-" <a href="#preferred.date.format" class="smpl">month</a> "-" 2<a href="#imported.abnf" class="smpl">DIGIT</a> 2478 2997 ; day-month-year (e.g., 02-Jun-82) … … 2485 3004 / %x53.61.74.75.72.64.61.79 ; "Saturday", case-sensitive 2486 3005 / %x53.75.6E.64.61.79 ; "Sunday", case-sensitive 2487 </pre><div id="rfc.figure.u. 13"></div><pre class="inline"><span id="rfc.iref.g.20"></span> <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date3</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a>3006 </pre><div id="rfc.figure.u.52"></div><pre class="inline"><span id="rfc.iref.g.48"></span> <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date3</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#imported.abnf" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a> 2488 3007 <a href="#obsolete.date.formats" class="smpl">date3</a> = <a href="#preferred.date.format" class="smpl">month</a> <a href="#imported.abnf" class="smpl">SP</a> ( 2<a href="#imported.abnf" class="smpl">DIGIT</a> / ( <a href="#imported.abnf" class="smpl">SP</a> 1<a href="#imported.abnf" class="smpl">DIGIT</a> )) 2489 3008 ; month day (e.g., Jun 2) … … 2503 3022 By convention, the products are listed in order of their significance for identifying the application. 2504 3023 </p> 2505 <div id="rfc.figure.u. 14"></div><pre class="inline"><span id="rfc.iref.g.21"></span><span id="rfc.iref.g.22"></span> <a href="#product.tokens" class="smpl">product</a> = <a href="#imported.abnf" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>]3024 <div id="rfc.figure.u.53"></div><pre class="inline"><span id="rfc.iref.g.49"></span><span id="rfc.iref.g.50"></span> <a href="#product.tokens" class="smpl">product</a> = <a href="#imported.abnf" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>] 2506 3025 <a href="#product.tokens" class="smpl">product-version</a> = <a href="#imported.abnf" class="smpl">token</a> 2507 3026 </pre><p id="rfc.section.9.2.p.3">Examples:</p> 2508 <div id="rfc.figure.u. 15"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b33027 <div id="rfc.figure.u.54"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b3 2509 3028 Server: Apache/0.8.4 2510 3029 </pre><p id="rfc.section.9.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). … … 2517 3036 </p> 2518 3037 </div> 2519 <div id="rfc.figure.u. 16"></div><pre class="inline"><span id="rfc.iref.g.23"></span> <a href="#rule.charset" class="smpl">charset</a> = <a href="#imported.abnf" class="smpl">token</a>3038 <div id="rfc.figure.u.55"></div><pre class="inline"><span id="rfc.iref.g.51"></span> <a href="#rule.charset" class="smpl">charset</a> = <a href="#imported.abnf" class="smpl">token</a> 2520 3039 </pre><p id="rfc.section.9.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 2521 3040 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. … … 2531 3050 directly, and only decoded by the recipient. 2532 3051 </p> 2533 <div id="rfc.figure.u. 17"></div><pre class="inline"><span id="rfc.iref.g.24"></span> <a href="#content.codings" class="smpl">content-coding</a> = <a href="#imported.abnf" class="smpl">token</a>2534 </pre><p id="rfc.section.9.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.3" title="Accept-Encoding">Section 10.3</a>) and <a href="#header.content-encoding" class="smpl">Content-Encoding</a> (<a href="#header.content-encoding" id="rfc.xref.header.content-encoding.2" title="Content-Encoding">Section 10.6</a>) header fields. Although the value describes the content-coding, what is more important is that it indicates what decoding3052 <div id="rfc.figure.u.56"></div><pre class="inline"><span id="rfc.iref.g.52"></span> <a href="#content.codings" class="smpl">content-coding</a> = <a href="#imported.abnf" class="smpl">token</a> 3053 </pre><p id="rfc.section.9.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.3" title="Accept-Encoding">Section 6.3.4</a>) and <a href="#header.content-encoding" class="smpl">Content-Encoding</a> (<a href="#header.content-encoding" id="rfc.xref.header.content-encoding.2" title="Content-Encoding">Section 3.2.2</a>) header fields. Although the value describes the content-coding, what is more important is that it indicates what decoding 2535 3054 mechanism will be required to remove the encoding. 2536 3055 </p> 2537 <p id="rfc.section.9.4.p.4">compress<span id="rfc.iref.c. 4"></span><span id="rfc.iref.c.5"></span>3056 <p id="rfc.section.9.4.p.4">compress<span id="rfc.iref.c.8"></span><span id="rfc.iref.c.9"></span> 2538 3057 </p> 2539 3058 <ul class="empty"> 2540 <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.2 4"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>.2541 </li> 2542 </ul> 2543 <p id="rfc.section.9.4.p.5">deflate<span id="rfc.iref.d. 2"></span><span id="rfc.iref.c.6"></span>3059 <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.29"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. 3060 </li> 3061 </ul> 3062 <p id="rfc.section.9.4.p.5">deflate<span id="rfc.iref.d.3"></span><span id="rfc.iref.c.10"></span> 2544 3063 </p> 2545 3064 <ul class="empty"> 2546 <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. 25"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>.2547 </li> 2548 </ul> 2549 <p id="rfc.section.9.4.p.6">gzip<span id="rfc.iref.g. 25"></span><span id="rfc.iref.c.7"></span>3065 <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.30"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. 3066 </li> 3067 </ul> 3068 <p id="rfc.section.9.4.p.6">gzip<span id="rfc.iref.g.53"></span><span id="rfc.iref.c.11"></span> 2550 3069 </p> 2551 3070 <ul class="empty"> 2552 <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. 26"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>.3071 <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.31"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. 2553 3072 </li> 2554 3073 </ul> 2555 3074 <h2 id="rfc.section.9.5"><a href="#rfc.section.9.5">9.5</a> <a id="media.types" href="#media.types">Media Types</a></h2> 2556 <p id="rfc.section.9.5.p.1">HTTP uses Internet Media Types <a href="#RFC2046" id="rfc.xref.RFC2046.2"><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 10.9</a>) and <a href="#header.accept" class="smpl">Accept</a> (<a href="#header.accept" id="rfc.xref.header.accept.3" title="Accept">Section 10.1</a>) header fields in order to provide open and extensible data typing and type negotiation.2557 </p> 2558 <div id="rfc.figure.u. 18"></div><pre class="inline"><span id="rfc.iref.g.26"></span><span id="rfc.iref.g.27"></span><span id="rfc.iref.g.28"></span> <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="#imported.abnf" class="smpl">OWS</a> ";" <a href="#imported.abnf" class="smpl">OWS</a> <a href="#rule.parameter" class="smpl">parameter</a> )3075 <p id="rfc.section.9.5.p.1">HTTP uses Internet Media Types <a href="#RFC2046" id="rfc.xref.RFC2046.2"><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 3.2.1</a>) and <a href="#header.accept" class="smpl">Accept</a> (<a href="#header.accept" id="rfc.xref.header.accept.3" title="Accept">Section 6.3.2</a>) header fields in order to provide open and extensible data typing and type negotiation. 3076 </p> 3077 <div id="rfc.figure.u.57"></div><pre class="inline"><span id="rfc.iref.g.54"></span><span id="rfc.iref.g.55"></span><span id="rfc.iref.g.56"></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="#imported.abnf" class="smpl">OWS</a> ";" <a href="#imported.abnf" class="smpl">OWS</a> <a href="#rule.parameter" class="smpl">parameter</a> ) 2559 3078 <a href="#media.types" class="smpl">type</a> = <a href="#imported.abnf" class="smpl">token</a> 2560 3079 <a href="#media.types" class="smpl">subtype</a> = <a href="#imported.abnf" class="smpl">token</a> … … 2563 3082 </p> 2564 3083 </div> 2565 <div id="rfc.figure.u. 19"></div><pre class="inline"><span id="rfc.iref.g.29"></span><span id="rfc.iref.g.30"></span><span id="rfc.iref.g.31"></span> <a href="#rule.parameter" class="smpl">parameter</a> = <a href="#rule.parameter" class="smpl">attribute</a> "=" <a href="#rule.parameter" class="smpl">value</a>3084 <div id="rfc.figure.u.58"></div><pre class="inline"><span id="rfc.iref.g.57"></span><span id="rfc.iref.g.58"></span><span id="rfc.iref.g.59"></span> <a href="#rule.parameter" class="smpl">parameter</a> = <a href="#rule.parameter" class="smpl">attribute</a> "=" <a href="#rule.parameter" class="smpl">value</a> 2566 3085 <a href="#rule.parameter" class="smpl">attribute</a> = <a href="#imported.abnf" class="smpl">token</a> 2567 3086 <a href="#rule.parameter" class="smpl">value</a> = <a href="#imported.abnf" class="smpl">word</a> … … 2613 3132 of subtags: 2614 3133 </p> 2615 <div id="rfc.figure.u. 20"></div><pre class="inline"><span id="rfc.iref.g.32"></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>>3134 <div id="rfc.figure.u.59"></div><pre class="inline"><span id="rfc.iref.g.60"></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>> 2616 3135 </pre><p id="rfc.section.9.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 2617 3136 by the IANA (see <<a href="http://www.iana.org/assignments/language-subtag-registry">http://www.iana.org/assignments/language-subtag-registry</a>>). 2618 3137 </p> 2619 <div id="rfc.figure.u. 21"></div>3138 <div id="rfc.figure.u.60"></div> 2620 3139 <p>Example tags include:</p> <pre class="text"> en, en-US, es-419, az-Arab, x-pig-latin, man-Nkoo-GN 2621 3140 </pre> <p id="rfc.section.9.6.p.6">See <a href="#RFC5646" id="rfc.xref.RFC5646.3"><cite title="Tags for Identifying Languages">[RFC5646]</cite></a> for further information. 2622 3141 </p> 2623 <h1 id="rfc.section.10"><a href="#rfc.section.10">10.</a> <a id="header.field.definitions" href="#header.field.definitions">Header Field Definitions</a></h1> 2624 <p id="rfc.section.10.p.1">This section defines the syntax and semantics of HTTP/1.1 header fields related to request and response semantics and to the 2625 payload of messages. 2626 </p> 2627 <div id="rfc.iref.a.1"></div> 2628 <div id="rfc.iref.h.2"></div> 2629 <h2 id="rfc.section.10.1"><a href="#rfc.section.10.1">10.1</a> <a id="header.accept" href="#header.accept">Accept</a></h2> 2630 <p id="rfc.section.10.1.p.1">The "Accept" header field can be used by user agents to specify response media types that are acceptable. Accept header fields 2631 can be used to indicate that the request is specifically limited to a small set of desired types, as in the case of a request 2632 for an in-line image. 2633 </p> 2634 <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.33"></span><span id="rfc.iref.g.34"></span><span id="rfc.iref.g.35"></span><span id="rfc.iref.g.36"></span> <a href="#header.accept" class="smpl">Accept</a> = #( <a href="#header.accept" class="smpl">media-range</a> [ <a href="#header.accept" class="smpl">accept-params</a> ] ) 2635 2636 <a href="#header.accept" class="smpl">media-range</a> = ( "*/*" 2637 / ( <a href="#media.types" class="smpl">type</a> "/" "*" ) 2638 / ( <a href="#media.types" class="smpl">type</a> "/" <a href="#media.types" class="smpl">subtype</a> ) 2639 ) *( <a href="#imported.abnf" class="smpl">OWS</a> ";" <a href="#imported.abnf" class="smpl">OWS</a> <a href="#rule.parameter" class="smpl">parameter</a> ) 2640 <a href="#header.accept" class="smpl">accept-params</a> = <a href="#quality.values" class="smpl">weight</a> *( <a href="#header.accept" class="smpl">accept-ext</a> ) 2641 <a href="#header.accept" class="smpl">accept-ext</a> = <a href="#imported.abnf" class="smpl">OWS</a> ";" <a href="#imported.abnf" class="smpl">OWS</a> <a href="#imported.abnf" class="smpl">token</a> [ "=" <a href="#imported.abnf" class="smpl">word</a> ] 2642 </pre><p id="rfc.section.10.1.p.3">The asterisk "*" character is used to group media types into ranges, with "*/*" indicating all media types and "type/*" indicating 2643 all subtypes of that type. The media-range <em class="bcp14">MAY</em> include media type parameters that are applicable to that range. 2644 </p> 2645 <p id="rfc.section.10.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 weight, as defined in <a href="#quality.values" title="Quality Values">Section 3.4.3</a>. The first "q" parameter (if any) separates the media-range parameter(s) from the accept-params. 2646 </p> 2647 <div class="note" id="rfc.section.10.1.p.5"> 2648 <p> <b>Note:</b> Use of the "q" parameter name to separate media type parameters from Accept extension parameters is due to historical practice. 2649 Although this prevents any media type parameter named "q" from being used with a media range, such an event is believed to 2650 be unlikely given the lack of any "q" parameters in the IANA media type registry and the rare usage of any media type parameters 2651 in Accept. Future media types are discouraged from registering any parameter named "q". 2652 </p> 2653 </div> 2654 <p id="rfc.section.10.1.p.6">The example</p> 2655 <div id="rfc.figure.u.23"></div><pre class="text"> Accept: audio/*; q=0.2, audio/basic 2656 </pre><p id="rfc.section.10.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 2657 quality". 2658 </p> 2659 <p id="rfc.section.10.1.p.9">A request without any Accept header field implies that the user agent will accept any media type in response. If an Accept 2660 header field is present in a request and none of the available representations for the response have a media type that is 2661 listed as acceptable, the origin server <em class="bcp14">MAY</em> either honor the Accept header field by sending a <a href="#status.406" class="smpl">406 (Not Acceptable)</a> response or disregard the Accept header field by treating the response as if it is not subject to content negotiation. 2662 </p> 2663 <p id="rfc.section.10.1.p.10">A more elaborate example is</p> 2664 <div id="rfc.figure.u.24"></div><pre class="text"> Accept: text/plain; q=0.5, text/html, 2665 text/x-dvi; q=0.8, text/x-c 2666 </pre><p id="rfc.section.10.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 2667 send the text/x-dvi representation, and if that does not exist, send the text/plain representation". 2668 </p> 2669 <p id="rfc.section.10.1.p.13">Media ranges can be overridden by more specific media ranges or specific media types. If more than one media range applies 2670 to a given type, the most specific reference has precedence. For example, 2671 </p> 2672 <div id="rfc.figure.u.25"></div><pre class="text"> Accept: text/*, text/plain, text/plain;format=flowed, */* 2673 </pre><p id="rfc.section.10.1.p.15">have the following precedence: </p> 2674 <ol> 2675 <li>text/plain;format=flowed</li> 2676 <li>text/plain</li> 2677 <li>text/*</li> 2678 <li>*/*</li> 2679 </ol> 2680 <p id="rfc.section.10.1.p.16">The media type quality factor associated with a given type is determined by finding the media range with the highest precedence 2681 which matches that type. For example, 2682 </p> 2683 <div id="rfc.figure.u.26"></div><pre class="text"> Accept: text/*;q=0.3, text/html;q=0.7, text/html;level=1, 2684 text/html;level=2;q=0.4, */*;q=0.5 2685 </pre><p id="rfc.section.10.1.p.18">would cause the following values to be associated:</p> 2686 <div id="rfc.table.u.14"> 2687 <table class="tt full left" cellpadding="3" cellspacing="0"> 2688 <thead> 2689 <tr> 2690 <th>Media Type</th> 2691 <th>Quality Value</th> 2692 </tr> 2693 </thead> 2694 <tbody> 2695 <tr> 2696 <td class="left">text/html;level=1</td> 2697 <td class="left">1</td> 2698 </tr> 2699 <tr> 2700 <td class="left">text/html</td> 2701 <td class="left">0.7</td> 2702 </tr> 2703 <tr> 2704 <td class="left">text/plain</td> 2705 <td class="left">0.3</td> 2706 </tr> 2707 <tr> 2708 <td class="left">image/jpeg</td> 2709 <td class="left">0.5</td> 2710 </tr> 2711 <tr> 2712 <td class="left">text/html;level=2</td> 2713 <td class="left">0.4</td> 2714 </tr> 2715 <tr> 2716 <td class="left">text/html;level=3</td> 2717 <td class="left">0.7</td> 2718 </tr> 2719 </tbody> 2720 </table> 2721 </div> 2722 <p id="rfc.section.10.1.p.19"> <b>Note:</b> A user agent might be provided with a default set of quality values for certain media ranges. However, unless the user agent 2723 is a closed system which cannot interact with other rendering agents, this default set ought to be configurable by the user. 2724 </p> 2725 <div id="rfc.iref.a.2"></div> 2726 <div id="rfc.iref.h.3"></div> 2727 <h2 id="rfc.section.10.2"><a href="#rfc.section.10.2">10.2</a> <a id="header.accept-charset" href="#header.accept-charset">Accept-Charset</a></h2> 2728 <p id="rfc.section.10.2.p.1">The "Accept-Charset" header field can be used by user agents to indicate what character encodings are acceptable in a response 2729 payload. This field allows clients capable of understanding more comprehensive or special-purpose character encodings to signal 2730 that capability to a server which is capable of representing documents in those character encodings. 2731 </p> 2732 <div id="rfc.figure.u.27"></div><pre class="inline"><span id="rfc.iref.g.37"></span> <a href="#header.accept-charset" class="smpl">Accept-Charset</a> = 1#( ( <a href="#rule.charset" class="smpl">charset</a> / "*" ) [ <a href="#quality.values" class="smpl">weight</a> ] ) 2733 </pre><p id="rfc.section.10.2.p.3">Character encoding values (a.k.a., charsets) are described in <a href="#character.sets" title="Character Encodings (charset)">Section 9.3</a>. Each charset <em class="bcp14">MAY</em> be given an associated quality value which represents the user's preference for that charset, as defined in <a href="#quality.values" title="Quality Values">Section 3.4.3</a>. An example is 2734 </p> 2735 <div id="rfc.figure.u.28"></div><pre class="text"> Accept-Charset: iso-8859-5, unicode-1-1;q=0.8 2736 </pre><p id="rfc.section.10.2.p.5">The special value "*", if present in the Accept-Charset field, matches every character encoding which is not mentioned elsewhere 2737 in the Accept-Charset field. If no "*" is present in an Accept-Charset field, then any character encodings not explicitly 2738 mentioned in the field are considered "not acceptable" to the client. 2739 </p> 2740 <p id="rfc.section.10.2.p.6">A request without any Accept-Charset header field implies that the user agent will accept any character encoding in response.</p> 2741 <p id="rfc.section.10.2.p.7">If an Accept-Charset header field is present in a request and none of the available representations for the response have 2742 a character encoding that is listed as acceptable, the origin server <em class="bcp14">MAY</em> either honor the Accept-Charset header field by sending a <a href="#status.406" class="smpl">406 (Not Acceptable)</a> response or disregard the Accept-Charset header field by treating the response as if it is not subject to content negotiation. 2743 </p> 2744 <div id="rfc.iref.a.3"></div> 2745 <div id="rfc.iref.h.4"></div> 2746 <h2 id="rfc.section.10.3"><a href="#rfc.section.10.3">10.3</a> <a id="header.accept-encoding" href="#header.accept-encoding">Accept-Encoding</a></h2> 2747 <p id="rfc.section.10.3.p.1">The "Accept-Encoding" header field can be used by user agents to indicate what response content-codings (<a href="#content.codings" title="Content Codings">Section 9.4</a>) are acceptable in the response. An "identity" token is used as a synonym for "no encoding" in order to communicate when 2748 no encoding is preferred. 2749 </p> 2750 <div id="rfc.figure.u.29"></div><pre class="inline"><span id="rfc.iref.g.38"></span><span id="rfc.iref.g.39"></span> <a href="#header.accept-encoding" class="smpl">Accept-Encoding</a> = #( <a href="#header.accept-encoding" class="smpl">codings</a> [ <a href="#quality.values" class="smpl">weight</a> ] ) 2751 <a href="#header.accept-encoding" class="smpl">codings</a> = <a href="#content.codings" class="smpl">content-coding</a> / "identity" / "*" 2752 </pre><p id="rfc.section.10.3.p.3">Each codings value <em class="bcp14">MAY</em> be given an associated quality value which represents the preference for that encoding, as defined in <a href="#quality.values" title="Quality Values">Section 3.4.3</a>. 2753 </p> 2754 <p id="rfc.section.10.3.p.4">For example,</p> 2755 <div id="rfc.figure.u.30"></div><pre class="text"> Accept-Encoding: compress, gzip 2756 Accept-Encoding: 2757 Accept-Encoding: * 2758 Accept-Encoding: compress;q=0.5, gzip;q=1.0 2759 Accept-Encoding: gzip;q=1.0, identity; q=0.5, *;q=0 2760 </pre><p id="rfc.section.10.3.p.6">A server tests whether a content-coding for a given representation is acceptable, according to an Accept-Encoding field, using 2761 these rules: 2762 </p> 2763 <ol> 2764 <li>The special "*" symbol in an Accept-Encoding field matches any available content-coding not explicitly listed in the header 2765 field. 2766 </li> 2767 <li>If the representation has no content-coding, then it is acceptable by default unless specifically excluded by the Accept-Encoding 2768 field stating either "identity;q=0" or "*;q=0" without a more specific entry for "identity". 2769 </li> 2770 <li>If the representation's content-coding is one of the content-codings listed in the Accept-Encoding field, then it is acceptable 2771 unless it is accompanied by a qvalue of 0. (As defined in <a href="#quality.values" title="Quality Values">Section 3.4.3</a>, a qvalue of 0 means "not acceptable".) 2772 </li> 2773 <li>If multiple content-codings are acceptable, then the acceptable content-coding with the highest non-zero qvalue is preferred.</li> 2774 </ol> 2775 <p id="rfc.section.10.3.p.7">An Accept-Encoding header field with a combined field-value that is empty implies that the user agent does not want any content-coding 2776 in response. If an Accept-Encoding header field is present in a request and none of the available representations for the 2777 response have a content-coding that is listed as acceptable, the origin server <em class="bcp14">SHOULD</em> send a response without any content-coding. 2778 </p> 2779 <p id="rfc.section.10.3.p.8">A request without an Accept-Encoding header field implies that the user agent will accept any content-coding in response.</p> 2780 <div class="note" id="rfc.section.10.3.p.9"> 2781 <p> <b>Note:</b> Most HTTP/1.0 applications do not recognize or obey qvalues associated with content-codings. This means that qvalues will 2782 not work and are not permitted with x-gzip or x-compress. 2783 </p> 2784 </div> 2785 <div id="rfc.iref.a.4"></div> 2786 <div id="rfc.iref.h.5"></div> 2787 <h2 id="rfc.section.10.4"><a href="#rfc.section.10.4">10.4</a> <a id="header.accept-language" href="#header.accept-language">Accept-Language</a></h2> 2788 <p id="rfc.section.10.4.p.1">The "Accept-Language" header field can be used by user agents to indicate the set of natural languages that are preferred 2789 in the response. Language tags are defined in <a href="#language.tags" title="Language Tags">Section 9.6</a>. 2790 </p> 2791 <div id="rfc.figure.u.31"></div><pre class="inline"><span id="rfc.iref.g.40"></span><span id="rfc.iref.g.41"></span> <a href="#header.accept-language" class="smpl">Accept-Language</a> = 1#( <a href="#header.accept-language" class="smpl">language-range</a> [ <a href="#quality.values" class="smpl">weight</a> ] ) 2792 <a href="#header.accept-language" class="smpl">language-range</a> = 2793 <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>> 2794 </pre><p id="rfc.section.10.4.p.3">Each language-range can be given an associated quality value which represents an estimate of the user's preference for the 2795 languages specified by that range, as defined in <a href="#quality.values" title="Quality Values">Section 3.4.3</a>. For example, 2796 </p> 2797 <div id="rfc.figure.u.32"></div><pre class="text"> Accept-Language: da, en-gb;q=0.8, en;q=0.7 2798 </pre><p id="rfc.section.10.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>) 2799 </p> 2800 <p id="rfc.section.10.4.p.6">For matching, <a href="http://tools.ietf.org/html/rfc4647#section-3">Section 3</a> of <a href="#RFC4647" id="rfc.xref.RFC4647.3"><cite title="Matching of Language Tags">[RFC4647]</cite></a> defines several matching schemes. Implementations can offer the most appropriate matching scheme for their requirements. 2801 </p> 2802 <div class="note" id="rfc.section.10.4.p.7"> 2803 <p> <b>Note:</b> The "Basic Filtering" scheme (<a href="#RFC4647" id="rfc.xref.RFC4647.4"><cite title="Matching of Language Tags">[RFC4647]</cite></a>, <a href="http://tools.ietf.org/html/rfc4647#section-3.3.1">Section 3.3.1</a>) is identical to the matching scheme that was previously defined in <a href="http://tools.ietf.org/html/rfc2616#section-14.4">Section 14.4</a> of <a href="#RFC2616" id="rfc.xref.RFC2616.2"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2616]</cite></a>. 2804 </p> 2805 </div> 2806 <p id="rfc.section.10.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 2807 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>. 2808 </p> 2809 <p id="rfc.section.10.4.p.9">As intelligibility is highly dependent on the individual user, it is recommended that client applications make the choice 2810 of linguistic preference available to the user. If the choice is not made available, then the Accept-Language header field <em class="bcp14">MUST NOT</em> be given in the request. 2811 </p> 2812 <div class="note" id="rfc.section.10.4.p.10"> 2813 <p> <b>Note:</b> When making the choice of linguistic preference available to the user, we remind implementers of the fact that users are not 2814 familiar with the details of language matching as described above, and ought to be provided appropriate guidance. As an example, 2815 users might assume that on selecting "en-gb", they will be served any kind of English document if British English is not available. 2816 A user agent might suggest in such a case to add "en" to get the best matching behavior. 2817 </p> 2818 </div> 2819 <div id="rfc.iref.a.5"></div> 2820 <div id="rfc.iref.h.6"></div> 2821 <h2 id="rfc.section.10.5"><a href="#rfc.section.10.5">10.5</a> <a id="header.allow" href="#header.allow">Allow</a></h2> 2822 <p id="rfc.section.10.5.p.1">The "Allow" header field lists the set of methods advertised as supported by the target resource. The purpose of this field 2823 is strictly to inform the recipient of valid request methods associated with the resource. 2824 </p> 2825 <div id="rfc.figure.u.33"></div><pre class="inline"><span id="rfc.iref.g.42"></span> <a href="#header.allow" class="smpl">Allow</a> = #<a href="#method.overview" class="smpl">method</a> 2826 </pre><p id="rfc.section.10.5.p.3">Example of use:</p> 2827 <div id="rfc.figure.u.34"></div><pre class="text"> Allow: GET, HEAD, PUT 2828 </pre><p id="rfc.section.10.5.p.5">The actual set of allowed methods is defined by the origin server at the time of each request.</p> 2829 <p id="rfc.section.10.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 2830 to the generic message handling rules. 2831 </p> 2832 <div id="rfc.iref.c.8"></div> 2833 <div id="rfc.iref.h.7"></div> 2834 <h2 id="rfc.section.10.6"><a href="#rfc.section.10.6">10.6</a> <a id="header.content-encoding" href="#header.content-encoding">Content-Encoding</a></h2> 2835 <p id="rfc.section.10.6.p.1">The "Content-Encoding" header field indicates what content-codings have been applied to the representation beyond those inherent 2836 in the media type, and thus what decoding mechanisms have to be applied in order to obtain the media-type referenced by the <a href="#header.content-type" class="smpl">Content-Type</a> header field. Content-Encoding is primarily used to allow a representation to be compressed without losing the identity of 2837 its underlying media type. 2838 </p> 2839 <div id="rfc.figure.u.35"></div><pre class="inline"><span id="rfc.iref.g.43"></span> <a href="#header.content-encoding" class="smpl">Content-Encoding</a> = 1#<a href="#content.codings" class="smpl">content-coding</a> 2840 </pre><p id="rfc.section.10.6.p.3">Content codings are defined in <a href="#content.codings" title="Content Codings">Section 9.4</a>. An example of its use is 2841 </p> 2842 <div id="rfc.figure.u.36"></div><pre class="text"> Content-Encoding: gzip 2843 </pre><p id="rfc.section.10.6.p.5">The content-coding is a characteristic of the representation. Typically, the representation body is stored with this encoding 2844 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 2845 directive is present in the message. 2846 </p> 2847 <p id="rfc.section.10.6.p.6">If the media type includes an inherent encoding, such as a data format that is always compressed, then that encoding would 2848 not be restated as a Content-Encoding even if it happens to be the same algorithm as one of the content-codings. Such a content-coding 2849 would only be listed if, for some bizarre reason, it is applied a second time to form the representation. Likewise, an origin 2850 server might choose to publish the same payload data as multiple representations that differ only in whether the coding is 2851 defined as part of <a href="#header.content-type" class="smpl">Content-Type</a> or Content-Encoding, since some user agents will behave differently in their handling of each response (e.g., open a "Save 2852 as ..." dialog instead of automatic decompression and rendering of content). 2853 </p> 2854 <p id="rfc.section.10.6.p.7">A representation that has a content-coding applied to it <em class="bcp14">MUST</em> include a Content-Encoding header field that lists the content-coding(s) applied. 2855 </p> 2856 <p id="rfc.section.10.6.p.8">If multiple encodings have been applied to a representation, the content codings <em class="bcp14">MUST</em> be listed in the order in which they were applied. Additional information about the encoding parameters <em class="bcp14">MAY</em> be provided by other header fields not defined by this specification. 2857 </p> 2858 <p id="rfc.section.10.6.p.9">If the content-coding of a representation in a request message is not acceptable to the origin server, the server <em class="bcp14">SHOULD</em> respond with a status code of 415 (Unsupported Media Type). 2859 </p> 2860 <div id="rfc.iref.c.9"></div> 2861 <div id="rfc.iref.h.8"></div> 2862 <h2 id="rfc.section.10.7"><a href="#rfc.section.10.7">10.7</a> <a id="header.content-language" href="#header.content-language">Content-Language</a></h2> 2863 <p id="rfc.section.10.7.p.1">The "Content-Language" header field describes the natural language(s) of the intended audience for the representation. Note 2864 that this might not be equivalent to all the languages used within the representation. 2865 </p> 2866 <div id="rfc.figure.u.37"></div><pre class="inline"><span id="rfc.iref.g.44"></span> <a href="#header.content-language" class="smpl">Content-Language</a> = 1#<a href="#language.tags" class="smpl">language-tag</a> 2867 </pre><p id="rfc.section.10.7.p.3">Language tags are defined in <a href="#language.tags" title="Language Tags">Section 9.6</a>. The primary purpose of Content-Language is to allow a user to identify and differentiate representations according to the 2868 user's own preferred language. Thus, if the body content is intended only for a Danish-literate audience, the appropriate 2869 field is 2870 </p> 2871 <div id="rfc.figure.u.38"></div><pre class="text"> Content-Language: da 2872 </pre><p id="rfc.section.10.7.p.5">If no Content-Language is specified, the default is that the content is intended for all language audiences. This might mean 2873 that the sender does not consider it to be specific to any natural language, or that the sender does not know for which language 2874 it is intended. 2875 </p> 2876 <p id="rfc.section.10.7.p.6">Multiple languages <em class="bcp14">MAY</em> be listed for content that is intended for multiple audiences. For example, a rendition of the "Treaty of Waitangi", presented 2877 simultaneously in the original Maori and English versions, would call for 2878 </p> 2879 <div id="rfc.figure.u.39"></div><pre class="text"> Content-Language: mi, en 2880 </pre><p id="rfc.section.10.7.p.8">However, just because multiple languages are present within a representation does not mean that it is intended for multiple 2881 linguistic audiences. An example would be a beginner's language primer, such as "A First Lesson in Latin", which is clearly 2882 intended to be used by an English-literate audience. In this case, the Content-Language would properly only include "en". 2883 </p> 2884 <p id="rfc.section.10.7.p.9">Content-Language <em class="bcp14">MAY</em> be applied to any media type — it is not limited to textual documents. 2885 </p> 2886 <div id="rfc.iref.c.10"></div> 2887 <div id="rfc.iref.h.9"></div> 2888 <h2 id="rfc.section.10.8"><a href="#rfc.section.10.8">10.8</a> <a id="header.content-location" href="#header.content-location">Content-Location</a></h2> 2889 <p id="rfc.section.10.8.p.1">The "Content-Location" header field supplies a URI that can be used as a specific identifier for the representation in this 2890 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. 2891 </p> 2892 <div id="rfc.figure.u.40"></div><pre class="inline"><span id="rfc.iref.g.45"></span> <a href="#header.content-location" class="smpl">Content-Location</a> = <a href="#imported.abnf" class="smpl">absolute-URI</a> / <a href="#imported.abnf" class="smpl">partial-URI</a> 2893 </pre><p id="rfc.section.10.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.27"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[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 2894 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. 2895 </p> 2896 <p id="rfc.section.10.8.p.4">If Content-Location is included in a response message and its value is the same as the effective request URI, then the response 2897 payload <em class="bcp14">SHOULD</em> be considered a current representation of that resource. For a GET or HEAD request, this is the same as the default semantics 2898 when no Content-Location is provided by the server. For a state-changing request like PUT or POST, it implies that the server's 2899 response contains the new representation of that resource, thereby distinguishing it from representations that might only 2900 report about the action (e.g., "It worked!"). This allows authoring applications to update their local copies without the 2901 need for a subsequent GET request. 2902 </p> 2903 <p id="rfc.section.10.8.p.5">If Content-Location is included in a response message and its value differs from the effective request URI, then the origin 2904 server is informing recipients that this representation has its own, presumably more specific, identifier. For a GET or HEAD 2905 request, this is an indication that the effective request URI identifies a resource that is subject to content negotiation 2906 and the selected representation for this response can also be found at the identified URI. For other methods, such a Content-Location 2907 indicates that this representation contains a report on the action's status and the same report is available (for future access 2908 with GET) at the given URI. For example, a purchase transaction made via a POST request might include a receipt document as 2909 the payload of the <a href="#status.200" class="smpl">200 (OK)</a> response; the Content-Location value provides an identifier for retrieving a copy of that same receipt in the future. 2910 </p> 2911 <p id="rfc.section.10.8.p.6">If Content-Location is included in a request message, then it <em class="bcp14">MAY</em> be interpreted by the origin server as an indication of where the user agent originally obtained the content of the enclosed 2912 representation (prior to any subsequent modification of the content by that user agent). In other words, the user agent is 2913 providing the same representation metadata that it received with the original representation. However, such interpretation <em class="bcp14">MUST NOT</em> be used to alter the semantics of the method requested by the client. For example, if a client makes a PUT request on a negotiated 2914 resource and the origin server accepts that PUT (without redirection), then the new set of values for that resource is expected 2915 to be consistent with the one representation supplied in that PUT; the Content-Location cannot be used as a form of reverse 2916 content selection that identifies only one of the negotiated representations to be updated. If the user agent had wanted the 2917 latter semantics, it would have applied the PUT directly to the Content-Location URI. 2918 </p> 2919 <p id="rfc.section.10.8.p.7">A Content-Location field received in a request message is transitory information that <em class="bcp14">SHOULD NOT</em> be saved with other representation metadata for use in later responses. The Content-Location's value might be saved for use 2920 in other contexts, such as within source links or other metadata. 2921 </p> 2922 <p id="rfc.section.10.8.p.8">A cache cannot assume that a representation with a Content-Location different from the URI used to retrieve it can be used 2923 to respond to later requests on that Content-Location URI. 2924 </p> 2925 <p id="rfc.section.10.8.p.9">If the Content-Location value is a partial URI, the partial URI is interpreted relative to the effective request URI.</p> 2926 <div id="rfc.iref.c.11"></div> 2927 <div id="rfc.iref.h.10"></div> 2928 <h2 id="rfc.section.10.9"><a href="#rfc.section.10.9">10.9</a> <a id="header.content-type" href="#header.content-type">Content-Type</a></h2> 2929 <p id="rfc.section.10.9.p.1">The "Content-Type" header field indicates the media type of the representation. In the case of responses to the HEAD method, 2930 the media type is that which would have been sent had the request been a GET. 2931 </p> 2932 <div id="rfc.figure.u.41"></div><pre class="inline"><span id="rfc.iref.g.46"></span> <a href="#header.content-type" class="smpl">Content-Type</a> = <a href="#media.types" class="smpl">media-type</a> 2933 </pre><p id="rfc.section.10.9.p.3">Media types are defined in <a href="#media.types" title="Media Types">Section 9.5</a>. An example of the field is 2934 </p> 2935 <div id="rfc.figure.u.42"></div><pre class="text"> Content-Type: text/html; charset=ISO-8859-4 2936 </pre><p id="rfc.section.10.9.p.5">Further discussion of Content-Type is provided in <a href="#representation.data" title="Representation Data">Section 3.3</a>. 2937 </p> 2938 <div id="rfc.iref.d.3"></div> 2939 <div id="rfc.iref.h.11"></div> 2940 <h2 id="rfc.section.10.10"><a href="#rfc.section.10.10">10.10</a> <a id="header.date" href="#header.date">Date</a></h2> 2941 <p id="rfc.section.10.10.p.1">The "Date" header field represents the date and time at which the message was originated, having the same semantics as the 2942 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 9.1</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format. 2943 </p> 2944 <div id="rfc.figure.u.43"></div><pre class="inline"><span id="rfc.iref.g.47"></span> <a href="#header.date" class="smpl">Date</a> = <a href="#http.date" class="smpl">HTTP-date</a> 2945 </pre><p id="rfc.section.10.10.p.3">An example is</p> 2946 <div id="rfc.figure.u.44"></div><pre class="text"> Date: Tue, 15 Nov 1994 08:12:31 GMT 2947 </pre><p id="rfc.section.10.10.p.5">Origin servers <em class="bcp14">MUST</em> include a Date header field in all responses, except in these cases: 2948 </p> 2949 <ol> 2950 <li>If the response status code is <a href="#status.100" class="smpl">100 (Continue)</a> or <a href="#status.101" class="smpl">101 (Switching Protocols)</a>, the response <em class="bcp14">MAY</em> include a Date header field, at the server's option. 2951 </li> 2952 <li>If the response status code conveys a server error, e.g., <a href="#status.500" class="smpl">500 2953 (Internal Server Error)</a> or <a href="#status.503" class="smpl">503 (Service Unavailable)</a>, and it is inconvenient or impossible to generate a valid Date. 2954 </li> 2955 <li>If the server does not have a clock that can provide a reasonable approximation of the current time, its responses <em class="bcp14">MUST NOT</em> include a Date header field. 2956 </li> 2957 </ol> 2958 <p id="rfc.section.10.10.p.6">A received message that does not have a Date header field <em class="bcp14">MUST</em> be assigned one by the recipient if the message will be cached by that recipient. 2959 </p> 2960 <p id="rfc.section.10.10.p.7">Clients can use the Date header field as well; in order to keep request messages small, they are advised not to include it 2961 when it doesn't convey any useful information (as is usually the case for requests that do not contain a payload). 2962 </p> 2963 <p id="rfc.section.10.10.p.8">The HTTP-date sent in a Date header field <em class="bcp14">SHOULD NOT</em> represent a date and time subsequent to the generation of the message. It <em class="bcp14">SHOULD</em> represent the best available approximation of the date and time of message generation, unless the implementation has no means 2964 of generating a reasonably accurate date and time. In theory, the date ought to represent the moment just before the payload 2965 is generated. In practice, the date can be generated at any time during the message origination without affecting its semantic 2966 value. 2967 </p> 2968 <div id="rfc.iref.e.1"></div> 2969 <div id="rfc.iref.h.12"></div> 2970 <h2 id="rfc.section.10.11"><a href="#rfc.section.10.11">10.11</a> <a id="header.expect" href="#header.expect">Expect</a></h2> 2971 <p id="rfc.section.10.11.p.1">The "Expect" header field is used to indicate that particular server behaviors are required by the client.</p> 2972 <div id="rfc.figure.u.45"></div><pre class="inline"><span id="rfc.iref.g.48"></span><span id="rfc.iref.g.49"></span><span id="rfc.iref.g.50"></span><span id="rfc.iref.g.51"></span><span id="rfc.iref.g.52"></span> <a href="#header.expect" class="smpl">Expect</a> = 1#<a href="#header.expect" class="smpl">expectation</a> 2973 2974 <a href="#header.expect" class="smpl">expectation</a> = <a href="#header.expect" class="smpl">expect-name</a> [ <a href="#imported.abnf" class="smpl">BWS</a> "=" <a href="#imported.abnf" class="smpl">BWS</a> <a href="#header.expect" class="smpl">expect-value</a> ] 2975 *( <a href="#imported.abnf" class="smpl">OWS</a> ";" [ <a href="#imported.abnf" class="smpl">OWS</a> <a href="#header.expect" class="smpl">expect-param</a> ] ) 2976 <a href="#header.expect" class="smpl">expect-param</a> = <a href="#header.expect" class="smpl">expect-name</a> [ <a href="#imported.abnf" class="smpl">BWS</a> "=" <a href="#imported.abnf" class="smpl">BWS</a> <a href="#header.expect" class="smpl">expect-value</a> ] 2977 2978 <a href="#header.expect" class="smpl">expect-name</a> = <a href="#imported.abnf" class="smpl">token</a> 2979 <a href="#header.expect" class="smpl">expect-value</a> = <a href="#imported.abnf" class="smpl">token</a> / <a href="#imported.abnf" class="smpl">quoted-string</a> 2980 </pre><p id="rfc.section.10.11.p.3">If all received Expect header field(s) are syntactically valid but contain an expectation that the recipient does not understand 2981 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. 2982 </p> 2983 <p id="rfc.section.10.11.p.4">The only expectation defined by this specification is:</p> 2984 <p id="rfc.section.10.11.p.5"><span id="rfc.iref.142"></span><span id="rfc.iref.e.2"></span> 100-continue 2985 </p> 2986 <ul class="empty"> 2987 <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.3</a> of <a href="#Part1" id="rfc.xref.Part1.28"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. It does not support any expect-params. 2988 </li> 2989 </ul> 2990 <p id="rfc.section.10.11.p.6">Comparison is case-insensitive for names (expect-name), and case-sensitive for values (expect-value).</p> 2991 <p id="rfc.section.10.11.p.7">The Expect mechanism is hop-by-hop: the above requirements apply to any server, including proxies. However, the Expect header 2992 field itself is end-to-end; it <em class="bcp14">MUST</em> be forwarded if the request is forwarded. 2993 </p> 2994 <p id="rfc.section.10.11.p.8">Many older HTTP/1.0 and HTTP/1.1 applications do not understand the Expect header field.</p> 2995 <div id="rfc.iref.f.1"></div> 2996 <div id="rfc.iref.h.13"></div> 2997 <h2 id="rfc.section.10.12"><a href="#rfc.section.10.12">10.12</a> <a id="header.from" href="#header.from">From</a></h2> 2998 <p id="rfc.section.10.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>: 2999 </p> 3000 <div id="rfc.figure.u.46"></div><pre class="inline"><span id="rfc.iref.g.53"></span> <a href="#header.from" class="smpl">From</a> = <a href="#header.from" class="smpl">mailbox</a> 3001 3002 <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>> 3003 </pre><p id="rfc.section.10.12.p.3">An example is:</p> 3004 <div id="rfc.figure.u.47"></div><pre class="text"> From: webmaster@example.org 3005 </pre><p id="rfc.section.10.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 3006 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 3007 end. 3008 </p> 3009 <p id="rfc.section.10.12.p.6">The Internet e-mail address in this field <em class="bcp14">MAY</em> be separate from the Internet host which issued the request. For example, when a request is passed through a proxy the original 3010 issuer's address <em class="bcp14">SHOULD</em> be used. 3011 </p> 3012 <p id="rfc.section.10.12.p.7">The client <em class="bcp14">SHOULD NOT</em> send the From header field without the user's approval, as it might conflict with the user's privacy interests or their site's 3013 security policy. It is strongly recommended that the user be able to disable, enable, and modify the value of this field at 3014 any time prior to a request. 3015 </p> 3016 <div id="rfc.iref.l.1"></div> 3017 <div id="rfc.iref.h.14"></div> 3018 <h2 id="rfc.section.10.13"><a href="#rfc.section.10.13">10.13</a> <a id="header.location" href="#header.location">Location</a></h2> 3019 <p id="rfc.section.10.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. 3020 </p> 3021 <div id="rfc.figure.u.48"></div><pre class="inline"><span id="rfc.iref.g.54"></span> <a href="#header.location" class="smpl">Location</a> = <a href="#imported.abnf" class="smpl">URI-reference</a> 3022 </pre><p id="rfc.section.10.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. 3023 </p> 3024 <p id="rfc.section.10.13.p.4">The field value consists of a single URI-reference. When it has the form of a relative reference (<a href="#RFC3986" id="rfc.xref.RFC3986.1"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-4.2">Section 4.2</a>), the final value is computed by resolving it against the effective request URI (<a href="#RFC3986" id="rfc.xref.RFC3986.2"><cite title="Uniform Resource Identifier (URI): Generic Syntax">[RFC3986]</cite></a>, <a href="http://tools.ietf.org/html/rfc3986#section-5">Section 5</a>). If the original URI, as navigated to by the user agent, did contain a fragment identifier, and the final value does not, 3025 then the original URI's fragment identifier is added to the final value. 3026 </p> 3027 <div id="rfc.figure.u.49"></div> 3028 <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 3029 </pre> <p>would result in a final value of "http://www.example.org/pub/WWW/People.html#tim"</p> 3030 <div id="rfc.figure.u.50"></div> 3031 <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 3032 </pre> <p>would result in a final value of "http://www.example.net/index.html#larry", preserving the original fragment identifier.</p> 3033 <div class="note" id="rfc.section.10.13.p.7"> 3034 <p> <b>Note:</b> Some recipients attempt to recover from Location fields that are not valid URI references. This specification does not mandate 3035 or define such processing, but does allow it. 3036 </p> 3037 </div> 3038 <p id="rfc.section.10.13.p.8">There are circumstances in which a fragment identifier in a Location URI would not be appropriate. For instance, when it appears 3039 in a <a href="#status.201" class="smpl">201 3040 (Created)</a> response, where the Location header field specifies the URI for the entire created resource. 3041 </p> 3042 <div class="note" id="rfc.section.10.13.p.9"> 3043 <p> <b>Note:</b> The <a href="#header.content-location" class="smpl">Content-Location</a> header field (<a href="#header.content-location" id="rfc.xref.header.content-location.3" title="Content-Location">Section 10.8</a>) differs from Location in that the Content-Location identifies the most specific resource corresponding to the enclosed representation. 3044 It is therefore possible for a response to contain header fields for both Location and Content-Location. 3045 </p> 3046 </div> 3047 <div id="rfc.iref.m.9"></div> 3048 <div id="rfc.iref.h.15"></div> 3049 <h2 id="rfc.section.10.14"><a href="#rfc.section.10.14">10.14</a> <a id="header.max-forwards" href="#header.max-forwards">Max-Forwards</a></h2> 3050 <p id="rfc.section.10.14.p.1">The "Max-Forwards" header field provides a mechanism with the TRACE (<a href="#TRACE" id="rfc.xref.TRACE.2" title="TRACE">Section 5.3.8</a>) and OPTIONS (<a href="#OPTIONS" id="rfc.xref.OPTIONS.2" title="OPTIONS">Section 5.3.7</a>) methods to limit the number of times that the request is forwarded by proxies. This can be useful when the client is attempting 3051 to trace a request which appears to be failing or looping mid-chain. 3052 </p> 3053 <div id="rfc.figure.u.51"></div><pre class="inline"><span id="rfc.iref.g.55"></span> <a href="#header.max-forwards" class="smpl">Max-Forwards</a> = 1*<a href="#imported.abnf" class="smpl">DIGIT</a> 3054 </pre><p id="rfc.section.10.14.p.3">The Max-Forwards value is a decimal integer indicating the remaining number of times this request message can be forwarded.</p> 3055 <p id="rfc.section.10.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). 3056 </p> 3057 <p id="rfc.section.10.14.p.5">The Max-Forwards header field <em class="bcp14">MAY</em> be ignored for all other request methods. 3058 </p> 3059 <div id="rfc.iref.r.2"></div> 3060 <div id="rfc.iref.h.16"></div> 3061 <h2 id="rfc.section.10.15"><a href="#rfc.section.10.15">10.15</a> <a id="header.referer" href="#header.referer">Referer</a></h2> 3062 <p id="rfc.section.10.15.p.1">The "Referer" [sic] header field allows the client to specify the URI of the resource from which the target URI was obtained 3063 (the "referrer", although the header field is misspelled.). 3064 </p> 3065 <p id="rfc.section.10.15.p.2">The Referer header field allows servers to generate lists of back-links to resources for interest, logging, optimized caching, 3066 etc. It also allows obsolete or mistyped links to be traced for maintenance. Some servers use Referer as a means of controlling 3067 where they allow links from (so-called "deep linking"), but legitimate requests do not always contain a Referer header field. 3068 </p> 3069 <p id="rfc.section.10.15.p.3">If the target URI was obtained from a source that does not have its own URI (e.g., input from the user keyboard), the Referer 3070 field <em class="bcp14">MUST</em> either be sent with the value "about:blank", or not be sent at all. Note that this requirement does not apply to sources with 3071 non-HTTP URIs (e.g., FTP). 3072 </p> 3073 <div id="rfc.figure.u.52"></div><pre class="inline"><span id="rfc.iref.g.56"></span> <a href="#header.referer" class="smpl">Referer</a> = <a href="#imported.abnf" class="smpl">absolute-URI</a> / <a href="#imported.abnf" class="smpl">partial-URI</a> 3074 </pre><p id="rfc.section.10.15.p.5">Example:</p> 3075 <div id="rfc.figure.u.53"></div><pre class="text"> Referer: http://www.example.org/hypertext/Overview.html 3076 </pre><p id="rfc.section.10.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. 3077 </p> 3078 <div id="rfc.iref.r.3"></div> 3079 <div id="rfc.iref.h.17"></div> 3080 <h2 id="rfc.section.10.16"><a href="#rfc.section.10.16">10.16</a> <a id="header.retry-after" href="#header.retry-after">Retry-After</a></h2> 3081 <p id="rfc.section.10.16.p.1">The header "Retry-After" field can be used with a <a href="#status.503" class="smpl">503 (Service 3082 Unavailable)</a> response to indicate how long the service is expected to be unavailable to the requesting client. This field <em class="bcp14">MAY</em> also be used with any <a href="#status.3xx" class="smpl">3xx (Redirection)</a> response to indicate the minimum time the user-agent is asked to wait before issuing the redirected request. 3083 </p> 3084 <p id="rfc.section.10.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> 3085 <div id="rfc.figure.u.54"></div><pre class="inline"><span id="rfc.iref.g.57"></span> <a href="#header.retry-after" class="smpl">Retry-After</a> = <a href="#http.date" class="smpl">HTTP-date</a> / <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> 3086 </pre><div id="rule.delta-seconds"> 3087 <p id="rfc.section.10.16.p.4"> Time spans are non-negative decimal integers, representing time in seconds.</p> 3088 </div> 3089 <div id="rfc.figure.u.55"></div><pre class="inline"><span id="rfc.iref.g.58"></span> <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> = 1*<a href="#imported.abnf" class="smpl">DIGIT</a> 3090 </pre><p id="rfc.section.10.16.p.6">Two examples of its use are</p> 3091 <div id="rfc.figure.u.56"></div><pre class="text"> Retry-After: Fri, 31 Dec 1999 23:59:59 GMT 3092 Retry-After: 120 3093 </pre><p id="rfc.section.10.16.p.8">In the latter example, the delay is 2 minutes.</p> 3094 <div id="rfc.iref.s.44"></div> 3095 <div id="rfc.iref.h.18"></div> 3096 <h2 id="rfc.section.10.17"><a href="#rfc.section.10.17">10.17</a> <a id="header.server" href="#header.server">Server</a></h2> 3097 <p id="rfc.section.10.17.p.1">The "Server" header field contains information about the software used by the origin server to handle the request.</p> 3098 <p id="rfc.section.10.17.p.2">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 9.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.29"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) identifying the server and any significant subproducts. The product tokens are listed in order of their significance for 3099 identifying the application. 3100 </p> 3101 <div id="rfc.figure.u.57"></div><pre class="inline"><span id="rfc.iref.g.59"></span> <a href="#header.server" class="smpl">Server</a> = <a href="#product.tokens" class="smpl">product</a> *( <a href="#imported.abnf" class="smpl">RWS</a> ( <a href="#product.tokens" class="smpl">product</a> / <a href="#imported.abnf" class="smpl">comment</a> ) ) 3102 </pre><p id="rfc.section.10.17.p.4">Example:</p> 3103 <div id="rfc.figure.u.58"></div><pre class="text"> Server: CERN/3.0 libwww/2.17 3104 </pre><p id="rfc.section.10.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 5.7</a> of <a href="#Part1" id="rfc.xref.Part1.30"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>). 3105 </p> 3106 <div class="note" id="rfc.section.10.17.p.7"> 3107 <p> <b>Note:</b> Revealing the specific software version of the server might allow the server machine to become more vulnerable to attacks 3108 against software that is known to contain security holes. Server implementers are encouraged to make this field a configurable 3109 option. 3110 </p> 3111 </div> 3112 <div id="rfc.iref.u.1"></div> 3113 <div id="rfc.iref.h.19"></div> 3114 <h2 id="rfc.section.10.18"><a href="#rfc.section.10.18">10.18</a> <a id="header.user-agent" href="#header.user-agent">User-Agent</a></h2> 3115 <p id="rfc.section.10.18.p.1">The "User-Agent" header field contains information about the user agent originating the request. User agents <em class="bcp14">SHOULD</em> include this field with requests. 3116 </p> 3117 <p id="rfc.section.10.18.p.2">Typically, it is used for statistical purposes, the tracing of protocol violations, and tailoring responses to avoid particular 3118 user agent limitations. 3119 </p> 3120 <p id="rfc.section.10.18.p.3">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 9.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.31"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) identifying the agent and its significant subproducts. By convention, the product tokens are listed in order of their significance 3121 for identifying the application. 3122 </p> 3123 <p id="rfc.section.10.18.p.4">Because this field is usually sent on every request a user agent makes, implementations are encouraged not to include needlessly 3124 fine-grained detail, and to limit (or even prohibit) the addition of subproducts by third parties. Overly long and detailed 3125 User-Agent field values make requests larger and can also be used to identify ("fingerprint") the user against their wishes. 3126 </p> 3127 <p id="rfc.section.10.18.p.5">Likewise, implementations are encouraged not to use the product tokens of other implementations in order to declare compatibility 3128 with them, as this circumvents the purpose of the field. Finally, they are encouraged not to use comments to identify products; 3129 doing so makes the field value more difficult to parse. 3130 </p> 3131 <div id="rfc.figure.u.59"></div><pre class="inline"><span id="rfc.iref.g.60"></span> <a href="#header.user-agent" class="smpl">User-Agent</a> = <a href="#product.tokens" class="smpl">product</a> *( <a href="#imported.abnf" class="smpl">RWS</a> ( <a href="#product.tokens" class="smpl">product</a> / <a href="#imported.abnf" class="smpl">comment</a> ) ) 3132 </pre><p id="rfc.section.10.18.p.7">Example:</p> 3133 <div id="rfc.figure.u.60"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b3 3134 </pre><h1 id="rfc.section.11"><a href="#rfc.section.11">11.</a> <a id="IANA.considerations" href="#IANA.considerations">IANA Considerations</a></h1> 3135 <h2 id="rfc.section.11.1"><a href="#rfc.section.11.1">11.1</a> <a id="method.registry" href="#method.registry">Method Registry</a></h2> 3136 <p id="rfc.section.11.1.p.1">The HTTP Method Registry defines the name space for the request method token (<a href="#methods" title="Request Methods">Section 5</a>). The method registry is maintained at <<a href="http://www.iana.org/assignments/http-methods">http://www.iana.org/assignments/http-methods</a>>. 3137 </p> 3138 <h3 id="rfc.section.11.1.1"><a href="#rfc.section.11.1.1">11.1.1</a> <a id="method.procedure" href="#method.procedure">Procedure</a></h3> 3139 <p id="rfc.section.11.1.1.p.1">HTTP method registrations <em class="bcp14">MUST</em> include the following fields: 3142 <h1 id="rfc.section.10"><a href="#rfc.section.10">10.</a> <a id="IANA.considerations" href="#IANA.considerations">IANA Considerations</a></h1> 3143 <h2 id="rfc.section.10.1"><a href="#rfc.section.10.1">10.1</a> <a id="method.registry" href="#method.registry">Method Registry</a></h2> 3144 <p id="rfc.section.10.1.p.1">The HTTP Method Registry defines the name space for the request method token (<a href="#methods" title="Request Methods">Section 5</a>). The method registry is maintained at <<a href="http://www.iana.org/assignments/http-methods">http://www.iana.org/assignments/http-methods</a>>. 3145 </p> 3146 <h3 id="rfc.section.10.1.1"><a href="#rfc.section.10.1.1">10.1.1</a> <a id="method.procedure" href="#method.procedure">Procedure</a></h3> 3147 <p id="rfc.section.10.1.1.p.1">HTTP method registrations <em class="bcp14">MUST</em> include the following fields: 3140 3148 </p> 3141 3149 <ul> … … 3148 3156 <li>Pointer to specification text</li> 3149 3157 </ul> 3150 <p id="rfc.section.1 1.1.1.p.2">Values to be added to this name space require IETF Review (see <a href="#RFC5226" id="rfc.xref.RFC5226.1"><cite title="Guidelines for Writing an IANA Considerations Section in RFCs">[RFC5226]</cite></a>, <a href="http://tools.ietf.org/html/rfc5226#section-4.1">Section 4.1</a>).3151 </p> 3152 <h3 id="rfc.section.1 1.1.2"><a href="#rfc.section.11.1.2">11.1.2</a> <a id="considerations.for.new.methods" href="#considerations.for.new.methods">Considerations for New Methods</a></h3>3153 <p id="rfc.section.1 1.1.2.p.1">Standardized HTTP methods are generic; that is, they are potentially applicable to any resource, not just one particular media3158 <p id="rfc.section.10.1.1.p.2">Values to be added to this name space require IETF Review (see <a href="#RFC5226" id="rfc.xref.RFC5226.1"><cite title="Guidelines for Writing an IANA Considerations Section in RFCs">[RFC5226]</cite></a>, <a href="http://tools.ietf.org/html/rfc5226#section-4.1">Section 4.1</a>). 3159 </p> 3160 <h3 id="rfc.section.10.1.2"><a href="#rfc.section.10.1.2">10.1.2</a> <a id="considerations.for.new.methods" href="#considerations.for.new.methods">Considerations for New Methods</a></h3> 3161 <p id="rfc.section.10.1.2.p.1">Standardized HTTP methods are generic; that is, they are potentially applicable to any resource, not just one particular media 3154 3162 type, kind of resource, or application. As such, it is preferred that new HTTP methods be registered in a document that isn't 3155 3163 specific to a single application or data format, since orthogonal technologies deserve orthogonal specification. 3156 3164 </p> 3157 <p id="rfc.section.1 1.1.2.p.2">Since HTTP message parsing (<a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.32"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) is independent of method semantics (aside from responses to HEAD), definitions of new HTTP methods cannot change the parsing3165 <p id="rfc.section.10.1.2.p.2">Since HTTP message parsing (<a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.32"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>) is independent of method semantics (aside from responses to HEAD), definitions of new HTTP methods cannot change the parsing 3158 3166 algorithm or prohibit the presence of a message body on either the request or the response message. Definitions of new methods 3159 3167 can specify that only zero-length bodies are allowed, which would imply that each such messages would be required to contain 3160 3168 a Content-Length header field with a value of "0". 3161 3169 </p> 3162 <p id="rfc.section.1 1.1.2.p.3">New method definitions need to indicate whether they are safe (<a href="#safe.methods" title="Safe Methods">Section 5.2.1</a>), idempotent (<a href="#idempotent.methods" title="Idempotent Methods">Section 5.2.2</a>), cacheable (<a href="#cacheable.methods" title="Cacheable Methods">Section 5.2.3</a>), and what semantics are to be associated with the request body if any is present in the request. If a method is cacheable,3170 <p id="rfc.section.10.1.2.p.3">New method definitions need to indicate whether they are safe (<a href="#safe.methods" title="Safe Methods">Section 5.2.1</a>), idempotent (<a href="#idempotent.methods" title="Idempotent Methods">Section 5.2.2</a>), cacheable (<a href="#cacheable.methods" title="Cacheable Methods">Section 5.2.3</a>), and what semantics are to be associated with the request body if any is present in the request. If a method is cacheable, 3163 3171 the method definition ought to describe how, and under what conditions, a cache can store a response and use it to satisfy 3164 3172 a subsequent request. 3165 3173 </p> 3166 <h3 id="rfc.section.1 1.1.3"><a href="#rfc.section.11.1.3">11.1.3</a> <a id="method.registration" href="#method.registration">Registrations</a></h3>3167 <p id="rfc.section.1 1.1.3.p.1">The HTTP Method Registry shall be populated with the registrations below:</p>3174 <h3 id="rfc.section.10.1.3"><a href="#rfc.section.10.1.3">10.1.3</a> <a id="method.registration" href="#method.registration">Registrations</a></h3> 3175 <p id="rfc.section.10.1.3.p.1">The HTTP Method Registry shall be populated with the registrations below:</p> 3168 3176 <div id="rfc.table.2"> 3169 3177 <div id="iana.method.registration.table"></div> … … 3237 3245 </table> 3238 3246 </div> 3239 <h2 id="rfc.section.1 1.2"><a href="#rfc.section.11.2">11.2</a> <a id="status.code.registry" href="#status.code.registry">Status Code Registry</a></h2>3240 <p id="rfc.section.1 1.2.p.1">The HTTP Status Code Registry defines the name space for the response status-code token (<a href="#status.codes" title="Response Status Codes">Section 7</a>). The status code registry is maintained at <<a href="http://www.iana.org/assignments/http-status-codes">http://www.iana.org/assignments/http-status-codes</a>>.3241 </p> 3242 <p id="rfc.section.1 1.2.p.2">This section replaces the registration procedure for HTTP Status Codes previously defined in <a href="http://tools.ietf.org/html/rfc2817#section-7.1">Section 7.1</a> of <a href="#RFC2817" id="rfc.xref.RFC2817.1"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>.3243 </p> 3244 <h3 id="rfc.section.1 1.2.1"><a href="#rfc.section.11.2.1">11.2.1</a> <a id="status.code.procedure" href="#status.code.procedure">Procedure</a></h3>3245 <p id="rfc.section.1 1.2.1.p.1">Values to be added to the HTTP status code name space require IETF Review (see <a href="#RFC5226" id="rfc.xref.RFC5226.2"><cite title="Guidelines for Writing an IANA Considerations Section in RFCs">[RFC5226]</cite></a>, <a href="http://tools.ietf.org/html/rfc5226#section-4.1">Section 4.1</a>).3246 </p> 3247 <h3 id="rfc.section.1 1.2.2"><a href="#rfc.section.11.2.2">11.2.2</a> <a id="considerations.for.new.status.codes" href="#considerations.for.new.status.codes">Considerations for New Status Codes</a></h3>3248 <p id="rfc.section.1 1.2.2.p.1">When it is necessary to express new semantics for a HTTP response that aren't specific to a single application or media type,3247 <h2 id="rfc.section.10.2"><a href="#rfc.section.10.2">10.2</a> <a id="status.code.registry" href="#status.code.registry">Status Code Registry</a></h2> 3248 <p id="rfc.section.10.2.p.1">The HTTP Status Code Registry defines the name space for the response status-code token (<a href="#status.codes" title="Response Status Codes">Section 7</a>). The status code registry is maintained at <<a href="http://www.iana.org/assignments/http-status-codes">http://www.iana.org/assignments/http-status-codes</a>>. 3249 </p> 3250 <p id="rfc.section.10.2.p.2">This section replaces the registration procedure for HTTP Status Codes previously defined in <a href="http://tools.ietf.org/html/rfc2817#section-7.1">Section 7.1</a> of <a href="#RFC2817" id="rfc.xref.RFC2817.1"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>. 3251 </p> 3252 <h3 id="rfc.section.10.2.1"><a href="#rfc.section.10.2.1">10.2.1</a> <a id="status.code.procedure" href="#status.code.procedure">Procedure</a></h3> 3253 <p id="rfc.section.10.2.1.p.1">Values to be added to the HTTP status code name space require IETF Review (see <a href="#RFC5226" id="rfc.xref.RFC5226.2"><cite title="Guidelines for Writing an IANA Considerations Section in RFCs">[RFC5226]</cite></a>, <a href="http://tools.ietf.org/html/rfc5226#section-4.1">Section 4.1</a>). 3254 </p> 3255 <h3 id="rfc.section.10.2.2"><a href="#rfc.section.10.2.2">10.2.2</a> <a id="considerations.for.new.status.codes" href="#considerations.for.new.status.codes">Considerations for New Status Codes</a></h3> 3256 <p id="rfc.section.10.2.2.p.1">When it is necessary to express new semantics for a HTTP response that aren't specific to a single application or media type, 3249 3257 and currently defined status codes are inadequate, a new status code can be registered. 3250 3258 </p> 3251 <p id="rfc.section.1 1.2.2.p.2">HTTP status codes are generic; that is, they are potentially applicable to any resource, not just one particular media type,3259 <p id="rfc.section.10.2.2.p.2">HTTP status codes are generic; that is, they are potentially applicable to any resource, not just one particular media type, 3252 3260 "type" of resource, or application. As such, it is preferred that new HTTP status codes be registered in a document that isn't 3253 3261 specific to a single application, so that this is clear. 3254 3262 </p> 3255 <p id="rfc.section.1 1.2.2.p.3">Definitions of new HTTP status codes typically explain the request conditions that produce a response containing the status3263 <p id="rfc.section.10.2.2.p.3">Definitions of new HTTP status codes typically explain the request conditions that produce a response containing the status 3256 3264 code (e.g., combinations of request header fields and/or method(s)), along with any interactions with response header fields 3257 3265 (e.g., those that are required, those that modify the semantics of the response). 3258 3266 </p> 3259 <p id="rfc.section.1 1.2.2.p.4">New HTTP status codes are required to fall under one of the categories defined in <a href="#status.codes" title="Response Status Codes">Section 7</a>. To allow existing parsers to properly handle them, new status codes cannot disallow a response body, although they can mandate3267 <p id="rfc.section.10.2.2.p.4">New HTTP status codes are required to fall under one of the categories defined in <a href="#status.codes" title="Response Status Codes">Section 7</a>. To allow existing parsers to properly handle them, new status codes cannot disallow a response body, although they can mandate 3260 3268 a zero-length response body. They can require the presence of one or more particular HTTP response header field(s). 3261 3269 </p> 3262 <p id="rfc.section.1 1.2.2.p.5">Likewise, their definitions can specify that caches are allowed to use heuristics to determine their freshness (see <a href="#Part6" id="rfc.xref.Part6.18"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>; by default, it is not allowed), and can define how to determine the resource which they carry a representation for (see <a href="#identifying.response.associated.with.representation" title="Identifying the Resource Associated with a Representation">Section 3.1</a>; by default, it is anonymous).3263 </p> 3264 <h3 id="rfc.section.1 1.2.3"><a href="#rfc.section.11.2.3">11.2.3</a> <a id="status.code.registration" href="#status.code.registration">Registrations</a></h3>3265 <p id="rfc.section.1 1.2.3.p.1">The HTTP Status Code Registry shall be updated with the registrations below:</p>3270 <p id="rfc.section.10.2.2.p.5">Likewise, their definitions can specify that caches are allowed to use heuristics to determine their freshness (see <a href="#Part6" id="rfc.xref.Part6.18"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>; by default, it is not allowed), and can define how to determine the resource which they carry a representation for (see <a href="#identifying.response.associated.with.representation" title="Identifying the Resource Associated with a Representation">Section 3.1</a>; by default, it is anonymous). 3271 </p> 3272 <h3 id="rfc.section.10.2.3"><a href="#rfc.section.10.2.3">10.2.3</a> <a id="status.code.registration" href="#status.code.registration">Registrations</a></h3> 3273 <p id="rfc.section.10.2.3.p.1">The HTTP Status Code Registry shall be updated with the registrations below:</p> 3266 3274 <div id="rfc.table.3"> 3267 3275 <div id="iana.status.code.registration.table"></div> … … 3494 3502 </table> 3495 3503 </div> 3496 <h2 id="rfc.section.1 1.3"><a href="#rfc.section.11.3">11.3</a> <a id="header.field.registry" href="#header.field.registry">Header Field Registry</a></h2>3497 <p id="rfc.section.1 1.3.p.1">HTTP header fields are registered within the Message Header Field Registry located at <<a href="http://www.iana.org/assignments/message-headers/message-header-index.html">http://www.iana.org/assignments/message-headers/message-header-index.html</a>>, as defined by <a href="#RFC3864" id="rfc.xref.RFC3864.1"><cite title="Registration Procedures for Message Header Fields">[RFC3864]</cite></a>.3498 </p> 3499 <h3 id="rfc.section.1 1.3.1"><a href="#rfc.section.11.3.1">11.3.1</a> <a id="considerations.for.new.header.fields" href="#considerations.for.new.header.fields">Considerations for New Header Fields</a></h3>3500 <p id="rfc.section.1 1.3.1.p.1">Header fields are key:value pairs that can be used to communicate data about the message, its payload, the target resource,3504 <h2 id="rfc.section.10.3"><a href="#rfc.section.10.3">10.3</a> <a id="header.field.registry" href="#header.field.registry">Header Field Registry</a></h2> 3505 <p id="rfc.section.10.3.p.1">HTTP header fields are registered within the Message Header Field Registry located at <<a href="http://www.iana.org/assignments/message-headers/message-header-index.html">http://www.iana.org/assignments/message-headers/message-header-index.html</a>>, as defined by <a href="#RFC3864" id="rfc.xref.RFC3864.1"><cite title="Registration Procedures for Message Header Fields">[RFC3864]</cite></a>. 3506 </p> 3507 <h3 id="rfc.section.10.3.1"><a href="#rfc.section.10.3.1">10.3.1</a> <a id="considerations.for.new.header.fields" href="#considerations.for.new.header.fields">Considerations for New Header Fields</a></h3> 3508 <p id="rfc.section.10.3.1.p.1">Header fields are key:value pairs that can be used to communicate data about the message, its payload, the target resource, 3501 3509 or the connection (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.33"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a> for a general definition of header field syntax in HTTP messages. 3502 3510 </p> 3503 <p id="rfc.section.1 1.3.1.p.2">The requirements for header field names are defined in <a href="http://tools.ietf.org/html/rfc3864#section-4.1">Section 4.1</a> of <a href="#RFC3864" id="rfc.xref.RFC3864.2"><cite title="Registration Procedures for Message Header Fields">[RFC3864]</cite></a>. Authors of specifications defining new fields are advised to keep the name as short as practical, and not to prefix them3511 <p id="rfc.section.10.3.1.p.2">The requirements for header field names are defined in <a href="http://tools.ietf.org/html/rfc3864#section-4.1">Section 4.1</a> of <a href="#RFC3864" id="rfc.xref.RFC3864.2"><cite title="Registration Procedures for Message Header Fields">[RFC3864]</cite></a>. Authors of specifications defining new fields are advised to keep the name as short as practical, and not to prefix them 3504 3512 with "X-" if they are to be registered (either immediately or in the future). 3505 3513 </p> 3506 <p id="rfc.section.1 1.3.1.p.3">New header field values typically have their syntax defined using ABNF (<a href="#RFC5234" id="rfc.xref.RFC5234.2"><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">Appendix B</a> of <a href="#Part1" id="rfc.xref.Part1.34"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a> as necessary, and are usually constrained to the range of ASCII characters. Header fields needing a greater range of characters3514 <p id="rfc.section.10.3.1.p.3">New header field values typically have their syntax defined using ABNF (<a href="#RFC5234" id="rfc.xref.RFC5234.2"><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">Appendix B</a> of <a href="#Part1" id="rfc.xref.Part1.34"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a> as necessary, and are usually constrained to the range of ASCII characters. Header fields needing a greater range of characters 3507 3515 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>. 3508 3516 </p> 3509 <p id="rfc.section.1 1.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 allowed3517 <p id="rfc.section.10.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 3510 3518 in the field-value's payload. Typically, components that might contain a comma are protected with double-quotes using the 3511 3519 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.35"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>). 3512 3520 </p> 3513 <p id="rfc.section.1 1.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 like3521 <p id="rfc.section.10.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 3514 3522 these: 3515 3523 </p> … … 3517 3525 "http://without-a-comma.example.com/" 3518 3526 Example-Date-Field: "Sat, 04 May 1996", "Wed, 14 Sep 2005" 3519 </pre><p id="rfc.section.1 1.3.1.p.7">Note that double-quote delimiters almost always are used with the quoted-string production; using a different syntax inside3527 </pre><p id="rfc.section.10.3.1.p.7">Note that double-quote delimiters almost always are used with the quoted-string production; using a different syntax inside 3520 3528 double-quotes will likely cause unnecessary confusion. 3521 3529 </p> 3522 <p id="rfc.section.1 1.3.1.p.8">Many header fields use a format including (case-insensitively) named parameters (for instance, <a href="#header.content-type" class="smpl">Content-Type</a>, defined in <a href="#header.content-type" id="rfc.xref.header.content-type.4" title="Content-Type">Section 10.9</a>). Allowing both unquoted (token) and quoted (quoted-string) syntax for the parameter value enables recipients to use existing3530 <p id="rfc.section.10.3.1.p.8">Many header fields use a format including (case-insensitively) named parameters (for instance, <a href="#header.content-type" class="smpl">Content-Type</a>, defined in <a href="#header.content-type" id="rfc.xref.header.content-type.4" title="Content-Type">Section 3.2.1</a>). Allowing both unquoted (token) and quoted (quoted-string) syntax for the parameter value enables recipients to use existing 3523 3531 parser components. When allowing both forms, the meaning of a parameter value ought to be independent of the syntax used for 3524 3532 it (for an example, see the notes on parameter handling for media types in <a href="#media.types" title="Media Types">Section 9.5</a>). 3525 3533 </p> 3526 <p id="rfc.section.1 1.3.1.p.9">Authors of specifications defining new header fields are advised to consider documenting: </p>3534 <p id="rfc.section.10.3.1.p.9">Authors of specifications defining new header fields are advised to consider documenting: </p> 3527 3535 <ul> 3528 3536 <li> … … 3561 3569 </li> 3562 3570 </ul> 3563 <h3 id="rfc.section.1 1.3.2"><a href="#rfc.section.11.3.2">11.3.2</a> <a id="header.field.registration" href="#header.field.registration">Registrations</a></h3>3564 <p id="rfc.section.1 1.3.2.p.1">The Message Header Field Registry shall be updated with the following permanent registrations:</p>3571 <h3 id="rfc.section.10.3.2"><a href="#rfc.section.10.3.2">10.3.2</a> <a id="header.field.registration" href="#header.field.registration">Registrations</a></h3> 3572 <p id="rfc.section.10.3.2.p.1">The Message Header Field Registry shall be updated with the following permanent registrations:</p> 3565 3573 <div id="rfc.table.4"> 3566 3574 <div id="iana.header.registration.table"></div> … … 3579 3587 <td class="left">http</td> 3580 3588 <td class="left">standard</td> 3581 <td class="left"> <a href="#header.accept" id="rfc.xref.header.accept.4" title="Accept">Section 10.1</a>3589 <td class="left"> <a href="#header.accept" id="rfc.xref.header.accept.4" title="Accept">Section 6.3.2</a> 3582 3590 </td> 3583 3591 </tr> … … 3586 3594 <td class="left">http</td> 3587 3595 <td class="left">standard</td> 3588 <td class="left"> <a href="#header.accept-charset" id="rfc.xref.header.accept-charset.3" title="Accept-Charset">Section 10.2</a>3596 <td class="left"> <a href="#header.accept-charset" id="rfc.xref.header.accept-charset.3" title="Accept-Charset">Section 6.3.3</a> 3589 3597 </td> 3590 3598 </tr> … … 3593 3601 <td class="left">http</td> 3594 3602 <td class="left">standard</td> 3595 <td class="left"> <a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.4" title="Accept-Encoding">Section 10.3</a>3603 <td class="left"> <a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.4" title="Accept-Encoding">Section 6.3.4</a> 3596 3604 </td> 3597 3605 </tr> … … 3600 3608 <td class="left">http</td> 3601 3609 <td class="left">standard</td> 3602 <td class="left"> <a href="#header.accept-language" id="rfc.xref.header.accept-language.3" title="Accept-Language">Section 10.4</a>3610 <td class="left"> <a href="#header.accept-language" id="rfc.xref.header.accept-language.3" title="Accept-Language">Section 6.3.5</a> 3603 3611 </td> 3604 3612 </tr> … … 3607 3615 <td class="left">http</td> 3608 3616 <td class="left">standard</td> 3609 <td class="left"> <a href="#header.allow" id="rfc.xref.header.allow.3" title="Allow">Section 10.5</a>3617 <td class="left"> <a href="#header.allow" id="rfc.xref.header.allow.3" title="Allow">Section 8.4.1</a> 3610 3618 </td> 3611 3619 </tr> … … 3614 3622 <td class="left">http</td> 3615 3623 <td class="left">standard</td> 3616 <td class="left"> <a href="#header.content-encoding" id="rfc.xref.header.content-encoding.3" title="Content-Encoding">Section 10.6</a>3624 <td class="left"> <a href="#header.content-encoding" id="rfc.xref.header.content-encoding.3" title="Content-Encoding">Section 3.2.2</a> 3617 3625 </td> 3618 3626 </tr> … … 3621 3629 <td class="left">http</td> 3622 3630 <td class="left">standard</td> 3623 <td class="left"> <a href="#header.content-language" id="rfc.xref.header.content-language.2" title="Content-Language">Section 10.7</a>3631 <td class="left"> <a href="#header.content-language" id="rfc.xref.header.content-language.2" title="Content-Language">Section 3.2.3</a> 3624 3632 </td> 3625 3633 </tr> … … 3628 3636 <td class="left">http</td> 3629 3637 <td class="left">standard</td> 3630 <td class="left"> <a href="#header.content-location" id="rfc.xref.header.content-location.4" title="Content-Location">Section 10.8</a>3638 <td class="left"> <a href="#header.content-location" id="rfc.xref.header.content-location.4" title="Content-Location">Section 3.2.4</a> 3631 3639 </td> 3632 3640 </tr> … … 3635 3643 <td class="left">http</td> 3636 3644 <td class="left">standard</td> 3637 <td class="left"> <a href="#header.content-type" id="rfc.xref.header.content-type.5" title="Content-Type">Section 10.9</a>3645 <td class="left"> <a href="#header.content-type" id="rfc.xref.header.content-type.5" title="Content-Type">Section 3.2.1</a> 3638 3646 </td> 3639 3647 </tr> … … 3642 3650 <td class="left">http</td> 3643 3651 <td class="left">standard</td> 3644 <td class="left"> <a href="#header.date" id="rfc.xref.header.date.2" title="Date">Section 10.10</a>3652 <td class="left"> <a href="#header.date" id="rfc.xref.header.date.2" title="Date">Section 8.2.1</a> 3645 3653 </td> 3646 3654 </tr> … … 3649 3657 <td class="left">http</td> 3650 3658 <td class="left">standard</td> 3651 <td class="left"> <a href="#header.expect" id="rfc.xref.header.expect.3" title="Expect">Section 10.11</a>3659 <td class="left"> <a href="#header.expect" id="rfc.xref.header.expect.3" title="Expect">Section 6.1.2</a> 3652 3660 </td> 3653 3661 </tr> … … 3656 3664 <td class="left">http</td> 3657 3665 <td class="left">standard</td> 3658 <td class="left"> <a href="#header.from" id="rfc.xref.header.from.2" title="From">Section 10.12</a>3666 <td class="left"> <a href="#header.from" id="rfc.xref.header.from.2" title="From">Section 6.5.1</a> 3659 3667 </td> 3660 3668 </tr> … … 3663 3671 <td class="left">http</td> 3664 3672 <td class="left">standard</td> 3665 <td class="left"> <a href="#header.location" id="rfc.xref.header.location.4" title="Location">Section 10.13</a>3673 <td class="left"> <a href="#header.location" id="rfc.xref.header.location.4" title="Location">Section 8.1.1</a> 3666 3674 </td> 3667 3675 </tr> … … 3677 3685 <td class="left">http</td> 3678 3686 <td class="left">standard</td> 3679 <td class="left"> <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.4" title="Max-Forwards">Section 10.14</a>3687 <td class="left"> <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.4" title="Max-Forwards">Section 6.1.1</a> 3680 3688 </td> 3681 3689 </tr> … … 3684 3692 <td class="left">http</td> 3685 3693 <td class="left">standard</td> 3686 <td class="left"> <a href="#header.referer" id="rfc.xref.header.referer.2" title="Referer">Section 10.15</a>3694 <td class="left"> <a href="#header.referer" id="rfc.xref.header.referer.2" title="Referer">Section 6.5.2</a> 3687 3695 </td> 3688 3696 </tr> … … 3691 3699 <td class="left">http</td> 3692 3700 <td class="left">standard</td> 3693 <td class="left"> <a href="#header.retry-after" id="rfc.xref.header.retry-after.3" title="Retry-After">Section 10.16</a>3701 <td class="left"> <a href="#header.retry-after" id="rfc.xref.header.retry-after.3" title="Retry-After">Section 8.1.2</a> 3694 3702 </td> 3695 3703 </tr> … … 3698 3706 <td class="left">http</td> 3699 3707 <td class="left">standard</td> 3700 <td class="left"> <a href="#header.server" id="rfc.xref.header.server.2" title="Server">Section 10.17</a>3708 <td class="left"> <a href="#header.server" id="rfc.xref.header.server.2" title="Server">Section 8.4.2</a> 3701 3709 </td> 3702 3710 </tr> … … 3705 3713 <td class="left">http</td> 3706 3714 <td class="left">standard</td> 3707 <td class="left"> <a href="#header.user-agent" id="rfc.xref.header.user-agent.3" title="User-Agent">Section 10.18</a>3715 <td class="left"> <a href="#header.user-agent" id="rfc.xref.header.user-agent.3" title="User-Agent">Section 6.5.3</a> 3708 3716 </td> 3709 3717 </tr> … … 3711 3719 </table> 3712 3720 </div> 3713 <p id="rfc.section.1 1.3.2.p.2">The change controller for the above registrations is: "IETF (iesg@ietf.org) - Internet Engineering Task Force".</p>3714 <h2 id="rfc.section.1 1.4"><a href="#rfc.section.11.4">11.4</a> <a id="content.coding.registry" href="#content.coding.registry">Content Coding Registry</a></h2>3715 <p id="rfc.section.1 1.4.p.1">The HTTP Content Coding Registry defines the name space for content coding names (<a href="p1-messaging.html#compression.codings" title="Compression Codings">Section 4.2</a> of <a href="#Part1" id="rfc.xref.Part1.39"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>). The content coding registry is maintained at <<a href="http://www.iana.org/assignments/http-parameters">http://www.iana.org/assignments/http-parameters</a>>.3716 </p> 3717 <h3 id="rfc.section.1 1.4.1"><a href="#rfc.section.11.4.1">11.4.1</a> <a id="content.coding.procedure" href="#content.coding.procedure">Procedure</a></h3>3718 <p id="rfc.section.1 1.4.1.p.1">Content Coding registrations <em class="bcp14">MUST</em> include the following fields:3721 <p id="rfc.section.10.3.2.p.2">The change controller for the above registrations is: "IETF (iesg@ietf.org) - Internet Engineering Task Force".</p> 3722 <h2 id="rfc.section.10.4"><a href="#rfc.section.10.4">10.4</a> <a id="content.coding.registry" href="#content.coding.registry">Content Coding Registry</a></h2> 3723 <p id="rfc.section.10.4.p.1">The HTTP Content Coding Registry defines the name space for content coding names (<a href="p1-messaging.html#compression.codings" title="Compression Codings">Section 4.2</a> of <a href="#Part1" id="rfc.xref.Part1.39"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>). The content coding registry is maintained at <<a href="http://www.iana.org/assignments/http-parameters">http://www.iana.org/assignments/http-parameters</a>>. 3724 </p> 3725 <h3 id="rfc.section.10.4.1"><a href="#rfc.section.10.4.1">10.4.1</a> <a id="content.coding.procedure" href="#content.coding.procedure">Procedure</a></h3> 3726 <p id="rfc.section.10.4.1.p.1">Content Coding registrations <em class="bcp14">MUST</em> include the following fields: 3719 3727 </p> 3720 3728 <ul> … … 3723 3731 <li>Pointer to specification text</li> 3724 3732 </ul> 3725 <p id="rfc.section.1 1.4.1.p.2">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: Message Routing and Syntax"">[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: Message Routing and Syntax"">[Part1]</cite></a>).3726 </p> 3727 <p id="rfc.section.1 1.4.1.p.3">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.3728 </p> 3729 <h3 id="rfc.section.1 1.4.2"><a href="#rfc.section.11.4.2">11.4.2</a> <a id="content.coding.registration" href="#content.coding.registration">Registrations</a></h3>3730 <p id="rfc.section.1 1.4.2.p.1">The HTTP Content Codings Registry shall be updated with the registrations below:</p>3733 <p id="rfc.section.10.4.1.p.2">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: Message Routing and Syntax"">[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: Message Routing and Syntax"">[Part1]</cite></a>). 3734 </p> 3735 <p id="rfc.section.10.4.1.p.3">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. 3736 </p> 3737 <h3 id="rfc.section.10.4.2"><a href="#rfc.section.10.4.2">10.4.2</a> <a id="content.coding.registration" href="#content.coding.registration">Registrations</a></h3> 3738 <p id="rfc.section.10.4.2.p.1">The HTTP Content Codings Registry shall be updated with the registrations below:</p> 3731 3739 <div id="rfc.table.5"> 3732 3740 <div id="iana.content.coding.registration.table"></div> … … 3763 3771 <td class="left">reserved (synonym for "no encoding" in <a href="#header.accept-encoding" class="smpl">Accept-Encoding</a> header field) 3764 3772 </td> 3765 <td class="left"> <a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.5" title="Accept-Encoding">Section 10.3</a>3773 <td class="left"> <a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.5" title="Accept-Encoding">Section 6.3.4</a> 3766 3774 </td> 3767 3775 </tr> … … 3769 3777 </table> 3770 3778 </div> 3771 <h1 id="rfc.section.1 2"><a href="#rfc.section.12">12.</a> <a id="security.considerations" href="#security.considerations">Security Considerations</a></h1>3772 <p id="rfc.section.1 2.p.1">This section is meant to inform application developers, information providers, and users of the security limitations in HTTP/1.13779 <h1 id="rfc.section.11"><a href="#rfc.section.11">11.</a> <a id="security.considerations" href="#security.considerations">Security Considerations</a></h1> 3780 <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 3773 3781 as described by this document. The discussion does not include definitive solutions to the problems revealed, though it does 3774 3782 make some suggestions for reducing security risks. 3775 3783 </p> 3776 <h2 id="rfc.section.1 2.1"><a href="#rfc.section.12.1">12.1</a> <a id="security.sensitive" href="#security.sensitive">Transfer of Sensitive Information</a></h2>3777 <p id="rfc.section.1 2.1.p.1">Like any generic data transfer protocol, HTTP cannot regulate the content of the data that is transferred, nor is there any3784 <h2 id="rfc.section.11.1"><a href="#rfc.section.11.1">11.1</a> <a id="security.sensitive" href="#security.sensitive">Transfer of Sensitive Information</a></h2> 3785 <p id="rfc.section.11.1.p.1">Like any generic data transfer protocol, HTTP cannot regulate the content of the data that is transferred, nor is there any 3778 3786 a priori method of determining the sensitivity of any particular piece of information within the context of any given request. 3779 3787 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 3780 3788 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>. 3781 3789 </p> 3782 <p id="rfc.section.1 2.1.p.2">Revealing the specific software version of the server might allow the server machine to become more vulnerable to attacks3790 <p id="rfc.section.11.1.p.2">Revealing the specific software version of the server might allow the server machine to become more vulnerable to attacks 3783 3791 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. 3784 3792 </p> 3785 <p id="rfc.section.1 2.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,3793 <p id="rfc.section.11.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, 3786 3794 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. 3787 3795 </p> 3788 <p id="rfc.section.1 2.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 can3796 <p id="rfc.section.11.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 3789 3797 be abused if user details are not separated from the information contained in the Referer. Even when the personal information 3790 3798 has been removed, the Referer header field might indicate a private document's URI whose publication would be inappropriate. 3791 3799 </p> 3792 <p id="rfc.section.1 2.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.3793 </p> 3794 <p id="rfc.section.1 2.1.p.6">We suggest, though do not require, that a convenient toggle interface be provided for the user to enable or disable the sending3800 <p id="rfc.section.11.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. 3801 </p> 3802 <p id="rfc.section.11.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 3795 3803 of <a href="#header.from" class="smpl">From</a> and <a href="#header.referer" class="smpl">Referer</a> information. 3796 3804 </p> 3797 <p id="rfc.section.1 2.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 10.18</a>) or <a href="#header.server" class="smpl">Server</a> (<a href="#header.server" id="rfc.xref.header.server.3" title="Server">Section 10.17</a>) header fields can sometimes be used to determine that a specific client or server has a particular security hole which might3805 <p id="rfc.section.11.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 6.5.3</a>) or <a href="#header.server" class="smpl">Server</a> (<a href="#header.server" id="rfc.xref.header.server.3" title="Server">Section 8.4.2</a>) header fields can sometimes be used to determine that a specific client or server has a particular security hole which might 3798 3806 be exploited. Unfortunately, this same information is often used for other valuable purposes for which HTTP currently has 3799 3807 no better mechanism. 3800 3808 </p> 3801 <p id="rfc.section.1 2.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 the3809 <p id="rfc.section.11.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 3802 3810 user. 3803 3811 </p> 3804 <p id="rfc.section.1 2.1.p.9">Some request methods, like TRACE (<a href="#TRACE" id="rfc.xref.TRACE.4" title="TRACE">Section 5.3.8</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 used3812 <p id="rfc.section.11.1.p.9">Some request methods, like TRACE (<a href="#TRACE" id="rfc.xref.TRACE.4" title="TRACE">Section 5.3.8</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 3805 3813 to collect data from the client. 3806 3814 </p> 3807 <h2 id="rfc.section.1 2.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>3808 <p id="rfc.section.1 2.2.p.1">Because the source of a link might be private information or might reveal an otherwise private information source, it is strongly3815 <h2 id="rfc.section.11.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> 3816 <p id="rfc.section.11.2.p.1">Because the source of a link might be private information or might reveal an otherwise private information source, it is strongly 3809 3817 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 3810 3818 enable/disable the sending of Referer and From information. 3811 3819 </p> 3812 <p id="rfc.section.1 2.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.3813 </p> 3814 <p id="rfc.section.1 2.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 existing3820 <p id="rfc.section.11.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. 3821 </p> 3822 <p id="rfc.section.11.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 3815 3823 servers, proxies, and user agents log or display the request-target in places where it might be visible to third parties. 3816 3824 Such services can use POST-based form submission instead. 3817 3825 </p> 3818 <h2 id="rfc.section.1 2.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>3819 <p id="rfc.section.1 2.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 to3826 <h2 id="rfc.section.11.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> 3827 <p id="rfc.section.11.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 3820 3828 invalidate resources over which they have no authority. 3821 3829 </p> 3822 <p id="rfc.section.1 2.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 transmitted3830 <p id="rfc.section.11.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 3823 3831 in the final request, it might be visible to the user agent through other means, such as scripting. 3824 3832 </p> 3825 <h2 id="rfc.section.1 2.4"><a href="#rfc.section.12.4">12.4</a> Security Considerations for CONNECT3833 <h2 id="rfc.section.11.4"><a href="#rfc.section.11.4">11.4</a> Security Considerations for CONNECT 3826 3834 </h2> 3827 <p id="rfc.section.1 2.4.p.1">Since tunneled data is opaque to the proxy, there are additional risks to tunneling to other well-known or reserved ports.3835 <p id="rfc.section.11.4.p.1">Since tunneled data is opaque to the proxy, there are additional risks to tunneling to other well-known or reserved ports. 3828 3836 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. 3829 3837 </p> 3830 <h2 id="rfc.section.1 2.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>3831 <p id="rfc.section.1 2.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 understanding3838 <h2 id="rfc.section.11.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> 3839 <p id="rfc.section.11.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 3832 3840 of particular languages is often strongly correlated to the membership of a particular ethnic group. User agents which offer 3833 3841 the option to configure the contents of an Accept-Language header field to be sent in every request are strongly encouraged 3834 3842 to let the configuration process include a message which makes the user aware of the loss of privacy involved. 3835 3843 </p> 3836 <p id="rfc.section.1 2.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 fields3844 <p id="rfc.section.11.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 3837 3845 by default, and to ask the user whether or not to start sending Accept-Language header fields to a server if it detects, by 3838 3846 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. 3839 3847 </p> 3840 <p id="rfc.section.1 2.5.p.3">Elaborate user-customized accept header fields sent in every request, in particular if these include quality values, can be3848 <p id="rfc.section.11.5.p.3">Elaborate user-customized accept header fields sent in every request, in particular if these include quality values, can be 3841 3849 used by servers as relatively reliable and long-lived user identifiers. Such user identifiers would allow content providers 3842 3850 to do click-trail tracking, and would allow collaborating content providers to match cross-server click-trails or form submissions … … 3847 3855 field configurability <em class="bcp14">SHOULD</em> warn users about the loss of privacy which can be involved. 3848 3856 </p> 3849 <h1 id="rfc.section.1 3"><a href="#rfc.section.13">13.</a> <a id="acks" href="#acks">Acknowledgments</a></h1>3850 <p id="rfc.section.1 3.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 9</a> of <a href="#Part1" id="rfc.xref.Part1.45"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>.3851 </p> 3852 <h1 id="rfc.references"><a id="rfc.section.1 4" href="#rfc.section.14">14.</a> References3857 <h1 id="rfc.section.12"><a href="#rfc.section.12">12.</a> <a id="acks" href="#acks">Acknowledgments</a></h1> 3858 <p id="rfc.section.12.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 9</a> of <a href="#Part1" id="rfc.xref.Part1.45"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. 3859 </p> 3860 <h1 id="rfc.references"><a id="rfc.section.13" href="#rfc.section.13">13.</a> References 3853 3861 </h1> 3854 <h2 id="rfc.references.1"><a href="#rfc.section.1 4.1" id="rfc.section.14.1">14.1</a> Normative References3862 <h2 id="rfc.references.1"><a href="#rfc.section.13.1" id="rfc.section.13.1">13.1</a> Normative References 3855 3863 </h2> 3856 3864 <table> … … 3931 3939 </tr> 3932 3940 </table> 3933 <h2 id="rfc.references.2"><a href="#rfc.section.1 4.2" id="rfc.section.14.2">14.2</a> Informative References3941 <h2 id="rfc.references.2"><a href="#rfc.section.13.2" id="rfc.section.13.2">13.2</a> Informative References 3934 3942 </h2> 3935 3943 <table> … … 4122 4130 </p> 4123 4131 <h1 id="rfc.section.C"><a href="#rfc.section.C">C.</a> <a id="changes.from.rfc.2616" href="#changes.from.rfc.2616">Changes from RFC 2616</a></h1> 4124 <p id="rfc.section.C.p.1">Introduce Method Registry. (<a href="#method.registry" title="Method Registry">Section 1 1.1</a>)4132 <p id="rfc.section.C.p.1">Introduce Method Registry. (<a href="#method.registry" title="Method Registry">Section 10.1</a>) 4125 4133 </p> 4126 4134 <p id="rfc.section.C.p.2">Clarify definition of POST. (<a href="#POST" id="rfc.xref.POST.3" title="POST">Section 5.3.3</a>) … … 4130 4138 <p id="rfc.section.C.p.4">Take over definition of CONNECT method from <a href="#RFC2817" id="rfc.xref.RFC2817.2"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>. (<a href="#CONNECT" id="rfc.xref.CONNECT.3" title="CONNECT">Section 5.3.6</a>) 4131 4139 </p> 4132 <p id="rfc.section.C.p.5">Take over the Status Code Registry, previously defined in <a href="http://tools.ietf.org/html/rfc2817#section-7.1">Section 7.1</a> of <a href="#RFC2817" id="rfc.xref.RFC2817.3"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>. (<a href="#status.code.registry" title="Status Code Registry">Section 1 1.2</a>)4140 <p id="rfc.section.C.p.5">Take over the Status Code Registry, previously defined in <a href="http://tools.ietf.org/html/rfc2817#section-7.1">Section 7.1</a> of <a href="#RFC2817" id="rfc.xref.RFC2817.3"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>. (<a href="#status.code.registry" title="Status Code Registry">Section 10.2</a>) 4133 4141 </p> 4134 4142 <p id="rfc.section.C.p.6">Broadened the definition of <a href="#status.203" class="smpl">203 (Non-Authoritative Information)</a> to include cases of payload transformations as well. (<a href="#status.203" id="rfc.xref.status.203.3" title="203 Non-Authoritative Information">Section 7.3.4</a>) … … 4146 4154 <p id="rfc.section.C.p.10">Define status <a href="#status.426" class="smpl">426 (Upgrade Required)</a> (this was incorporated from <a href="#RFC2817" id="rfc.xref.RFC2817.4"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>). (<a href="#status.426" id="rfc.xref.status.426.3" title="426 Upgrade Required">Section 7.5.15</a>) 4147 4155 </p> 4148 <p id="rfc.section.C.p.11">Change ABNF productions for header fields to only define the field value. (<a href="#header.field.definitions" title="Header Field Definitions">Section 10</a>) 4149 </p> 4156 <p id="rfc.section.C.p.11">Change ABNF productions for header fields to only define the field value.</p> 4150 4157 <p id="rfc.section.C.p.12">Reclassify "<a href="#header.allow" class="smpl">Allow</a>" as response header field, removing the option to specify it in a PUT request. Relax the server requirement on the contents 4151 of the Allow header field and remove requirement on clients to always trust the header field value. (<a href="#header.allow" id="rfc.xref.header.allow.4" title="Allow">Section 10.5</a>)4158 of the Allow header field and remove requirement on clients to always trust the header field value. (<a href="#header.allow" id="rfc.xref.header.allow.4" title="Allow">Section 8.4.1</a>) 4152 4159 </p> 4153 4160 <p id="rfc.section.C.p.13">The ABNF for the <a href="#header.expect" class="smpl">Expect</a> header field has been both fixed (allowing parameters for value-less expectations as well) and simplified (allowing trailing 4154 semicolons after "100-continue" when they were invalid before). (<a href="#header.expect" id="rfc.xref.header.expect.4" title="Expect">Section 10.11</a>)4161 semicolons after "100-continue" when they were invalid before). (<a href="#header.expect" id="rfc.xref.header.expect.4" title="Expect">Section 6.1.2</a>) 4155 4162 </p> 4156 4163 <p id="rfc.section.C.p.14">Correct syntax of <a href="#header.location" class="smpl">Location</a> header field to allow URI references (including relative references and fragments), as referred symbol "absoluteURI" wasn't 4157 what was expected, and add some clarifications as to when use of fragments would not be appropriate. (<a href="#header.location" id="rfc.xref.header.location.5" title="Location">Section 10.13</a>)4158 </p> 4159 <p id="rfc.section.C.p.15">Restrict <a href="#header.max-forwards" class="smpl">Max-Forwards</a> header field to OPTIONS and TRACE (previously, extension methods could have used it as well). (<a href="#header.max-forwards" id="rfc.xref.header.max-forwards.5" title="Max-Forwards">Section 10.14</a>)4160 </p> 4161 <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 10.15</a>)4162 </p> 4163 <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 5.7</a> of <a href="#Part1" id="rfc.xref.Part1.46"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. (<a href="#header.server" id="rfc.xref.header.server.4" title="Server">Section 10.17</a>)4164 what was expected, and add some clarifications as to when use of fragments would not be appropriate. (<a href="#header.location" id="rfc.xref.header.location.5" title="Location">Section 8.1.1</a>) 4165 </p> 4166 <p id="rfc.section.C.p.15">Restrict <a href="#header.max-forwards" class="smpl">Max-Forwards</a> header field to OPTIONS and TRACE (previously, extension methods could have used it as well). (<a href="#header.max-forwards" id="rfc.xref.header.max-forwards.5" title="Max-Forwards">Section 6.1.1</a>) 4167 </p> 4168 <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 6.5.2</a>) 4169 </p> 4170 <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 5.7</a> of <a href="#Part1" id="rfc.xref.Part1.46"><cite title="HTTP/1.1, part 1: Message Routing and Syntax"">[Part1]</cite></a>. (<a href="#header.server" id="rfc.xref.header.server.4" title="Server">Section 8.4.2</a>) 4164 4171 </p> 4165 4172 <p id="rfc.section.C.p.18">Clarify contexts that charset is used in. (<a href="#character.sets" title="Character Encodings (charset)">Section 9.3</a>) 4166 4173 </p> 4167 <p id="rfc.section.C.p.19">Registration of Content Codings now requires IETF Review (<a href="#content.coding.registry" title="Content Coding Registry">Section 1 1.4</a>)4174 <p id="rfc.section.C.p.19">Registration of Content Codings now requires IETF Review (<a href="#content.coding.registry" title="Content Coding Registry">Section 10.4</a>) 4168 4175 </p> 4169 4176 <p id="rfc.section.C.p.20">Remove the default character encoding of "ISO-8859-1" for text media types; the default now is whatever the media type definition 4170 4177 says. (<a href="#canonicalization.and.text.defaults" title="Canonicalization and Text Defaults">Section 9.5.1</a>) 4171 4178 </p> 4172 <p id="rfc.section.C.p.21">Change ABNF productions for header fields to only define the field value. (<a href="#header.field.definitions" title="Header Field Definitions">Section 10</a>) 4173 </p> 4179 <p id="rfc.section.C.p.21">Change ABNF productions for header fields to only define the field value.</p> 4174 4180 <p id="rfc.section.C.p.22">Remove definition of Content-MD5 header field because it was inconsistently implemented with respect to partial responses, 4175 and also because of known deficiencies in the hash algorithm itself (see <a href="#RFC6151" id="rfc.xref.RFC6151.1"><cite title="Updated Security Considerations for the MD5 Message-Digest and the HMAC-MD5 Algorithms">[RFC6151]</cite></a> for details). (<a href="#header.field.definitions" title="Header Field Definitions">Section 10</a>)4176 </p> 4177 <p id="rfc.section.C.p.23">Remove ISO-8859-1 special-casing in <a href="#header.accept-charset" class="smpl">Accept-Charset</a>. (<a href="#header.accept-charset" id="rfc.xref.header.accept-charset.4" title="Accept-Charset">Section 10.2</a>)4181 and also because of known deficiencies in the hash algorithm itself (see <a href="#RFC6151" id="rfc.xref.RFC6151.1"><cite title="Updated Security Considerations for the MD5 Message-Digest and the HMAC-MD5 Algorithms">[RFC6151]</cite></a> for details). 4182 </p> 4183 <p id="rfc.section.C.p.23">Remove ISO-8859-1 special-casing in <a href="#header.accept-charset" class="smpl">Accept-Charset</a>. (<a href="#header.accept-charset" id="rfc.xref.header.accept-charset.4" title="Accept-Charset">Section 6.3.3</a>) 4178 4184 </p> 4179 4185 <p id="rfc.section.C.p.24">Remove base URI setting semantics for <a href="#header.content-location" class="smpl">Content-Location</a> due to poor implementation support, which was caused by too many broken servers emitting bogus Content-Location header fields, 4180 and also the potentially undesirable effect of potentially breaking relative links in content-negotiated resources. (<a href="#header.content-location" id="rfc.xref.header.content-location.5" title="Content-Location">Section 10.8</a>)4186 and also the potentially undesirable effect of potentially breaking relative links in content-negotiated resources. (<a href="#header.content-location" id="rfc.xref.header.content-location.5" title="Content-Location">Section 3.2.4</a>) 4181 4187 </p> 4182 4188 <p id="rfc.section.C.p.25">Remove reference to non-existant identity transfer-coding value tokens. (<a href="#no.content-transfer-encoding" id="rfc.xref.no.content-transfer-encoding.1" title="No Content-Transfer-Encoding">Appendix A.5</a>) … … 4907 4913 <ul class="ind"> 4908 4914 <li><a id="rfc.index.1" href="#rfc.index.1"><b>1</b></a><ul> 4909 <li>100 Continue (status code) <a href="#rfc.xref.status.100.1">7.1</a>, <a href="#rfc.iref. 27"><b>7.2.1</b></a>, <a href="#rfc.xref.status.100.2">11.2.3</a></li>4910 <li>100-continue (expect value) <a href="#rfc.iref. 142"><b>10.11</b></a></li>4911 <li>101 Switching Protocols (status code) <a href="#rfc.xref.status.101.1">7.1</a>, <a href="#rfc.iref. 28"><b>7.2.2</b></a>, <a href="#rfc.xref.status.101.2">11.2.3</a></li>4912 <li>1xx Informational (status code class) <a href="#rfc.iref. 26"><b>7.2</b></a></li>4915 <li>100 Continue (status code) <a href="#rfc.xref.status.100.1">7.1</a>, <a href="#rfc.iref.76"><b>7.2.1</b></a>, <a href="#rfc.xref.status.100.2">10.2.3</a></li> 4916 <li>100-continue (expect value) <a href="#rfc.iref.46"><b>6.1.2</b></a></li> 4917 <li>101 Switching Protocols (status code) <a href="#rfc.xref.status.101.1">7.1</a>, <a href="#rfc.iref.77"><b>7.2.2</b></a>, <a href="#rfc.xref.status.101.2">10.2.3</a></li> 4918 <li>1xx Informational (status code class) <a href="#rfc.iref.75"><b>7.2</b></a></li> 4913 4919 </ul> 4914 4920 </li> 4915 4921 <li><a id="rfc.index.2" href="#rfc.index.2"><b>2</b></a><ul> 4916 <li>200 OK (status code) <a href="#rfc.xref.status.200.1">7.1</a>, <a href="#rfc.iref. 30"><b>7.3.1</b></a>, <a href="#rfc.xref.status.200.2">11.2.3</a></li>4917 <li>201 Created (status code) <a href="#rfc.xref.status.201.1">7.1</a>, <a href="#rfc.iref. 31"><b>7.3.2</b></a>, <a href="#rfc.xref.status.201.2">11.2.3</a></li>4918 <li>202 Accepted (status code) <a href="#rfc.xref.status.202.1">7.1</a>, <a href="#rfc.iref. 32"><b>7.3.3</b></a>, <a href="#rfc.xref.status.202.2">11.2.3</a></li>4919 <li>203 Non-Authoritative Information (status code) <a href="#rfc.xref.status.203.1">7.1</a>, <a href="#rfc.iref. 33"><b>7.3.4</b></a>, <a href="#rfc.xref.status.203.2">11.2.3</a>, <a href="#rfc.xref.status.203.3">C</a></li>4920 <li>204 No Content (status code) <a href="#rfc.xref.status.204.1">7.1</a>, <a href="#rfc.iref. 34"><b>7.3.5</b></a>, <a href="#rfc.xref.status.204.2">11.2.3</a></li>4921 <li>205 Reset Content (status code) <a href="#rfc.xref.status.205.1">7.1</a>, <a href="#rfc.iref. 35"><b>7.3.6</b></a>, <a href="#rfc.xref.status.205.2">11.2.3</a></li>4922 <li>2xx Successful (status code class) <a href="#rfc.iref. 29"><b>7.3</b></a></li>4922 <li>200 OK (status code) <a href="#rfc.xref.status.200.1">7.1</a>, <a href="#rfc.iref.79"><b>7.3.1</b></a>, <a href="#rfc.xref.status.200.2">10.2.3</a></li> 4923 <li>201 Created (status code) <a href="#rfc.xref.status.201.1">7.1</a>, <a href="#rfc.iref.80"><b>7.3.2</b></a>, <a href="#rfc.xref.status.201.2">10.2.3</a></li> 4924 <li>202 Accepted (status code) <a href="#rfc.xref.status.202.1">7.1</a>, <a href="#rfc.iref.81"><b>7.3.3</b></a>, <a href="#rfc.xref.status.202.2">10.2.3</a></li> 4925 <li>203 Non-Authoritative Information (status code) <a href="#rfc.xref.status.203.1">7.1</a>, <a href="#rfc.iref.82"><b>7.3.4</b></a>, <a href="#rfc.xref.status.203.2">10.2.3</a>, <a href="#rfc.xref.status.203.3">C</a></li> 4926 <li>204 No Content (status code) <a href="#rfc.xref.status.204.1">7.1</a>, <a href="#rfc.iref.83"><b>7.3.5</b></a>, <a href="#rfc.xref.status.204.2">10.2.3</a></li> 4927 <li>205 Reset Content (status code) <a href="#rfc.xref.status.205.1">7.1</a>, <a href="#rfc.iref.84"><b>7.3.6</b></a>, <a href="#rfc.xref.status.205.2">10.2.3</a></li> 4928 <li>2xx Successful (status code class) <a href="#rfc.iref.78"><b>7.3</b></a></li> 4923 4929 </ul> 4924 4930 </li> 4925 4931 <li><a id="rfc.index.3" href="#rfc.index.3"><b>3</b></a><ul> 4926 <li>300 Multiple Choices (status code) <a href="#rfc.xref.status.300.1">7.1</a>, <a href="#rfc.iref. 37"><b>7.4.1</b></a>, <a href="#rfc.xref.status.300.2">11.2.3</a></li>4927 <li>301 Moved Permanently (status code) <a href="#rfc.xref.status.301.1">7.1</a>, <a href="#rfc.iref. 38"><b>7.4.2</b></a>, <a href="#rfc.xref.status.301.2">11.2.3</a>, <a href="#rfc.xref.status.301.3">C</a></li>4928 <li>302 Found (status code) <a href="#rfc.xref.status.302.1">7.1</a>, <a href="#rfc.iref. 39"><b>7.4.3</b></a>, <a href="#rfc.xref.status.302.2">11.2.3</a>, <a href="#rfc.xref.status.302.3">C</a></li>4929 <li>303 See Other (status code) <a href="#rfc.xref.status.303.1">7.1</a>, <a href="#rfc.iref. 40"><b>7.4.4</b></a>, <a href="#rfc.xref.status.303.2">11.2.3</a></li>4930 <li>305 Use Proxy (status code) <a href="#rfc.xref.status.305.1">7.1</a>, <a href="#rfc.iref. 41"><b>7.4.5</b></a>, <a href="#rfc.xref.status.305.2">11.2.3</a>, <a href="#rfc.xref.status.305.3">C</a></li>4931 <li>306 (Unused) (status code) <a href="#rfc.iref. 42"><b>7.4.6</b></a>, <a href="#rfc.xref.status.306.1">11.2.3</a></li>4932 <li>307 Temporary Redirect (status code) <a href="#rfc.xref.status.307.1">7.1</a>, <a href="#rfc.iref. 43"><b>7.4.7</b></a>, <a href="#rfc.xref.status.307.2">11.2.3</a>, <a href="#rfc.xref.status.307.3">C</a></li>4933 <li>3xx Redirection (status code class) <a href="#rfc.iref. 36"><b>7.4</b></a>, <a href="#rfc.xref.status.3xx.1">C</a></li>4932 <li>300 Multiple Choices (status code) <a href="#rfc.xref.status.300.1">7.1</a>, <a href="#rfc.iref.86"><b>7.4.1</b></a>, <a href="#rfc.xref.status.300.2">10.2.3</a></li> 4933 <li>301 Moved Permanently (status code) <a href="#rfc.xref.status.301.1">7.1</a>, <a href="#rfc.iref.87"><b>7.4.2</b></a>, <a href="#rfc.xref.status.301.2">10.2.3</a>, <a href="#rfc.xref.status.301.3">C</a></li> 4934 <li>302 Found (status code) <a href="#rfc.xref.status.302.1">7.1</a>, <a href="#rfc.iref.88"><b>7.4.3</b></a>, <a href="#rfc.xref.status.302.2">10.2.3</a>, <a href="#rfc.xref.status.302.3">C</a></li> 4935 <li>303 See Other (status code) <a href="#rfc.xref.status.303.1">7.1</a>, <a href="#rfc.iref.89"><b>7.4.4</b></a>, <a href="#rfc.xref.status.303.2">10.2.3</a></li> 4936 <li>305 Use Proxy (status code) <a href="#rfc.xref.status.305.1">7.1</a>, <a href="#rfc.iref.90"><b>7.4.5</b></a>, <a href="#rfc.xref.status.305.2">10.2.3</a>, <a href="#rfc.xref.status.305.3">C</a></li> 4937 <li>306 (Unused) (status code) <a href="#rfc.iref.91"><b>7.4.6</b></a>, <a href="#rfc.xref.status.306.1">10.2.3</a></li> 4938 <li>307 Temporary Redirect (status code) <a href="#rfc.xref.status.307.1">7.1</a>, <a href="#rfc.iref.92"><b>7.4.7</b></a>, <a href="#rfc.xref.status.307.2">10.2.3</a>, <a href="#rfc.xref.status.307.3">C</a></li> 4939 <li>3xx Redirection (status code class) <a href="#rfc.iref.85"><b>7.4</b></a>, <a href="#rfc.xref.status.3xx.1">C</a></li> 4934 4940 </ul> 4935 4941 </li> 4936 4942 <li><a id="rfc.index.4" href="#rfc.index.4"><b>4</b></a><ul> 4937 <li>400 Bad Request (status code) <a href="#rfc.xref.status.400.1">7.1</a>, <a href="#rfc.iref. 45"><b>7.5.1</b></a>, <a href="#rfc.xref.status.400.2">11.2.3</a></li>4938 <li>402 Payment Required (status code) <a href="#rfc.xref.status.402.1">7.1</a>, <a href="#rfc.iref. 46"><b>7.5.2</b></a>, <a href="#rfc.xref.status.402.2">11.2.3</a></li>4939 <li>403 Forbidden (status code) <a href="#rfc.xref.status.403.1">7.1</a>, <a href="#rfc.iref. 47"><b>7.5.3</b></a>, <a href="#rfc.xref.status.403.2">11.2.3</a></li>4940 <li>404 Not Found (status code) <a href="#rfc.xref.status.404.1">7.1</a>, <a href="#rfc.iref. 48"><b>7.5.4</b></a>, <a href="#rfc.xref.status.404.2">11.2.3</a></li>4941 <li>405 Method Not Allowed (status code) <a href="#rfc.xref.status.405.1">7.1</a>, <a href="#rfc.iref. 49"><b>7.5.5</b></a>, <a href="#rfc.xref.status.405.2">11.2.3</a></li>4942 <li>406 Not Acceptable (status code) <a href="#rfc.xref.status.406.1">7.1</a>, <a href="#rfc.iref. 50"><b>7.5.6</b></a>, <a href="#rfc.xref.status.406.2">11.2.3</a></li>4943 <li>408 Request Timeout (status code) <a href="#rfc.xref.status.408.1">7.1</a>, <a href="#rfc.iref. 51"><b>7.5.7</b></a>, <a href="#rfc.xref.status.408.2">11.2.3</a></li>4944 <li>409 Conflict (status code) <a href="#rfc.xref.status.409.1">7.1</a>, <a href="#rfc.iref. 52"><b>7.5.8</b></a>, <a href="#rfc.xref.status.409.2">11.2.3</a></li>4945 <li>410 Gone (status code) <a href="#rfc.xref.status.410.1">7.1</a>, <a href="#rfc.iref. 53"><b>7.5.9</b></a>, <a href="#rfc.xref.status.410.2">11.2.3</a></li>4946 <li>411 Length Required (status code) <a href="#rfc.xref.status.411.1">7.1</a>, <a href="#rfc.iref. 54"><b>7.5.10</b></a>, <a href="#rfc.xref.status.411.2">11.2.3</a></li>4947 <li>413 Request Representation Too Large (status code) <a href="#rfc.xref.status.413.1">7.1</a>, <a href="#rfc.iref. 55"><b>7.5.11</b></a>, <a href="#rfc.xref.status.413.2">11.2.3</a></li>4948 <li>414 URI Too Long (status code) <a href="#rfc.xref.status.414.1">7.1</a>, <a href="#rfc.iref. 56"><b>7.5.12</b></a>, <a href="#rfc.xref.status.414.2">11.2.3</a></li>4949 <li>415 Unsupported Media Type (status code) <a href="#rfc.xref.status.415.1">7.1</a>, <a href="#rfc.iref. 57"><b>7.5.13</b></a>, <a href="#rfc.xref.status.415.2">11.2.3</a></li>4950 <li>417 Expectation Failed (status code) <a href="#rfc.xref.status.417.1">7.1</a>, <a href="#rfc.iref. 58"><b>7.5.14</b></a>, <a href="#rfc.xref.status.417.2">11.2.3</a></li>4951 <li>426 Upgrade Required (status code) <a href="#rfc.xref.status.426.1">7.1</a>, <a href="#rfc.iref. 59"><b>7.5.15</b></a>, <a href="#rfc.xref.status.426.2">11.2.3</a>, <a href="#rfc.xref.status.426.3">C</a></li>4952 <li>4xx Client Error (status code class) <a href="#rfc.iref. 44"><b>7.5</b></a></li>4943 <li>400 Bad Request (status code) <a href="#rfc.xref.status.400.1">7.1</a>, <a href="#rfc.iref.94"><b>7.5.1</b></a>, <a href="#rfc.xref.status.400.2">10.2.3</a></li> 4944 <li>402 Payment Required (status code) <a href="#rfc.xref.status.402.1">7.1</a>, <a href="#rfc.iref.95"><b>7.5.2</b></a>, <a href="#rfc.xref.status.402.2">10.2.3</a></li> 4945 <li>403 Forbidden (status code) <a href="#rfc.xref.status.403.1">7.1</a>, <a href="#rfc.iref.96"><b>7.5.3</b></a>, <a href="#rfc.xref.status.403.2">10.2.3</a></li> 4946 <li>404 Not Found (status code) <a href="#rfc.xref.status.404.1">7.1</a>, <a href="#rfc.iref.97"><b>7.5.4</b></a>, <a href="#rfc.xref.status.404.2">10.2.3</a></li> 4947 <li>405 Method Not Allowed (status code) <a href="#rfc.xref.status.405.1">7.1</a>, <a href="#rfc.iref.98"><b>7.5.5</b></a>, <a href="#rfc.xref.status.405.2">10.2.3</a></li> 4948 <li>406 Not Acceptable (status code) <a href="#rfc.xref.status.406.1">7.1</a>, <a href="#rfc.iref.99"><b>7.5.6</b></a>, <a href="#rfc.xref.status.406.2">10.2.3</a></li> 4949 <li>408 Request Timeout (status code) <a href="#rfc.xref.status.408.1">7.1</a>, <a href="#rfc.iref.100"><b>7.5.7</b></a>, <a href="#rfc.xref.status.408.2">10.2.3</a></li> 4950 <li>409 Conflict (status code) <a href="#rfc.xref.status.409.1">7.1</a>, <a href="#rfc.iref.101"><b>7.5.8</b></a>, <a href="#rfc.xref.status.409.2">10.2.3</a></li> 4951 <li>410 Gone (status code) <a href="#rfc.xref.status.410.1">7.1</a>, <a href="#rfc.iref.102"><b>7.5.9</b></a>, <a href="#rfc.xref.status.410.2">10.2.3</a></li> 4952 <li>411 Length Required (status code) <a href="#rfc.xref.status.411.1">7.1</a>, <a href="#rfc.iref.103"><b>7.5.10</b></a>, <a href="#rfc.xref.status.411.2">10.2.3</a></li> 4953 <li>413 Request Representation Too Large (status code) <a href="#rfc.xref.status.413.1">7.1</a>, <a href="#rfc.iref.104"><b>7.5.11</b></a>, <a href="#rfc.xref.status.413.2">10.2.3</a></li> 4954 <li>414 URI Too Long (status code) <a href="#rfc.xref.status.414.1">7.1</a>, <a href="#rfc.iref.105"><b>7.5.12</b></a>, <a href="#rfc.xref.status.414.2">10.2.3</a></li> 4955 <li>415 Unsupported Media Type (status code) <a href="#rfc.xref.status.415.1">7.1</a>, <a href="#rfc.iref.106"><b>7.5.13</b></a>, <a href="#rfc.xref.status.415.2">10.2.3</a></li> 4956 <li>417 Expectation Failed (status code) <a href="#rfc.xref.status.417.1">7.1</a>, <a href="#rfc.iref.107"><b>7.5.14</b></a>, <a href="#rfc.xref.status.417.2">10.2.3</a></li> 4957 <li>426 Upgrade Required (status code) <a href="#rfc.xref.status.426.1">7.1</a>, <a href="#rfc.iref.108"><b>7.5.15</b></a>, <a href="#rfc.xref.status.426.2">10.2.3</a>, <a href="#rfc.xref.status.426.3">C</a></li> 4958 <li>4xx Client Error (status code class) <a href="#rfc.iref.93"><b>7.5</b></a></li> 4953 4959 </ul> 4954 4960 </li> 4955 4961 <li><a id="rfc.index.5" href="#rfc.index.5"><b>5</b></a><ul> 4956 <li>500 Internal Server Error (status code) <a href="#rfc.xref.status.500.1">7.1</a>, <a href="#rfc.iref. 61"><b>7.6.1</b></a>, <a href="#rfc.xref.status.500.2">11.2.3</a></li>4957 <li>501 Not Implemented (status code) <a href="#rfc.xref.status.501.1">7.1</a>, <a href="#rfc.iref. 62"><b>7.6.2</b></a>, <a href="#rfc.xref.status.501.2">11.2.3</a></li>4958 <li>502 Bad Gateway (status code) <a href="#rfc.xref.status.502.1">7.1</a>, <a href="#rfc.iref. 63"><b>7.6.3</b></a>, <a href="#rfc.xref.status.502.2">11.2.3</a></li>4959 <li>503 Service Unavailable (status code) <a href="#rfc.xref.status.503.1">7.1</a>, <a href="#rfc.iref. 64"><b>7.6.4</b></a>, <a href="#rfc.xref.status.503.2">11.2.3</a></li>4960 <li>504 Gateway Timeout (status code) <a href="#rfc.xref.status.504.1">7.1</a>, <a href="#rfc.iref. 65"><b>7.6.5</b></a>, <a href="#rfc.xref.status.504.2">11.2.3</a></li>4961 <li>505 HTTP Version Not Supported (status code) <a href="#rfc.xref.status.505.1">7.1</a>, <a href="#rfc.iref. 66"><b>7.6.6</b></a>, <a href="#rfc.xref.status.505.2">11.2.3</a></li>4962 <li>5xx Server Error (status code class) <a href="#rfc.iref. 60"><b>7.6</b></a></li>4962 <li>500 Internal Server Error (status code) <a href="#rfc.xref.status.500.1">7.1</a>, <a href="#rfc.iref.110"><b>7.6.1</b></a>, <a href="#rfc.xref.status.500.2">10.2.3</a></li> 4963 <li>501 Not Implemented (status code) <a href="#rfc.xref.status.501.1">7.1</a>, <a href="#rfc.iref.111"><b>7.6.2</b></a>, <a href="#rfc.xref.status.501.2">10.2.3</a></li> 4964 <li>502 Bad Gateway (status code) <a href="#rfc.xref.status.502.1">7.1</a>, <a href="#rfc.iref.112"><b>7.6.3</b></a>, <a href="#rfc.xref.status.502.2">10.2.3</a></li> 4965 <li>503 Service Unavailable (status code) <a href="#rfc.xref.status.503.1">7.1</a>, <a href="#rfc.iref.113"><b>7.6.4</b></a>, <a href="#rfc.xref.status.503.2">10.2.3</a></li> 4966 <li>504 Gateway Timeout (status code) <a href="#rfc.xref.status.504.1">7.1</a>, <a href="#rfc.iref.114"><b>7.6.5</b></a>, <a href="#rfc.xref.status.504.2">10.2.3</a></li> 4967 <li>505 HTTP Version Not Supported (status code) <a href="#rfc.xref.status.505.1">7.1</a>, <a href="#rfc.iref.115"><b>7.6.6</b></a>, <a href="#rfc.xref.status.505.2">10.2.3</a></li> 4968 <li>5xx Server Error (status code class) <a href="#rfc.iref.109"><b>7.6</b></a></li> 4963 4969 </ul> 4964 4970 </li> 4965 4971 <li><a id="rfc.index.A" href="#rfc.index.A"><b>A</b></a><ul> 4966 <li>Accept header field <a href="#rfc.xref.header.accept.1">3. 4.1</a>, <a href="#rfc.xref.header.accept.2">6.3</a>, <a href="#rfc.xref.header.accept.3">9.5</a>, <a href="#rfc.iref.a.1"><b>10.1</b></a>, <a href="#rfc.xref.header.accept.4">11.3.2</a></li>4967 <li>Accept-Charset header field <a href="#rfc.xref.header.accept-charset.1">3. 4.1</a>, <a href="#rfc.xref.header.accept-charset.2">6.3</a>, <a href="#rfc.iref.a.2"><b>10.2</b></a>, <a href="#rfc.xref.header.accept-charset.3">11.3.2</a>, <a href="#rfc.xref.header.accept-charset.4">C</a></li>4968 <li>Accept-Encoding header field <a href="#rfc.xref.header.accept-encoding.1">3. 4.1</a>, <a href="#rfc.xref.header.accept-encoding.2">6.3</a>, <a href="#rfc.xref.header.accept-encoding.3">9.4</a>, <a href="#rfc.iref.a.3"><b>10.3</b></a>, <a href="#rfc.xref.header.accept-encoding.4">11.3.2</a>, <a href="#rfc.xref.header.accept-encoding.5">11.4.2</a></li>4969 <li>Accept-Language header field <a href="#rfc.xref.header.accept-language.1">3. 4.1</a>, <a href="#rfc.xref.header.accept-language.2">6.3</a>, <a href="#rfc.iref.a.4"><b>10.4</b></a>, <a href="#rfc.xref.header.accept-language.3">11.3.2</a></li>4970 <li>Allow header field <a href="#rfc.xref.header.allow.1">5.1</a>, <a href="#rfc.xref.header.allow.2">8.4</a>, <a href="#rfc.iref.a.5"><b> 10.5</b></a>, <a href="#rfc.xref.header.allow.3">11.3.2</a>, <a href="#rfc.xref.header.allow.4">C</a></li>4972 <li>Accept header field <a href="#rfc.xref.header.accept.1">3.5.1</a>, <a href="#rfc.xref.header.accept.2">6.3</a>, <a href="#rfc.iref.a.1"><b>6.3.2</b></a>, <a href="#rfc.xref.header.accept.3">9.5</a>, <a href="#rfc.xref.header.accept.4">10.3.2</a></li> 4973 <li>Accept-Charset header field <a href="#rfc.xref.header.accept-charset.1">3.5.1</a>, <a href="#rfc.xref.header.accept-charset.2">6.3</a>, <a href="#rfc.iref.a.2"><b>6.3.3</b></a>, <a href="#rfc.xref.header.accept-charset.3">10.3.2</a>, <a href="#rfc.xref.header.accept-charset.4">C</a></li> 4974 <li>Accept-Encoding header field <a href="#rfc.xref.header.accept-encoding.1">3.5.1</a>, <a href="#rfc.xref.header.accept-encoding.2">6.3</a>, <a href="#rfc.iref.a.3"><b>6.3.4</b></a>, <a href="#rfc.xref.header.accept-encoding.3">9.4</a>, <a href="#rfc.xref.header.accept-encoding.4">10.3.2</a>, <a href="#rfc.xref.header.accept-encoding.5">10.4.2</a></li> 4975 <li>Accept-Language header field <a href="#rfc.xref.header.accept-language.1">3.5.1</a>, <a href="#rfc.xref.header.accept-language.2">6.3</a>, <a href="#rfc.iref.a.4"><b>6.3.5</b></a>, <a href="#rfc.xref.header.accept-language.3">10.3.2</a></li> 4976 <li>Allow header field <a href="#rfc.xref.header.allow.1">5.1</a>, <a href="#rfc.xref.header.allow.2">8.4</a>, <a href="#rfc.iref.a.5"><b>8.4.1</b></a>, <a href="#rfc.xref.header.allow.3">10.3.2</a>, <a href="#rfc.xref.header.allow.4">C</a></li> 4971 4977 </ul> 4972 4978 </li> 4973 4979 <li><a id="rfc.index.C" href="#rfc.index.C"><b>C</b></a><ul> 4974 <li>cacheable <a href="#rfc.iref.c. 2"><b>5.2.3</b></a></li>4980 <li>cacheable <a href="#rfc.iref.c.6"><b>5.2.3</b></a></li> 4975 4981 <li>Coding Format 4976 4982 <ul> 4977 <li>compress <a href="#rfc.iref.c. 5">9.4</a></li>4978 <li>deflate <a href="#rfc.iref.c. 6">9.4</a></li>4979 <li>gzip <a href="#rfc.iref.c. 7">9.4</a></li>4983 <li>compress <a href="#rfc.iref.c.9">9.4</a></li> 4984 <li>deflate <a href="#rfc.iref.c.10">9.4</a></li> 4985 <li>gzip <a href="#rfc.iref.c.11">9.4</a></li> 4980 4986 </ul> 4981 4987 </li> 4982 <li>compress (Coding Format) <a href="#rfc.iref.c. 4">9.4</a></li>4983 <li>CONNECT method <a href="#rfc.xref.CONNECT.1">5.1</a>, <a href="#rfc.iref.c. 3"><b>5.3.6</b></a>, <a href="#rfc.xref.CONNECT.2">11.1.3</a>, <a href="#rfc.xref.CONNECT.3">C</a></li>4988 <li>compress (Coding Format) <a href="#rfc.iref.c.8">9.4</a></li> 4989 <li>CONNECT method <a href="#rfc.xref.CONNECT.1">5.1</a>, <a href="#rfc.iref.c.7"><b>5.3.6</b></a>, <a href="#rfc.xref.CONNECT.2">10.1.3</a>, <a href="#rfc.xref.CONNECT.3">C</a></li> 4984 4990 <li>content negotiation <a href="#rfc.iref.c.1">1</a></li> 4985 <li>Content-Encoding header field <a href="#rfc.xref.header.content-encoding.1">3.2</a>, <a href="#rfc. xref.header.content-encoding.2">9.4</a>, <a href="#rfc.iref.c.8"><b>10.6</b></a>, <a href="#rfc.xref.header.content-encoding.3">11.3.2</a></li>4986 <li>Content-Language header field <a href="#rfc.xref.header.content-language.1">3.2</a>, <a href="#rfc.iref.c. 9"><b>10.7</b></a>, <a href="#rfc.xref.header.content-language.2">11.3.2</a></li>4987 <li>Content-Location header field <a href="#rfc.xref.header.content-location.1">3.2</a>, <a href="#rfc. xref.header.content-location.2">5.3.3</a>, <a href="#rfc.iref.c.10"><b>10.8</b></a>, <a href="#rfc.xref.header.content-location.3">10.13</a>, <a href="#rfc.xref.header.content-location.4">11.3.2</a>, <a href="#rfc.xref.header.content-location.5">C</a></li>4991 <li>Content-Encoding header field <a href="#rfc.xref.header.content-encoding.1">3.2</a>, <a href="#rfc.iref.c.3"><b>3.2.2</b></a>, <a href="#rfc.xref.header.content-encoding.2">9.4</a>, <a href="#rfc.xref.header.content-encoding.3">10.3.2</a></li> 4992 <li>Content-Language header field <a href="#rfc.xref.header.content-language.1">3.2</a>, <a href="#rfc.iref.c.4"><b>3.2.3</b></a>, <a href="#rfc.xref.header.content-language.2">10.3.2</a></li> 4993 <li>Content-Location header field <a href="#rfc.xref.header.content-location.1">3.2</a>, <a href="#rfc.iref.c.5"><b>3.2.4</b></a>, <a href="#rfc.xref.header.content-location.2">5.3.3</a>, <a href="#rfc.xref.header.content-location.3">8.1.1</a>, <a href="#rfc.xref.header.content-location.4">10.3.2</a>, <a href="#rfc.xref.header.content-location.5">C</a></li> 4988 4994 <li>Content-Transfer-Encoding header field <a href="#rfc.iref.c.12">A.5</a>, <a href="#rfc.xref.no.content-transfer-encoding.1">C</a></li> 4989 <li>Content-Type header field <a href="#rfc.xref.header.content-type.1">3.2</a>, <a href="#rfc. xref.header.content-type.2">7</a>, <a href="#rfc.xref.header.content-type.3">9.5</a>, <a href="#rfc.iref.c.11"><b>10.9</b></a>, <a href="#rfc.xref.header.content-type.4">11.3.1</a>, <a href="#rfc.xref.header.content-type.5">11.3.2</a></li>4995 <li>Content-Type header field <a href="#rfc.xref.header.content-type.1">3.2</a>, <a href="#rfc.iref.c.2"><b>3.2.1</b></a>, <a href="#rfc.xref.header.content-type.2">7</a>, <a href="#rfc.xref.header.content-type.3">9.5</a>, <a href="#rfc.xref.header.content-type.4">10.3.1</a>, <a href="#rfc.xref.header.content-type.5">10.3.2</a></li> 4990 4996 </ul> 4991 4997 </li> 4992 4998 <li><a id="rfc.index.D" href="#rfc.index.D"><b>D</b></a><ul> 4993 <li>Date header field <a href="#rfc.xref.header.date.1">8.2</a>, <a href="#rfc.iref.d. 3"><b>10.10</b></a>, <a href="#rfc.xref.header.date.2">11.3.2</a></li>4994 <li>deflate (Coding Format) <a href="#rfc.iref.d. 2">9.4</a></li>4995 <li>DELETE method <a href="#rfc.xref.DELETE.1">5.1</a>, <a href="#rfc.iref.d.1"><b>5.3.5</b></a>, <a href="#rfc.xref.DELETE.2">1 1.1.3</a></li>4999 <li>Date header field <a href="#rfc.xref.header.date.1">8.2</a>, <a href="#rfc.iref.d.2"><b>8.2.1</b></a>, <a href="#rfc.xref.header.date.2">10.3.2</a></li> 5000 <li>deflate (Coding Format) <a href="#rfc.iref.d.3">9.4</a></li> 5001 <li>DELETE method <a href="#rfc.xref.DELETE.1">5.1</a>, <a href="#rfc.iref.d.1"><b>5.3.5</b></a>, <a href="#rfc.xref.DELETE.2">10.1.3</a></li> 4996 5002 </ul> 4997 5003 </li> 4998 5004 <li><a id="rfc.index.E" href="#rfc.index.E"><b>E</b></a><ul> 4999 <li>Expect header field <a href="#rfc.xref.header.expect.1">6.1</a>, <a href="#rfc. xref.header.expect.2">7.5.14</a>, <a href="#rfc.iref.e.1"><b>10.11</b></a>, <a href="#rfc.xref.header.expect.3">11.3.2</a>, <a href="#rfc.xref.header.expect.4">C</a></li>5005 <li>Expect header field <a href="#rfc.xref.header.expect.1">6.1</a>, <a href="#rfc.iref.e.1"><b>6.1.2</b></a>, <a href="#rfc.xref.header.expect.2">7.5.14</a>, <a href="#rfc.xref.header.expect.3">10.3.2</a>, <a href="#rfc.xref.header.expect.4">C</a></li> 5000 5006 <li>Expect Values 5001 5007 <ul> 5002 <li>100-continue <a href="#rfc.iref.e.2"><b> 10.11</b></a></li>5008 <li>100-continue <a href="#rfc.iref.e.2"><b>6.1.2</b></a></li> 5003 5009 </ul> 5004 5010 </li> … … 5006 5012 </li> 5007 5013 <li><a id="rfc.index.F" href="#rfc.index.F"><b>F</b></a><ul> 5008 <li>From header field <a href="#rfc.xref.header.from.1">6.5</a>, <a href="#rfc.iref.f.1"><b> 10.12</b></a>, <a href="#rfc.xref.header.from.2">11.3.2</a></li>5014 <li>From header field <a href="#rfc.xref.header.from.1">6.5</a>, <a href="#rfc.iref.f.1"><b>6.5.1</b></a>, <a href="#rfc.xref.header.from.2">10.3.2</a></li> 5009 5015 </ul> 5010 5016 </li> 5011 5017 <li><a id="rfc.index.G" href="#rfc.index.G"><b>G</b></a><ul> 5012 <li>GET method <a href="#rfc.xref.GET.1">5.1</a>, <a href="#rfc.iref.g. 4"><b>5.3.1</b></a>, <a href="#rfc.xref.GET.2">11.1.3</a></li>5018 <li>GET method <a href="#rfc.xref.GET.1">5.1</a>, <a href="#rfc.iref.g.6"><b>5.3.1</b></a>, <a href="#rfc.xref.GET.2">10.1.3</a></li> 5013 5019 <li><tt>Grammar</tt> 5014 5020 <ul> 5015 <li><tt>Accept</tt> <a href="#rfc.iref.g. 33"><b>10.1</b></a></li>5016 <li><tt>Accept-Charset</tt> <a href="#rfc.iref.g. 37"><b>10.2</b></a></li>5017 <li><tt>Accept-Encoding</tt> <a href="#rfc.iref.g. 38"><b>10.3</b></a></li>5018 <li><tt>accept-ext</tt> <a href="#rfc.iref.g. 36"><b>10.1</b></a></li>5019 <li><tt>Accept-Language</tt> <a href="#rfc.iref.g. 40"><b>10.4</b></a></li>5020 <li><tt>accept-params</tt> <a href="#rfc.iref.g. 35"><b>10.1</b></a></li>5021 <li><tt>Allow</tt> <a href="#rfc.iref.g. 42"><b>10.5</b></a></li>5022 <li><tt>asctime-date</tt> <a href="#rfc.iref.g. 20"><b>9.1</b></a></li>5023 <li><tt>attribute</tt> <a href="#rfc.iref.g. 30"><b>9.5</b></a></li>5024 <li><tt>charset</tt> <a href="#rfc.iref.g. 23"><b>9.3</b></a></li>5025 <li><tt>codings</tt> <a href="#rfc.iref.g. 39"><b>10.3</b></a></li>5026 <li><tt>content-coding</tt> <a href="#rfc.iref.g. 24"><b>9.4</b></a></li>5027 <li><tt>Content-Encoding</tt> <a href="#rfc.iref.g. 43"><b>10.6</b></a></li>5028 <li><tt>Content-Language</tt> <a href="#rfc.iref.g. 44"><b>10.7</b></a></li>5029 <li><tt>Content-Location</tt> <a href="#rfc.iref.g.4 5"><b>10.8</b></a></li>5030 <li><tt>Content-Type</tt> <a href="#rfc.iref.g. 46"><b>10.9</b></a></li>5031 <li><tt>Date</tt> <a href="#rfc.iref.g. 47"><b>10.10</b></a></li>5032 <li><tt>date1</tt> <a href="#rfc.iref.g. 7"><b>9.1</b></a></li>5033 <li><tt>day</tt> <a href="#rfc.iref.g. 14"><b>9.1</b></a></li>5034 <li><tt>day-name</tt> <a href="#rfc.iref.g. 12"><b>9.1</b></a></li>5035 <li><tt>day-name-l</tt> <a href="#rfc.iref.g. 13"><b>9.1</b></a></li>5036 <li><tt>delta-seconds</tt> <a href="#rfc.iref.g. 58"><b>10.16</b></a></li>5037 <li><tt>Expect</tt> <a href="#rfc.iref.g. 48"><b>10.11</b></a></li>5038 <li><tt>expect-name</tt> <a href="#rfc.iref.g. 52"><b>10.11</b></a></li>5039 <li><tt>expect-param</tt> <a href="#rfc.iref.g. 50"><b>10.11</b></a></li>5040 <li><tt>expect-value</tt> <a href="#rfc.iref.g. 51"><b>10.11</b></a></li>5041 <li><tt>expectation</tt> <a href="#rfc.iref.g. 49"><b>10.11</b></a></li>5042 <li><tt>From</tt> <a href="#rfc.iref.g. 53"><b>10.12</b></a></li>5043 <li><tt>GMT</tt> <a href="#rfc.iref.g. 17"><b>9.1</b></a></li>5044 <li><tt>hour</tt> <a href="#rfc.iref.g. 9"><b>9.1</b></a></li>5045 <li><tt>HTTP-date</tt> <a href="#rfc.iref.g. 5"><b>9.1</b></a></li>5046 <li><tt>language-range</tt> <a href="#rfc.iref.g. 41"><b>10.4</b></a></li>5047 <li><tt>language-tag</tt> <a href="#rfc.iref.g. 32"><b>9.6</b></a></li>5048 <li><tt>Location</tt> <a href="#rfc.iref.g. 54"><b>10.13</b></a></li>5049 <li><tt>Max-Forwards</tt> <a href="#rfc.iref.g. 55"><b>10.14</b></a></li>5050 <li><tt>media-range</tt> <a href="#rfc.iref.g. 34"><b>10.1</b></a></li>5051 <li><tt>media-type</tt> <a href="#rfc.iref.g. 26"><b>9.5</b></a></li>5052 <li><tt>method</tt> <a href="#rfc.iref.g. 3"><b>5.1</b></a></li>5021 <li><tt>Accept</tt> <a href="#rfc.iref.g.15"><b>6.3.2</b></a></li> 5022 <li><tt>Accept-Charset</tt> <a href="#rfc.iref.g.19"><b>6.3.3</b></a></li> 5023 <li><tt>Accept-Encoding</tt> <a href="#rfc.iref.g.20"><b>6.3.4</b></a></li> 5024 <li><tt>accept-ext</tt> <a href="#rfc.iref.g.18"><b>6.3.2</b></a></li> 5025 <li><tt>Accept-Language</tt> <a href="#rfc.iref.g.22"><b>6.3.5</b></a></li> 5026 <li><tt>accept-params</tt> <a href="#rfc.iref.g.17"><b>6.3.2</b></a></li> 5027 <li><tt>Allow</tt> <a href="#rfc.iref.g.31"><b>8.4.1</b></a></li> 5028 <li><tt>asctime-date</tt> <a href="#rfc.iref.g.48"><b>9.1</b></a></li> 5029 <li><tt>attribute</tt> <a href="#rfc.iref.g.58"><b>9.5</b></a></li> 5030 <li><tt>charset</tt> <a href="#rfc.iref.g.51"><b>9.3</b></a></li> 5031 <li><tt>codings</tt> <a href="#rfc.iref.g.21"><b>6.3.4</b></a></li> 5032 <li><tt>content-coding</tt> <a href="#rfc.iref.g.52"><b>9.4</b></a></li> 5033 <li><tt>Content-Encoding</tt> <a href="#rfc.iref.g.2"><b>3.2.2</b></a></li> 5034 <li><tt>Content-Language</tt> <a href="#rfc.iref.g.3"><b>3.2.3</b></a></li> 5035 <li><tt>Content-Location</tt> <a href="#rfc.iref.g.4"><b>3.2.4</b></a></li> 5036 <li><tt>Content-Type</tt> <a href="#rfc.iref.g.1"><b>3.2.1</b></a></li> 5037 <li><tt>Date</tt> <a href="#rfc.iref.g.30"><b>8.2.1</b></a></li> 5038 <li><tt>date1</tt> <a href="#rfc.iref.g.35"><b>9.1</b></a></li> 5039 <li><tt>day</tt> <a href="#rfc.iref.g.42"><b>9.1</b></a></li> 5040 <li><tt>day-name</tt> <a href="#rfc.iref.g.40"><b>9.1</b></a></li> 5041 <li><tt>day-name-l</tt> <a href="#rfc.iref.g.41"><b>9.1</b></a></li> 5042 <li><tt>delta-seconds</tt> <a href="#rfc.iref.g.29"><b>8.1.2</b></a></li> 5043 <li><tt>Expect</tt> <a href="#rfc.iref.g.8"><b>6.1.2</b></a></li> 5044 <li><tt>expect-name</tt> <a href="#rfc.iref.g.12"><b>6.1.2</b></a></li> 5045 <li><tt>expect-param</tt> <a href="#rfc.iref.g.10"><b>6.1.2</b></a></li> 5046 <li><tt>expect-value</tt> <a href="#rfc.iref.g.11"><b>6.1.2</b></a></li> 5047 <li><tt>expectation</tt> <a href="#rfc.iref.g.9"><b>6.1.2</b></a></li> 5048 <li><tt>From</tt> <a href="#rfc.iref.g.24"><b>6.5.1</b></a></li> 5049 <li><tt>GMT</tt> <a href="#rfc.iref.g.45"><b>9.1</b></a></li> 5050 <li><tt>hour</tt> <a href="#rfc.iref.g.37"><b>9.1</b></a></li> 5051 <li><tt>HTTP-date</tt> <a href="#rfc.iref.g.33"><b>9.1</b></a></li> 5052 <li><tt>language-range</tt> <a href="#rfc.iref.g.23"><b>6.3.5</b></a></li> 5053 <li><tt>language-tag</tt> <a href="#rfc.iref.g.60"><b>9.6</b></a></li> 5054 <li><tt>Location</tt> <a href="#rfc.iref.g.27"><b>8.1.1</b></a></li> 5055 <li><tt>Max-Forwards</tt> <a href="#rfc.iref.g.7"><b>6.1.1</b></a></li> 5056 <li><tt>media-range</tt> <a href="#rfc.iref.g.16"><b>6.3.2</b></a></li> 5057 <li><tt>media-type</tt> <a href="#rfc.iref.g.54"><b>9.5</b></a></li> 5058 <li><tt>method</tt> <a href="#rfc.iref.g.5"><b>5.1</b></a></li> 5053 5059 <li><tt>MIME-Version</tt> <a href="#rfc.iref.g.61"><b>A.1</b></a></li> 5054 <li><tt>minute</tt> <a href="#rfc.iref.g. 10"><b>9.1</b></a></li>5055 <li><tt>month</tt> <a href="#rfc.iref.g. 15"><b>9.1</b></a></li>5056 <li><tt>obs-date</tt> <a href="#rfc.iref.g. 18"><b>9.1</b></a></li>5057 <li><tt>parameter</tt> <a href="#rfc.iref.g. 29"><b>9.5</b></a></li>5058 <li><tt>product</tt> <a href="#rfc.iref.g. 21"><b>9.2</b></a></li>5059 <li><tt>product-version</tt> <a href="#rfc.iref.g. 22"><b>9.2</b></a></li>5060 <li><tt>qvalue</tt> <a href="#rfc.iref.g. 2"><b>3.4.3</b></a></li>5061 <li><tt>Referer</tt> <a href="#rfc.iref.g. 56"><b>10.15</b></a></li>5062 <li><tt>Retry-After</tt> <a href="#rfc.iref.g. 57"><b>10.16</b></a></li>5063 <li><tt>rfc1123-date</tt> <a href="#rfc.iref.g. 6"><b>9.1</b></a></li>5064 <li><tt>rfc850-date</tt> <a href="#rfc.iref.g. 19"><b>9.1</b></a></li>5065 <li><tt>second</tt> <a href="#rfc.iref.g. 11"><b>9.1</b></a></li>5066 <li><tt>Server</tt> <a href="#rfc.iref.g. 59"><b>10.17</b></a></li>5067 <li><tt>subtype</tt> <a href="#rfc.iref.g. 28"><b>9.5</b></a></li>5068 <li><tt>time-of-day</tt> <a href="#rfc.iref.g. 8"><b>9.1</b></a></li>5069 <li><tt>type</tt> <a href="#rfc.iref.g. 27"><b>9.5</b></a></li>5070 <li><tt>User-Agent</tt> <a href="#rfc.iref.g. 60"><b>10.18</b></a></li>5071 <li><tt>value</tt> <a href="#rfc.iref.g. 31"><b>9.5</b></a></li>5072 <li><tt>weight</tt> <a href="#rfc.iref.g.1 "><b>3.4.3</b></a></li>5073 <li><tt>year</tt> <a href="#rfc.iref.g. 16"><b>9.1</b></a></li>5060 <li><tt>minute</tt> <a href="#rfc.iref.g.38"><b>9.1</b></a></li> 5061 <li><tt>month</tt> <a href="#rfc.iref.g.43"><b>9.1</b></a></li> 5062 <li><tt>obs-date</tt> <a href="#rfc.iref.g.46"><b>9.1</b></a></li> 5063 <li><tt>parameter</tt> <a href="#rfc.iref.g.57"><b>9.5</b></a></li> 5064 <li><tt>product</tt> <a href="#rfc.iref.g.49"><b>9.2</b></a></li> 5065 <li><tt>product-version</tt> <a href="#rfc.iref.g.50"><b>9.2</b></a></li> 5066 <li><tt>qvalue</tt> <a href="#rfc.iref.g.14"><b>6.3.1</b></a></li> 5067 <li><tt>Referer</tt> <a href="#rfc.iref.g.25"><b>6.5.2</b></a></li> 5068 <li><tt>Retry-After</tt> <a href="#rfc.iref.g.28"><b>8.1.2</b></a></li> 5069 <li><tt>rfc1123-date</tt> <a href="#rfc.iref.g.34"><b>9.1</b></a></li> 5070 <li><tt>rfc850-date</tt> <a href="#rfc.iref.g.47"><b>9.1</b></a></li> 5071 <li><tt>second</tt> <a href="#rfc.iref.g.39"><b>9.1</b></a></li> 5072 <li><tt>Server</tt> <a href="#rfc.iref.g.32"><b>8.4.2</b></a></li> 5073 <li><tt>subtype</tt> <a href="#rfc.iref.g.56"><b>9.5</b></a></li> 5074 <li><tt>time-of-day</tt> <a href="#rfc.iref.g.36"><b>9.1</b></a></li> 5075 <li><tt>type</tt> <a href="#rfc.iref.g.55"><b>9.5</b></a></li> 5076 <li><tt>User-Agent</tt> <a href="#rfc.iref.g.26"><b>6.5.3</b></a></li> 5077 <li><tt>value</tt> <a href="#rfc.iref.g.59"><b>9.5</b></a></li> 5078 <li><tt>weight</tt> <a href="#rfc.iref.g.13"><b>6.3.1</b></a></li> 5079 <li><tt>year</tt> <a href="#rfc.iref.g.44"><b>9.1</b></a></li> 5074 5080 </ul> 5075 5081 </li> 5076 <li>gzip (Coding Format) <a href="#rfc.iref.g. 25">9.4</a></li>5082 <li>gzip (Coding Format) <a href="#rfc.iref.g.53">9.4</a></li> 5077 5083 </ul> 5078 5084 </li> 5079 5085 <li><a id="rfc.index.H" href="#rfc.index.H"><b>H</b></a><ul> 5080 <li>HEAD method <a href="#rfc.xref.HEAD.1">5.1</a>, <a href="#rfc.iref.h. 1"><b>5.3.2</b></a>, <a href="#rfc.xref.HEAD.2">11.1.3</a></li>5086 <li>HEAD method <a href="#rfc.xref.HEAD.1">5.1</a>, <a href="#rfc.iref.h.5"><b>5.3.2</b></a>, <a href="#rfc.xref.HEAD.2">10.1.3</a></li> 5081 5087 <li>Header Fields 5082 5088 <ul> 5083 <li>Accept <a href="#rfc.xref.header.accept.1">3. 4.1</a>, <a href="#rfc.xref.header.accept.2">6.3</a>, <a href="#rfc.xref.header.accept.3">9.5</a>, <a href="#rfc.iref.h.2"><b>10.1</b></a>, <a href="#rfc.xref.header.accept.4">11.3.2</a></li>5084 <li>Accept-Charset <a href="#rfc.xref.header.accept-charset.1">3. 4.1</a>, <a href="#rfc.xref.header.accept-charset.2">6.3</a>, <a href="#rfc.iref.h.3"><b>10.2</b></a>, <a href="#rfc.xref.header.accept-charset.3">11.3.2</a>, <a href="#rfc.xref.header.accept-charset.4">C</a></li>5085 <li>Accept-Encoding <a href="#rfc.xref.header.accept-encoding.1">3. 4.1</a>, <a href="#rfc.xref.header.accept-encoding.2">6.3</a>, <a href="#rfc.xref.header.accept-encoding.3">9.4</a>, <a href="#rfc.iref.h.4"><b>10.3</b></a>, <a href="#rfc.xref.header.accept-encoding.4">11.3.2</a>, <a href="#rfc.xref.header.accept-encoding.5">11.4.2</a></li>5086 <li>Accept-Language <a href="#rfc.xref.header.accept-language.1">3. 4.1</a>, <a href="#rfc.xref.header.accept-language.2">6.3</a>, <a href="#rfc.iref.h.5"><b>10.4</b></a>, <a href="#rfc.xref.header.accept-language.3">11.3.2</a></li>5087 <li>Allow <a href="#rfc.xref.header.allow.1">5.1</a>, <a href="#rfc.xref.header.allow.2">8.4</a>, <a href="#rfc.iref.h. 6"><b>10.5</b></a>, <a href="#rfc.xref.header.allow.3">11.3.2</a>, <a href="#rfc.xref.header.allow.4">C</a></li>5088 <li>Content-Encoding <a href="#rfc.xref.header.content-encoding.1">3.2</a>, <a href="#rfc. xref.header.content-encoding.2">9.4</a>, <a href="#rfc.iref.h.7"><b>10.6</b></a>, <a href="#rfc.xref.header.content-encoding.3">11.3.2</a></li>5089 <li>Content-Language <a href="#rfc.xref.header.content-language.1">3.2</a>, <a href="#rfc.iref.h. 8"><b>10.7</b></a>, <a href="#rfc.xref.header.content-language.2">11.3.2</a></li>5090 <li>Content-Location <a href="#rfc.xref.header.content-location.1">3.2</a>, <a href="#rfc. xref.header.content-location.2">5.3.3</a>, <a href="#rfc.iref.h.9"><b>10.8</b></a>, <a href="#rfc.xref.header.content-location.3">10.13</a>, <a href="#rfc.xref.header.content-location.4">11.3.2</a>, <a href="#rfc.xref.header.content-location.5">C</a></li>5089 <li>Accept <a href="#rfc.xref.header.accept.1">3.5.1</a>, <a href="#rfc.xref.header.accept.2">6.3</a>, <a href="#rfc.iref.h.8"><b>6.3.2</b></a>, <a href="#rfc.xref.header.accept.3">9.5</a>, <a href="#rfc.xref.header.accept.4">10.3.2</a></li> 5090 <li>Accept-Charset <a href="#rfc.xref.header.accept-charset.1">3.5.1</a>, <a href="#rfc.xref.header.accept-charset.2">6.3</a>, <a href="#rfc.iref.h.9"><b>6.3.3</b></a>, <a href="#rfc.xref.header.accept-charset.3">10.3.2</a>, <a href="#rfc.xref.header.accept-charset.4">C</a></li> 5091 <li>Accept-Encoding <a href="#rfc.xref.header.accept-encoding.1">3.5.1</a>, <a href="#rfc.xref.header.accept-encoding.2">6.3</a>, <a href="#rfc.iref.h.10"><b>6.3.4</b></a>, <a href="#rfc.xref.header.accept-encoding.3">9.4</a>, <a href="#rfc.xref.header.accept-encoding.4">10.3.2</a>, <a href="#rfc.xref.header.accept-encoding.5">10.4.2</a></li> 5092 <li>Accept-Language <a href="#rfc.xref.header.accept-language.1">3.5.1</a>, <a href="#rfc.xref.header.accept-language.2">6.3</a>, <a href="#rfc.iref.h.11"><b>6.3.5</b></a>, <a href="#rfc.xref.header.accept-language.3">10.3.2</a></li> 5093 <li>Allow <a href="#rfc.xref.header.allow.1">5.1</a>, <a href="#rfc.xref.header.allow.2">8.4</a>, <a href="#rfc.iref.h.18"><b>8.4.1</b></a>, <a href="#rfc.xref.header.allow.3">10.3.2</a>, <a href="#rfc.xref.header.allow.4">C</a></li> 5094 <li>Content-Encoding <a href="#rfc.xref.header.content-encoding.1">3.2</a>, <a href="#rfc.iref.h.2"><b>3.2.2</b></a>, <a href="#rfc.xref.header.content-encoding.2">9.4</a>, <a href="#rfc.xref.header.content-encoding.3">10.3.2</a></li> 5095 <li>Content-Language <a href="#rfc.xref.header.content-language.1">3.2</a>, <a href="#rfc.iref.h.3"><b>3.2.3</b></a>, <a href="#rfc.xref.header.content-language.2">10.3.2</a></li> 5096 <li>Content-Location <a href="#rfc.xref.header.content-location.1">3.2</a>, <a href="#rfc.iref.h.4"><b>3.2.4</b></a>, <a href="#rfc.xref.header.content-location.2">5.3.3</a>, <a href="#rfc.xref.header.content-location.3">8.1.1</a>, <a href="#rfc.xref.header.content-location.4">10.3.2</a>, <a href="#rfc.xref.header.content-location.5">C</a></li> 5091 5097 <li>Content-Transfer-Encoding <a href="#rfc.iref.h.21">A.5</a>, <a href="#rfc.xref.no.content-transfer-encoding.1">C</a></li> 5092 <li>Content-Type <a href="#rfc.xref.header.content-type.1">3.2</a>, <a href="#rfc. xref.header.content-type.2">7</a>, <a href="#rfc.xref.header.content-type.3">9.5</a>, <a href="#rfc.iref.h.10"><b>10.9</b></a>, <a href="#rfc.xref.header.content-type.4">11.3.1</a>, <a href="#rfc.xref.header.content-type.5">11.3.2</a></li>5093 <li>Date <a href="#rfc.xref.header.date.1">8.2</a>, <a href="#rfc.iref.h.1 1"><b>10.10</b></a>, <a href="#rfc.xref.header.date.2">11.3.2</a></li>5094 <li>Expect <a href="#rfc.xref.header.expect.1">6.1</a>, <a href="#rfc. xref.header.expect.2">7.5.14</a>, <a href="#rfc.iref.h.12"><b>10.11</b></a>, <a href="#rfc.xref.header.expect.3">11.3.2</a>, <a href="#rfc.xref.header.expect.4">C</a></li>5095 <li>From <a href="#rfc.xref.header.from.1">6.5</a>, <a href="#rfc.iref.h.1 3"><b>10.12</b></a>, <a href="#rfc.xref.header.from.2">11.3.2</a></li>5096 <li>Location <a href="#rfc.xref.header.location.1">5.3.3</a>, <a href="#rfc.xref.header.location.2">7.4</a>, <a href="#rfc.xref.header.location.3">8.1</a>, <a href="#rfc.iref.h.1 4"><b>10.13</b></a>, <a href="#rfc.xref.header.location.4">11.3.2</a>, <a href="#rfc.xref.header.location.5">C</a></li>5097 <li>Max-Forwards <a href="#rfc.xref.header.max-forwards.1">5.3.7</a>, <a href="#rfc.xref.header.max-forwards.2">5.3.8</a>, <a href="#rfc.xref.header.max-forwards.3">6.1</a>, <a href="#rfc.iref.h. 15"><b>10.14</b></a>, <a href="#rfc.xref.header.max-forwards.4">11.3.2</a>, <a href="#rfc.xref.header.max-forwards.5">C</a></li>5098 <li>MIME-Version <a href="#rfc.xref.mime-version.1">1 1.3.2</a>, <a href="#rfc.iref.h.20"><b>A.1</b></a></li>5099 <li>Referer <a href="#rfc.xref.header.referer.1">6.5</a>, <a href="#rfc.iref.h.1 6"><b>10.15</b></a>, <a href="#rfc.xref.header.referer.2">11.3.2</a>, <a href="#rfc.xref.header.referer.3">C</a></li>5100 <li>Retry-After <a href="#rfc.xref.header.retry-after.1">7.6.4</a>, <a href="#rfc.xref.header.retry-after.2">8.1</a>, <a href="#rfc.iref.h.1 7"><b>10.16</b></a>, <a href="#rfc.xref.header.retry-after.3">11.3.2</a></li>5101 <li>Server <a href="#rfc.xref.header.server.1">8.4</a>, <a href="#rfc.iref.h.1 8"><b>10.17</b></a>, <a href="#rfc.xref.header.server.2">11.3.2</a>, <a href="#rfc.xref.header.server.3">12.1</a>, <a href="#rfc.xref.header.server.4">C</a></li>5102 <li>User-Agent <a href="#rfc.xref.header.user-agent.1">3. 4.1</a>, <a href="#rfc.xref.header.user-agent.2">6.5</a>, <a href="#rfc.iref.h.19"><b>10.18</b></a>, <a href="#rfc.xref.header.user-agent.3">11.3.2</a>, <a href="#rfc.xref.header.user-agent.4">12.1</a></li>5098 <li>Content-Type <a href="#rfc.xref.header.content-type.1">3.2</a>, <a href="#rfc.iref.h.1"><b>3.2.1</b></a>, <a href="#rfc.xref.header.content-type.2">7</a>, <a href="#rfc.xref.header.content-type.3">9.5</a>, <a href="#rfc.xref.header.content-type.4">10.3.1</a>, <a href="#rfc.xref.header.content-type.5">10.3.2</a></li> 5099 <li>Date <a href="#rfc.xref.header.date.1">8.2</a>, <a href="#rfc.iref.h.17"><b>8.2.1</b></a>, <a href="#rfc.xref.header.date.2">10.3.2</a></li> 5100 <li>Expect <a href="#rfc.xref.header.expect.1">6.1</a>, <a href="#rfc.iref.h.7"><b>6.1.2</b></a>, <a href="#rfc.xref.header.expect.2">7.5.14</a>, <a href="#rfc.xref.header.expect.3">10.3.2</a>, <a href="#rfc.xref.header.expect.4">C</a></li> 5101 <li>From <a href="#rfc.xref.header.from.1">6.5</a>, <a href="#rfc.iref.h.12"><b>6.5.1</b></a>, <a href="#rfc.xref.header.from.2">10.3.2</a></li> 5102 <li>Location <a href="#rfc.xref.header.location.1">5.3.3</a>, <a href="#rfc.xref.header.location.2">7.4</a>, <a href="#rfc.xref.header.location.3">8.1</a>, <a href="#rfc.iref.h.15"><b>8.1.1</b></a>, <a href="#rfc.xref.header.location.4">10.3.2</a>, <a href="#rfc.xref.header.location.5">C</a></li> 5103 <li>Max-Forwards <a href="#rfc.xref.header.max-forwards.1">5.3.7</a>, <a href="#rfc.xref.header.max-forwards.2">5.3.8</a>, <a href="#rfc.xref.header.max-forwards.3">6.1</a>, <a href="#rfc.iref.h.6"><b>6.1.1</b></a>, <a href="#rfc.xref.header.max-forwards.4">10.3.2</a>, <a href="#rfc.xref.header.max-forwards.5">C</a></li> 5104 <li>MIME-Version <a href="#rfc.xref.mime-version.1">10.3.2</a>, <a href="#rfc.iref.h.20"><b>A.1</b></a></li> 5105 <li>Referer <a href="#rfc.xref.header.referer.1">6.5</a>, <a href="#rfc.iref.h.13"><b>6.5.2</b></a>, <a href="#rfc.xref.header.referer.2">10.3.2</a>, <a href="#rfc.xref.header.referer.3">C</a></li> 5106 <li>Retry-After <a href="#rfc.xref.header.retry-after.1">7.6.4</a>, <a href="#rfc.xref.header.retry-after.2">8.1</a>, <a href="#rfc.iref.h.16"><b>8.1.2</b></a>, <a href="#rfc.xref.header.retry-after.3">10.3.2</a></li> 5107 <li>Server <a href="#rfc.xref.header.server.1">8.4</a>, <a href="#rfc.iref.h.19"><b>8.4.2</b></a>, <a href="#rfc.xref.header.server.2">10.3.2</a>, <a href="#rfc.xref.header.server.3">11.1</a>, <a href="#rfc.xref.header.server.4">C</a></li> 5108 <li>User-Agent <a href="#rfc.xref.header.user-agent.1">3.5.1</a>, <a href="#rfc.xref.header.user-agent.2">6.5</a>, <a href="#rfc.iref.h.14"><b>6.5.3</b></a>, <a href="#rfc.xref.header.user-agent.3">10.3.2</a>, <a href="#rfc.xref.header.user-agent.4">11.1</a></li> 5103 5109 </ul> 5104 5110 </li> … … 5110 5116 </li> 5111 5117 <li><a id="rfc.index.L" href="#rfc.index.L"><b>L</b></a><ul> 5112 <li>Location header field <a href="#rfc.xref.header.location.1">5.3.3</a>, <a href="#rfc.xref.header.location.2">7.4</a>, <a href="#rfc.xref.header.location.3">8.1</a>, <a href="#rfc.iref.l.1"><b> 10.13</b></a>, <a href="#rfc.xref.header.location.4">11.3.2</a>, <a href="#rfc.xref.header.location.5">C</a></li>5118 <li>Location header field <a href="#rfc.xref.header.location.1">5.3.3</a>, <a href="#rfc.xref.header.location.2">7.4</a>, <a href="#rfc.xref.header.location.3">8.1</a>, <a href="#rfc.iref.l.1"><b>8.1.1</b></a>, <a href="#rfc.xref.header.location.4">10.3.2</a>, <a href="#rfc.xref.header.location.5">C</a></li> 5113 5119 </ul> 5114 5120 </li> 5115 5121 <li><a id="rfc.index.M" href="#rfc.index.M"><b>M</b></a><ul> 5116 <li>Max-Forwards header field <a href="#rfc.xref.header.max-forwards.1">5.3.7</a>, <a href="#rfc.xref.header.max-forwards.2">5.3.8</a>, <a href="#rfc.xref.header.max-forwards.3">6.1</a>, <a href="#rfc.iref.m.9"><b> 10.14</b></a>, <a href="#rfc.xref.header.max-forwards.4">11.3.2</a>, <a href="#rfc.xref.header.max-forwards.5">C</a></li>5122 <li>Max-Forwards header field <a href="#rfc.xref.header.max-forwards.1">5.3.7</a>, <a href="#rfc.xref.header.max-forwards.2">5.3.8</a>, <a href="#rfc.xref.header.max-forwards.3">6.1</a>, <a href="#rfc.iref.m.9"><b>6.1.1</b></a>, <a href="#rfc.xref.header.max-forwards.4">10.3.2</a>, <a href="#rfc.xref.header.max-forwards.5">C</a></li> 5117 5123 <li>Methods 5118 5124 <ul> 5119 <li>CONNECT <a href="#rfc.xref.CONNECT.1">5.1</a>, <a href="#rfc.iref.m.6"><b>5.3.6</b></a>, <a href="#rfc.xref.CONNECT.2">1 1.1.3</a>, <a href="#rfc.xref.CONNECT.3">C</a></li>5120 <li>DELETE <a href="#rfc.xref.DELETE.1">5.1</a>, <a href="#rfc.iref.m.5"><b>5.3.5</b></a>, <a href="#rfc.xref.DELETE.2">1 1.1.3</a></li>5121 <li>GET <a href="#rfc.xref.GET.1">5.1</a>, <a href="#rfc.iref.m.1"><b>5.3.1</b></a>, <a href="#rfc.xref.GET.2">1 1.1.3</a></li>5122 <li>HEAD <a href="#rfc.xref.HEAD.1">5.1</a>, <a href="#rfc.iref.m.2"><b>5.3.2</b></a>, <a href="#rfc.xref.HEAD.2">1 1.1.3</a></li>5123 <li>OPTIONS <a href="#rfc.xref.OPTIONS.1">5.1</a>, <a href="#rfc.iref.m.7"><b>5.3.7</b></a>, <a href="#rfc.xref.OPTIONS.2"> 10.14</a>, <a href="#rfc.xref.OPTIONS.3">11.1.3</a></li>5124 <li>POST <a href="#rfc.xref.POST.1">5.1</a>, <a href="#rfc.iref.m.3"><b>5.3.3</b></a>, <a href="#rfc.xref.POST.2">1 1.1.3</a>, <a href="#rfc.xref.POST.3">C</a></li>5125 <li>PUT <a href="#rfc.xref.PUT.1">5.1</a>, <a href="#rfc.iref.m.4"><b>5.3.4</b></a>, <a href="#rfc.xref.PUT.2">1 1.1.3</a>, <a href="#rfc.xref.PUT.3">C</a></li>5126 <li>TRACE <a href="#rfc.xref.TRACE.1">5.1</a>, <a href="#rfc.iref.m.8"><b>5.3.8</b></a>, <a href="#rfc.xref.TRACE.2"> 10.14</a>, <a href="#rfc.xref.TRACE.3">11.1.3</a>, <a href="#rfc.xref.TRACE.4">12.1</a></li>5125 <li>CONNECT <a href="#rfc.xref.CONNECT.1">5.1</a>, <a href="#rfc.iref.m.6"><b>5.3.6</b></a>, <a href="#rfc.xref.CONNECT.2">10.1.3</a>, <a href="#rfc.xref.CONNECT.3">C</a></li> 5126 <li>DELETE <a href="#rfc.xref.DELETE.1">5.1</a>, <a href="#rfc.iref.m.5"><b>5.3.5</b></a>, <a href="#rfc.xref.DELETE.2">10.1.3</a></li> 5127 <li>GET <a href="#rfc.xref.GET.1">5.1</a>, <a href="#rfc.iref.m.1"><b>5.3.1</b></a>, <a href="#rfc.xref.GET.2">10.1.3</a></li> 5128 <li>HEAD <a href="#rfc.xref.HEAD.1">5.1</a>, <a href="#rfc.iref.m.2"><b>5.3.2</b></a>, <a href="#rfc.xref.HEAD.2">10.1.3</a></li> 5129 <li>OPTIONS <a href="#rfc.xref.OPTIONS.1">5.1</a>, <a href="#rfc.iref.m.7"><b>5.3.7</b></a>, <a href="#rfc.xref.OPTIONS.2">6.1.1</a>, <a href="#rfc.xref.OPTIONS.3">10.1.3</a></li> 5130 <li>POST <a href="#rfc.xref.POST.1">5.1</a>, <a href="#rfc.iref.m.3"><b>5.3.3</b></a>, <a href="#rfc.xref.POST.2">10.1.3</a>, <a href="#rfc.xref.POST.3">C</a></li> 5131 <li>PUT <a href="#rfc.xref.PUT.1">5.1</a>, <a href="#rfc.iref.m.4"><b>5.3.4</b></a>, <a href="#rfc.xref.PUT.2">10.1.3</a>, <a href="#rfc.xref.PUT.3">C</a></li> 5132 <li>TRACE <a href="#rfc.xref.TRACE.1">5.1</a>, <a href="#rfc.iref.m.8"><b>5.3.8</b></a>, <a href="#rfc.xref.TRACE.2">6.1.1</a>, <a href="#rfc.xref.TRACE.3">10.1.3</a>, <a href="#rfc.xref.TRACE.4">11.1</a></li> 5127 5133 </ul> 5128 5134 </li> 5129 <li>MIME-Version header field <a href="#rfc.xref.mime-version.1">1 1.3.2</a>, <a href="#rfc.iref.m.10"><b>A.1</b></a></li>5135 <li>MIME-Version header field <a href="#rfc.xref.mime-version.1">10.3.2</a>, <a href="#rfc.iref.m.10"><b>A.1</b></a></li> 5130 5136 </ul> 5131 5137 </li> 5132 5138 <li><a id="rfc.index.O" href="#rfc.index.O"><b>O</b></a><ul> 5133 <li>OPTIONS method <a href="#rfc.xref.OPTIONS.1">5.1</a>, <a href="#rfc.iref.o.1"><b>5.3.7</b></a>, <a href="#rfc.xref.OPTIONS.2"> 10.14</a>, <a href="#rfc.xref.OPTIONS.3">11.1.3</a></li>5139 <li>OPTIONS method <a href="#rfc.xref.OPTIONS.1">5.1</a>, <a href="#rfc.iref.o.1"><b>5.3.7</b></a>, <a href="#rfc.xref.OPTIONS.2">6.1.1</a>, <a href="#rfc.xref.OPTIONS.3">10.1.3</a></li> 5134 5140 </ul> 5135 5141 </li> 5136 5142 <li><a id="rfc.index.P" href="#rfc.index.P"><b>P</b></a><ul> 5137 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1</a>, <a href="#rfc.xref.Part1.2">1.1</a>, <a href="#rfc.xref.Part1.3">1.2</a>, <a href="#rfc.xref.Part1.4">2</a>, <a href="#rfc.xref.Part1.5">2</a>, <a href="#rfc.xref.Part1.6">2</a>, <a href="#rfc.xref.Part1.7">3</a>, <a href="#rfc.xref.Part1.8">3.1</a>, <a href="#rfc.xref.Part1.9"> 4.1</a>, <a href="#rfc.xref.Part1.10">4.2</a>, <a href="#rfc.xref.Part1.11">5.3.6</a>, <a href="#rfc.xref.Part1.12">5.3.7</a>, <a href="#rfc.xref.Part1.13">5.3.8</a>, <a href="#rfc.xref.Part1.14">5.3.8</a>, <a href="#rfc.xref.Part1.15">6.1</a>, <a href="#rfc.xref.Part1.16">6.5</a>, <a href="#rfc.xref.Part1.17">7.2.1</a>, <a href="#rfc.xref.Part1.18">7.2.2</a>, <a href="#rfc.xref.Part1.19">7.3.4</a>, <a href="#rfc.xref.Part1.20">7.3.6</a>, <a href="#rfc.xref.Part1.21">7.5.15</a>, <a href="#rfc.xref.Part1.22">7.6.6</a>, <a href="#rfc.xref.Part1.23">8</a>, <a href="#rfc.xref.Part1.24">9.4</a>, <a href="#rfc.xref.Part1.25">9.4</a>, <a href="#rfc.xref.Part1.26">9.4</a>, <a href="#rfc.xref.Part1.27">10.8</a>, <a href="#rfc.xref.Part1.28">10.11</a>, <a href="#rfc.xref.Part1.29">10.17</a>, <a href="#rfc.xref.Part1.30">10.17</a>, <a href="#rfc.xref.Part1.31">10.18</a>, <a href="#rfc.xref.Part1.32">11.1.2</a>, <a href="#rfc.xref.Part1.33">11.3.1</a>, <a href="#rfc.xref.Part1.34">11.3.1</a>, <a href="#rfc.xref.Part1.35">11.3.1</a>, <a href="#rfc.xref.Part1.36">11.3.1</a>, <a href="#rfc.xref.Part1.37">11.3.1</a>, <a href="#rfc.xref.Part1.38">11.3.1</a>, <a href="#rfc.xref.Part1.39">11.4</a>, <a href="#rfc.xref.Part1.40">11.4.1</a>, <a href="#rfc.xref.Part1.41">11.4.1</a>, <a href="#rfc.xref.Part1.42">11.4.2</a>, <a href="#rfc.xref.Part1.43">11.4.2</a>, <a href="#rfc.xref.Part1.44">11.4.2</a>, <a href="#rfc.xref.Part1.45">13</a>, <a href="#Part1"><b>14.1</b></a>, <a href="#rfc.xref.Part1.46">C</a>, <a href="#rfc.xref.Part1.47">D</a>, <a href="#rfc.xref.Part1.48">D</a>, <a href="#rfc.xref.Part1.49">D</a>, <a href="#rfc.xref.Part1.50">D</a>, <a href="#rfc.xref.Part1.51">D</a>, <a href="#rfc.xref.Part1.52">D</a>, <a href="#rfc.xref.Part1.53">D</a>, <a href="#rfc.xref.Part1.54">D</a>, <a href="#rfc.xref.Part1.55">D</a>, <a href="#rfc.xref.Part1.56">D</a>, <a href="#rfc.xref.Part1.57">D</a><ul>5143 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1</a>, <a href="#rfc.xref.Part1.2">1.1</a>, <a href="#rfc.xref.Part1.3">1.2</a>, <a href="#rfc.xref.Part1.4">2</a>, <a href="#rfc.xref.Part1.5">2</a>, <a href="#rfc.xref.Part1.6">2</a>, <a href="#rfc.xref.Part1.7">3</a>, <a href="#rfc.xref.Part1.8">3.1</a>, <a href="#rfc.xref.Part1.9">3.2.4</a>, <a href="#rfc.xref.Part1.10">4.1</a>, <a href="#rfc.xref.Part1.11">4.2</a>, <a href="#rfc.xref.Part1.12">5.3.6</a>, <a href="#rfc.xref.Part1.13">5.3.7</a>, <a href="#rfc.xref.Part1.14">5.3.8</a>, <a href="#rfc.xref.Part1.15">5.3.8</a>, <a href="#rfc.xref.Part1.16">6.1</a>, <a href="#rfc.xref.Part1.17">6.1.2</a>, <a href="#rfc.xref.Part1.18">6.5</a>, <a href="#rfc.xref.Part1.19">6.5.3</a>, <a href="#rfc.xref.Part1.20">7.2.1</a>, <a href="#rfc.xref.Part1.21">7.2.2</a>, <a href="#rfc.xref.Part1.22">7.3.4</a>, <a href="#rfc.xref.Part1.23">7.3.6</a>, <a href="#rfc.xref.Part1.24">7.5.15</a>, <a href="#rfc.xref.Part1.25">7.6.6</a>, <a href="#rfc.xref.Part1.26">8</a>, <a href="#rfc.xref.Part1.27">8.4.2</a>, <a href="#rfc.xref.Part1.28">8.4.2</a>, <a href="#rfc.xref.Part1.29">9.4</a>, <a href="#rfc.xref.Part1.30">9.4</a>, <a href="#rfc.xref.Part1.31">9.4</a>, <a href="#rfc.xref.Part1.32">10.1.2</a>, <a href="#rfc.xref.Part1.33">10.3.1</a>, <a href="#rfc.xref.Part1.34">10.3.1</a>, <a href="#rfc.xref.Part1.35">10.3.1</a>, <a href="#rfc.xref.Part1.36">10.3.1</a>, <a href="#rfc.xref.Part1.37">10.3.1</a>, <a href="#rfc.xref.Part1.38">10.3.1</a>, <a href="#rfc.xref.Part1.39">10.4</a>, <a href="#rfc.xref.Part1.40">10.4.1</a>, <a href="#rfc.xref.Part1.41">10.4.1</a>, <a href="#rfc.xref.Part1.42">10.4.2</a>, <a href="#rfc.xref.Part1.43">10.4.2</a>, <a href="#rfc.xref.Part1.44">10.4.2</a>, <a href="#rfc.xref.Part1.45">12</a>, <a href="#Part1"><b>13.1</b></a>, <a href="#rfc.xref.Part1.46">C</a>, <a href="#rfc.xref.Part1.47">D</a>, <a href="#rfc.xref.Part1.48">D</a>, <a href="#rfc.xref.Part1.49">D</a>, <a href="#rfc.xref.Part1.50">D</a>, <a href="#rfc.xref.Part1.51">D</a>, <a href="#rfc.xref.Part1.52">D</a>, <a href="#rfc.xref.Part1.53">D</a>, <a href="#rfc.xref.Part1.54">D</a>, <a href="#rfc.xref.Part1.55">D</a>, <a href="#rfc.xref.Part1.56">D</a>, <a href="#rfc.xref.Part1.57">D</a><ul> 5138 5144 <li><em>Section 1.2</em> <a href="#rfc.xref.Part1.3">1.2</a></li> 5139 <li><em>Section 2.3</em> <a href="#rfc.xref.Part1. 19">7.3.4</a></li>5145 <li><em>Section 2.3</em> <a href="#rfc.xref.Part1.22">7.3.4</a></li> 5140 5146 <li><em>Section 2.5</em> <a href="#rfc.xref.Part1.2">1.1</a></li> 5141 <li><em>Section 2.6</em> <a href="#rfc.xref.Part1.2 2">7.6.6</a></li>5147 <li><em>Section 2.6</em> <a href="#rfc.xref.Part1.25">7.6.6</a></li> 5142 5148 <li><em>Section 2.7</em> <a href="#rfc.xref.Part1.4">2</a>, <a href="#rfc.xref.Part1.54">D</a>, <a href="#rfc.xref.Part1.56">D</a>, <a href="#rfc.xref.Part1.57">D</a></li> 5143 <li><em>Section 3.2</em> <a href="#rfc.xref.Part1. 29">10.17</a>, <a href="#rfc.xref.Part1.31">10.18</a>, <a href="#rfc.xref.Part1.33">11.3.1</a>, <a href="#rfc.xref.Part1.36">11.3.1</a></li>5149 <li><em>Section 3.2</em> <a href="#rfc.xref.Part1.19">6.5.3</a>, <a href="#rfc.xref.Part1.27">8.4.2</a>, <a href="#rfc.xref.Part1.33">10.3.1</a>, <a href="#rfc.xref.Part1.36">10.3.1</a></li> 5144 5150 <li><em>Section 3.2.1</em> <a href="#rfc.xref.Part1.48">D</a>, <a href="#rfc.xref.Part1.49">D</a>, <a href="#rfc.xref.Part1.50">D</a></li> 5145 <li><em>Section 3.2.4</em> <a href="#rfc.xref.Part1.35">1 1.3.1</a>, <a href="#rfc.xref.Part1.51">D</a>, <a href="#rfc.xref.Part1.52">D</a>, <a href="#rfc.xref.Part1.53">D</a>, <a href="#rfc.xref.Part1.55">D</a></li>5146 <li><em>Section 3.3</em> <a href="#rfc.xref.Part1.7">3</a>, <a href="#rfc.xref.Part1.1 0">4.2</a>, <a href="#rfc.xref.Part1.20">7.3.6</a>, <a href="#rfc.xref.Part1.32">11.1.2</a></li>5147 <li><em>Section 3.3.2</em> <a href="#rfc.xref.Part1. 9">4.1</a></li>5148 <li><em>Section 4</em> <a href="#rfc.xref.Part1.40">1 1.4.1</a></li>5149 <li><em>Section 4.1</em> <a href="#rfc.xref.Part1.38">1 1.3.1</a></li>5150 <li><em>Section 4.2.1</em> <a href="#rfc.xref.Part1.2 4">9.4</a>, <a href="#rfc.xref.Part1.42">11.4.2</a></li>5151 <li><em>Section 4.2</em> <a href="#rfc.xref.Part1.39">1 1.4</a>, <a href="#rfc.xref.Part1.41">11.4.1</a></li>5152 <li><em>Section 4.2.2</em> <a href="#rfc.xref.Part1. 25">9.4</a>, <a href="#rfc.xref.Part1.43">11.4.2</a></li>5153 <li><em>Section 4.2.3</em> <a href="#rfc.xref.Part1. 26">9.4</a>, <a href="#rfc.xref.Part1.44">11.4.2</a></li>5154 <li><em>Section 4.3</em> <a href="#rfc.xref.Part1.1 6">6.5</a></li>5155 <li><em>Section 5.3</em> <a href="#rfc.xref.Part1.5">2</a>, <a href="#rfc.xref.Part1.1 1">5.3.6</a>, <a href="#rfc.xref.Part1.12">5.3.7</a></li>5156 <li><em>Section 5.4</em> <a href="#rfc.xref.Part1.1 5">6.1</a></li>5157 <li><em>Section 5.5</em> <a href="#rfc.xref.Part1.6">2</a>, <a href="#rfc.xref.Part1.8">3.1</a>, <a href="#rfc.xref.Part1. 23">8</a>, <a href="#rfc.xref.Part1.27">10.8</a></li>5158 <li><em>Section 5.7</em> <a href="#rfc.xref.Part1.1 3">5.3.8</a>, <a href="#rfc.xref.Part1.30">10.17</a>, <a href="#rfc.xref.Part1.46">C</a></li>5159 <li><em>Section 6.1</em> <a href="#rfc.xref.Part1.37">1 1.3.1</a></li>5160 <li><em>Section 6.3</em> <a href="#rfc.xref.Part1.17"> 7.2.1</a>, <a href="#rfc.xref.Part1.28">10.11</a></li>5161 <li><em>Section 6.4</em> <a href="#rfc.xref.Part1. 18">7.2.2</a>, <a href="#rfc.xref.Part1.21">7.5.15</a></li>5162 <li><em>Section 7.3.1</em> <a href="#rfc.xref.Part1.1 4">5.3.8</a></li>5163 <li><em>Section 9</em> <a href="#rfc.xref.Part1.45">1 3</a></li>5164 <li><em>Appendix B</em> <a href="#rfc.xref.Part1.34">1 1.3.1</a></li>5151 <li><em>Section 3.2.4</em> <a href="#rfc.xref.Part1.35">10.3.1</a>, <a href="#rfc.xref.Part1.51">D</a>, <a href="#rfc.xref.Part1.52">D</a>, <a href="#rfc.xref.Part1.53">D</a>, <a href="#rfc.xref.Part1.55">D</a></li> 5152 <li><em>Section 3.3</em> <a href="#rfc.xref.Part1.7">3</a>, <a href="#rfc.xref.Part1.11">4.2</a>, <a href="#rfc.xref.Part1.23">7.3.6</a>, <a href="#rfc.xref.Part1.32">10.1.2</a></li> 5153 <li><em>Section 3.3.2</em> <a href="#rfc.xref.Part1.10">4.1</a></li> 5154 <li><em>Section 4</em> <a href="#rfc.xref.Part1.40">10.4.1</a></li> 5155 <li><em>Section 4.1</em> <a href="#rfc.xref.Part1.38">10.3.1</a></li> 5156 <li><em>Section 4.2.1</em> <a href="#rfc.xref.Part1.29">9.4</a>, <a href="#rfc.xref.Part1.42">10.4.2</a></li> 5157 <li><em>Section 4.2</em> <a href="#rfc.xref.Part1.39">10.4</a>, <a href="#rfc.xref.Part1.41">10.4.1</a></li> 5158 <li><em>Section 4.2.2</em> <a href="#rfc.xref.Part1.30">9.4</a>, <a href="#rfc.xref.Part1.43">10.4.2</a></li> 5159 <li><em>Section 4.2.3</em> <a href="#rfc.xref.Part1.31">9.4</a>, <a href="#rfc.xref.Part1.44">10.4.2</a></li> 5160 <li><em>Section 4.3</em> <a href="#rfc.xref.Part1.18">6.5</a></li> 5161 <li><em>Section 5.3</em> <a href="#rfc.xref.Part1.5">2</a>, <a href="#rfc.xref.Part1.12">5.3.6</a>, <a href="#rfc.xref.Part1.13">5.3.7</a></li> 5162 <li><em>Section 5.4</em> <a href="#rfc.xref.Part1.16">6.1</a></li> 5163 <li><em>Section 5.5</em> <a href="#rfc.xref.Part1.6">2</a>, <a href="#rfc.xref.Part1.8">3.1</a>, <a href="#rfc.xref.Part1.9">3.2.4</a>, <a href="#rfc.xref.Part1.26">8</a></li> 5164 <li><em>Section 5.7</em> <a href="#rfc.xref.Part1.14">5.3.8</a>, <a href="#rfc.xref.Part1.28">8.4.2</a>, <a href="#rfc.xref.Part1.46">C</a></li> 5165 <li><em>Section 6.1</em> <a href="#rfc.xref.Part1.37">10.3.1</a></li> 5166 <li><em>Section 6.3</em> <a href="#rfc.xref.Part1.17">6.1.2</a>, <a href="#rfc.xref.Part1.20">7.2.1</a></li> 5167 <li><em>Section 6.4</em> <a href="#rfc.xref.Part1.21">7.2.2</a>, <a href="#rfc.xref.Part1.24">7.5.15</a></li> 5168 <li><em>Section 7.3.1</em> <a href="#rfc.xref.Part1.15">5.3.8</a></li> 5169 <li><em>Section 9</em> <a href="#rfc.xref.Part1.45">12</a></li> 5170 <li><em>Appendix B</em> <a href="#rfc.xref.Part1.34">10.3.1</a></li> 5165 5171 </ul> 5166 5172 </li> 5167 <li><em>Part4</em> <a href="#rfc.xref.Part4.1">3. 2</a>, <a href="#rfc.xref.Part4.2">3.2</a>, <a href="#rfc.xref.Part4.3">5.3.1</a>, <a href="#rfc.xref.Part4.4">6.2</a>, <a href="#rfc.xref.Part4.5">6.2</a>, <a href="#rfc.xref.Part4.6">6.2</a>, <a href="#rfc.xref.Part4.7">6.2</a>, <a href="#rfc.xref.Part4.8">6.2</a>, <a href="#rfc.xref.Part4.9">7.1</a>, <a href="#rfc.xref.Part4.10">7.1</a>, <a href="#rfc.xref.Part4.11">7.1</a>, <a href="#rfc.xref.Part4.12">7.3.2</a>, <a href="#rfc.xref.Part4.13">7.4</a>, <a href="#Part4"><b>14.1</b></a>, <a href="#rfc.xref.Part4.14">F.2</a><ul>5168 <li><em>Section 2.2</em> <a href="#rfc.xref.Part4.2">3. 2</a></li>5169 <li><em>Section 2.3</em> <a href="#rfc.xref.Part4.1">3. 2</a>, <a href="#rfc.xref.Part4.12">7.3.2</a></li>5173 <li><em>Part4</em> <a href="#rfc.xref.Part4.1">3.3</a>, <a href="#rfc.xref.Part4.2">3.3</a>, <a href="#rfc.xref.Part4.3">5.3.1</a>, <a href="#rfc.xref.Part4.4">6.2</a>, <a href="#rfc.xref.Part4.5">6.2</a>, <a href="#rfc.xref.Part4.6">6.2</a>, <a href="#rfc.xref.Part4.7">6.2</a>, <a href="#rfc.xref.Part4.8">6.2</a>, <a href="#rfc.xref.Part4.9">7.1</a>, <a href="#rfc.xref.Part4.10">7.1</a>, <a href="#rfc.xref.Part4.11">7.1</a>, <a href="#rfc.xref.Part4.12">7.3.2</a>, <a href="#rfc.xref.Part4.13">7.4</a>, <a href="#Part4"><b>13.1</b></a>, <a href="#rfc.xref.Part4.14">F.2</a><ul> 5174 <li><em>Section 2.2</em> <a href="#rfc.xref.Part4.2">3.3</a></li> 5175 <li><em>Section 2.3</em> <a href="#rfc.xref.Part4.1">3.3</a>, <a href="#rfc.xref.Part4.12">7.3.2</a></li> 5170 5176 <li><em>Section 3.1</em> <a href="#rfc.xref.Part4.5">6.2</a></li> 5171 5177 <li><em>Section 3.2</em> <a href="#rfc.xref.Part4.6">6.2</a></li> … … 5177 5183 </ul> 5178 5184 </li> 5179 <li><em>Part5</em> <a href="#rfc.xref.Part5.1">4.1</a>, <a href="#rfc.xref.Part5.2">5.3.1</a>, <a href="#rfc.xref.Part5.3">5.3.1</a>, <a href="#rfc.xref.Part5.4">5.3.4</a>, <a href="#rfc.xref.Part5.5">6.1</a>, <a href="#rfc.xref.Part5.6">6.2</a>, <a href="#rfc.xref.Part5.7">7.1</a>, <a href="#rfc.xref.Part5.8">7.1</a>, <a href="#rfc.xref.Part5.9">7.1</a>, <a href="#rfc.xref.Part5.10">8.4</a>, <a href="#Part5"><b>1 4.1</b></a><ul>5185 <li><em>Part5</em> <a href="#rfc.xref.Part5.1">4.1</a>, <a href="#rfc.xref.Part5.2">5.3.1</a>, <a href="#rfc.xref.Part5.3">5.3.1</a>, <a href="#rfc.xref.Part5.4">5.3.4</a>, <a href="#rfc.xref.Part5.5">6.1</a>, <a href="#rfc.xref.Part5.6">6.2</a>, <a href="#rfc.xref.Part5.7">7.1</a>, <a href="#rfc.xref.Part5.8">7.1</a>, <a href="#rfc.xref.Part5.9">7.1</a>, <a href="#rfc.xref.Part5.10">8.4</a>, <a href="#Part5"><b>13.1</b></a><ul> 5180 5186 <li><em>Section 3</em> <a href="#rfc.xref.Part5.7">7.1</a></li> 5181 5187 <li><em>Section 3.1</em> <a href="#rfc.xref.Part5.8">7.1</a></li> … … 5187 5193 </ul> 5188 5194 </li> 5189 <li><em>Part6</em> <a href="#rfc.xref.Part6.1">3.2</a>, <a href="#rfc.xref.Part6.2">3. 4.1</a>, <a href="#rfc.xref.Part6.3">5.2.3</a>, <a href="#rfc.xref.Part6.4">5.3.1</a>, <a href="#rfc.xref.Part6.5">5.3.2</a>, <a href="#rfc.xref.Part6.6">5.3.3</a>, <a href="#rfc.xref.Part6.7">5.3.4</a>, <a href="#rfc.xref.Part6.8">5.3.5</a>, <a href="#rfc.xref.Part6.9">7.3.1</a>, <a href="#rfc.xref.Part6.10">7.3.4</a>, <a href="#rfc.xref.Part6.11">7.3.4</a>, <a href="#rfc.xref.Part6.12">7.3.4</a>, <a href="#rfc.xref.Part6.13">7.4.1</a>, <a href="#rfc.xref.Part6.14">7.4.2</a>, <a href="#rfc.xref.Part6.15">7.5.9</a>, <a href="#rfc.xref.Part6.16">8.2</a>, <a href="#rfc.xref.Part6.17">8.2</a>, <a href="#rfc.xref.Part6.18">11.2.2</a>, <a href="#rfc.xref.Part6.19">11.3.1</a>, <a href="#Part6"><b>14.1</b></a><ul>5195 <li><em>Part6</em> <a href="#rfc.xref.Part6.1">3.2</a>, <a href="#rfc.xref.Part6.2">3.5.1</a>, <a href="#rfc.xref.Part6.3">5.2.3</a>, <a href="#rfc.xref.Part6.4">5.3.1</a>, <a href="#rfc.xref.Part6.5">5.3.2</a>, <a href="#rfc.xref.Part6.6">5.3.3</a>, <a href="#rfc.xref.Part6.7">5.3.4</a>, <a href="#rfc.xref.Part6.8">5.3.5</a>, <a href="#rfc.xref.Part6.9">7.3.1</a>, <a href="#rfc.xref.Part6.10">7.3.4</a>, <a href="#rfc.xref.Part6.11">7.3.4</a>, <a href="#rfc.xref.Part6.12">7.3.4</a>, <a href="#rfc.xref.Part6.13">7.4.1</a>, <a href="#rfc.xref.Part6.14">7.4.2</a>, <a href="#rfc.xref.Part6.15">7.5.9</a>, <a href="#rfc.xref.Part6.16">8.2</a>, <a href="#rfc.xref.Part6.17">8.2</a>, <a href="#rfc.xref.Part6.18">10.2.2</a>, <a href="#rfc.xref.Part6.19">10.3.1</a>, <a href="#Part6"><b>13.1</b></a><ul> 5190 5196 <li><em>Section 4.1.1</em> <a href="#rfc.xref.Part6.6">5.3.3</a></li> 5191 5197 <li><em>Section 4.1.2</em> <a href="#rfc.xref.Part6.9">7.3.1</a>, <a href="#rfc.xref.Part6.12">7.3.4</a>, <a href="#rfc.xref.Part6.13">7.4.1</a>, <a href="#rfc.xref.Part6.14">7.4.2</a>, <a href="#rfc.xref.Part6.15">7.5.9</a></li> … … 5195 5201 <li><em>Section 7.2</em> <a href="#rfc.xref.Part6.10">7.3.4</a></li> 5196 5202 <li><em>Section 7.3</em> <a href="#rfc.xref.Part6.1">3.2</a></li> 5197 <li><em>Section 7.5</em> <a href="#rfc.xref.Part6.2">3. 4.1</a>, <a href="#rfc.xref.Part6.17">8.2</a></li>5203 <li><em>Section 7.5</em> <a href="#rfc.xref.Part6.2">3.5.1</a>, <a href="#rfc.xref.Part6.17">8.2</a></li> 5198 5204 <li><em>Section 7.6</em> <a href="#rfc.xref.Part6.11">7.3.4</a></li> 5199 5205 </ul> 5200 5206 </li> 5201 <li><em>Part7</em> <a href="#rfc.xref.Part7.1">6.4</a>, <a href="#rfc.xref.Part7.2">6.4</a>, <a href="#rfc.xref.Part7.3">7.1</a>, <a href="#rfc.xref.Part7.4">7.1</a>, <a href="#rfc.xref.Part7.5">7.1</a>, <a href="#rfc.xref.Part7.6">8.3</a>, <a href="#rfc.xref.Part7.7">8.3</a>, <a href="#Part7"><b>1 4.1</b></a><ul>5207 <li><em>Part7</em> <a href="#rfc.xref.Part7.1">6.4</a>, <a href="#rfc.xref.Part7.2">6.4</a>, <a href="#rfc.xref.Part7.3">7.1</a>, <a href="#rfc.xref.Part7.4">7.1</a>, <a href="#rfc.xref.Part7.5">7.1</a>, <a href="#rfc.xref.Part7.6">8.3</a>, <a href="#rfc.xref.Part7.7">8.3</a>, <a href="#Part7"><b>13.1</b></a><ul> 5202 5208 <li><em>Section 3</em> <a href="#rfc.xref.Part7.3">7.1</a></li> 5203 5209 <li><em>Section 3.1</em> <a href="#rfc.xref.Part7.4">7.1</a></li> … … 5210 5216 </li> 5211 5217 <li>payload <a href="#rfc.iref.p.1">4</a></li> 5212 <li>POST method <a href="#rfc.xref.POST.1">5.1</a>, <a href="#rfc.iref.p.2"><b>5.3.3</b></a>, <a href="#rfc.xref.POST.2">1 1.1.3</a>, <a href="#rfc.xref.POST.3">C</a></li>5213 <li>PUT method <a href="#rfc.xref.PUT.1">5.1</a>, <a href="#rfc.iref.p.3"><b>5.3.4</b></a>, <a href="#rfc.xref.PUT.2">1 1.1.3</a>, <a href="#rfc.xref.PUT.3">C</a></li>5218 <li>POST method <a href="#rfc.xref.POST.1">5.1</a>, <a href="#rfc.iref.p.2"><b>5.3.3</b></a>, <a href="#rfc.xref.POST.2">10.1.3</a>, <a href="#rfc.xref.POST.3">C</a></li> 5219 <li>PUT method <a href="#rfc.xref.PUT.1">5.1</a>, <a href="#rfc.iref.p.3"><b>5.3.4</b></a>, <a href="#rfc.xref.PUT.2">10.1.3</a>, <a href="#rfc.xref.PUT.3">C</a></li> 5214 5220 </ul> 5215 5221 </li> 5216 5222 <li><a id="rfc.index.R" href="#rfc.index.R"><b>R</b></a><ul> 5217 <li>Referer header field <a href="#rfc.xref.header.referer.1">6.5</a>, <a href="#rfc.iref.r.2"><b> 10.15</b></a>, <a href="#rfc.xref.header.referer.2">11.3.2</a>, <a href="#rfc.xref.header.referer.3">C</a></li>5223 <li>Referer header field <a href="#rfc.xref.header.referer.1">6.5</a>, <a href="#rfc.iref.r.2"><b>6.5.2</b></a>, <a href="#rfc.xref.header.referer.2">10.3.2</a>, <a href="#rfc.xref.header.referer.3">C</a></li> 5218 5224 <li>representation <a href="#rfc.iref.r.1">3</a></li> 5219 <li><em>REST</em> <a href="#rfc.xref.REST.1">5.1</a>, <a href="#REST"><b>1 4.2</b></a></li>5220 <li>Retry-After header field <a href="#rfc.xref.header.retry-after.1">7.6.4</a>, <a href="#rfc.xref.header.retry-after.2">8.1</a>, <a href="#rfc.iref.r.3"><b> 10.16</b></a>, <a href="#rfc.xref.header.retry-after.3">11.3.2</a></li>5221 <li><em>RFC1123</em> <a href="#rfc.xref.RFC1123.1">9.1</a>, <a href="#rfc.xref.RFC1123.2">9.1</a>, <a href="#RFC1123"><b>1 4.2</b></a><ul>5225 <li><em>REST</em> <a href="#rfc.xref.REST.1">5.1</a>, <a href="#REST"><b>13.2</b></a></li> 5226 <li>Retry-After header field <a href="#rfc.xref.header.retry-after.1">7.6.4</a>, <a href="#rfc.xref.header.retry-after.2">8.1</a>, <a href="#rfc.iref.r.3"><b>8.1.2</b></a>, <a href="#rfc.xref.header.retry-after.3">10.3.2</a></li> 5227 <li><em>RFC1123</em> <a href="#rfc.xref.RFC1123.1">9.1</a>, <a href="#rfc.xref.RFC1123.2">9.1</a>, <a href="#RFC1123"><b>13.2</b></a><ul> 5222 5228 <li><em>Section 5.2.14</em> <a href="#rfc.xref.RFC1123.2">9.1</a></li> 5223 5229 </ul> 5224 5230 </li> 5225 <li><em>RFC1945</em> <a href="#rfc.xref.RFC1945.1">7.4</a>, <a href="#RFC1945"><b>1 4.2</b></a>, <a href="#rfc.xref.RFC1945.2">B</a><ul>5231 <li><em>RFC1945</em> <a href="#rfc.xref.RFC1945.1">7.4</a>, <a href="#RFC1945"><b>13.2</b></a>, <a href="#rfc.xref.RFC1945.2">B</a><ul> 5226 5232 <li><em>Section 9.3</em> <a href="#rfc.xref.RFC1945.1">7.4</a></li> 5227 5233 </ul> 5228 5234 </li> 5229 <li><em>RFC1950</em> <a href="#rfc.xref.RFC1950.1">1 1.4.2</a>, <a href="#RFC1950"><b>14.1</b></a></li>5230 <li><em>RFC1951</em> <a href="#rfc.xref.RFC1951.1">1 1.4.2</a>, <a href="#RFC1951"><b>14.1</b></a></li>5231 <li><em>RFC1952</em> <a href="#rfc.xref.RFC1952.1">1 1.4.2</a>, <a href="#RFC1952"><b>14.1</b></a></li>5232 <li><em>RFC2045</em> <a href="#RFC2045"><b>1 4.1</b></a>, <a href="#rfc.xref.RFC2045.1">A</a>, <a href="#rfc.xref.RFC2045.2">A.1</a></li>5233 <li><em>RFC2046</em> <a href="#rfc.xref.RFC2046.1">3. 3</a>, <a href="#rfc.xref.RFC2046.2">9.5</a>, <a href="#rfc.xref.RFC2046.3">9.5.2</a>, <a href="#RFC2046"><b>14.1</b></a>, <a href="#rfc.xref.RFC2046.4">A.2</a><ul>5234 <li><em>Section 4.5.1</em> <a href="#rfc.xref.RFC2046.1">3. 3</a></li>5235 <li><em>RFC1950</em> <a href="#rfc.xref.RFC1950.1">10.4.2</a>, <a href="#RFC1950"><b>13.1</b></a></li> 5236 <li><em>RFC1951</em> <a href="#rfc.xref.RFC1951.1">10.4.2</a>, <a href="#RFC1951"><b>13.1</b></a></li> 5237 <li><em>RFC1952</em> <a href="#rfc.xref.RFC1952.1">10.4.2</a>, <a href="#RFC1952"><b>13.1</b></a></li> 5238 <li><em>RFC2045</em> <a href="#RFC2045"><b>13.1</b></a>, <a href="#rfc.xref.RFC2045.1">A</a>, <a href="#rfc.xref.RFC2045.2">A.1</a></li> 5239 <li><em>RFC2046</em> <a href="#rfc.xref.RFC2046.1">3.4</a>, <a href="#rfc.xref.RFC2046.2">9.5</a>, <a href="#rfc.xref.RFC2046.3">9.5.2</a>, <a href="#RFC2046"><b>13.1</b></a>, <a href="#rfc.xref.RFC2046.4">A.2</a><ul> 5240 <li><em>Section 4.5.1</em> <a href="#rfc.xref.RFC2046.1">3.4</a></li> 5235 5241 <li><em>Section 5.1.1</em> <a href="#rfc.xref.RFC2046.3">9.5.2</a></li> 5236 5242 </ul> 5237 5243 </li> 5238 <li><em>RFC2049</em> <a href="#RFC2049"><b>1 4.2</b></a>, <a href="#rfc.xref.RFC2049.1">A.2</a><ul>5244 <li><em>RFC2049</em> <a href="#RFC2049"><b>13.2</b></a>, <a href="#rfc.xref.RFC2049.1">A.2</a><ul> 5239 5245 <li><em>Section 4</em> <a href="#rfc.xref.RFC2049.1">A.2</a></li> 5240 5246 </ul> 5241 5247 </li> 5242 <li><em>RFC2068</em> <a href="#rfc.xref.RFC2068.1">7.4</a>, <a href="#rfc.xref.RFC2068.2">7.4</a>, <a href="#RFC2068"><b>1 4.2</b></a>, <a href="#rfc.xref.RFC2068.3">B</a><ul>5248 <li><em>RFC2068</em> <a href="#rfc.xref.RFC2068.1">7.4</a>, <a href="#rfc.xref.RFC2068.2">7.4</a>, <a href="#RFC2068"><b>13.2</b></a>, <a href="#rfc.xref.RFC2068.3">B</a><ul> 5243 5249 <li><em>Section 10.3</em> <a href="#rfc.xref.RFC2068.2">7.4</a></li> 5244 5250 <li><em>Section 10.3.4</em> <a href="#rfc.xref.RFC2068.1">7.4</a></li> 5245 5251 </ul> 5246 5252 </li> 5247 <li><em>RFC2076</em> <a href="#RFC2076"><b>1 4.2</b></a>, <a href="#rfc.xref.RFC2076.1">B</a></li>5248 <li><em>RFC2119</em> <a href="#rfc.xref.RFC2119.1">1.1</a>, <a href="#RFC2119"><b>1 4.1</b></a></li>5249 <li><em>RFC2277</em> <a href="#rfc.xref.RFC2277.1">9.3</a>, <a href="#RFC2277"><b>1 4.2</b></a></li>5250 <li><em>RFC2295</em> <a href="#rfc.xref.RFC2295.1">3. 4</a>, <a href="#RFC2295"><b>14.2</b></a></li>5251 <li><em>RFC2388</em> <a href="#rfc.xref.RFC2388.1">9.5.2</a>, <a href="#RFC2388"><b>1 4.2</b></a></li>5252 <li><em>RFC2557</em> <a href="#rfc.xref.RFC2557.1"> 10.8</a>, <a href="#RFC2557"><b>14.2</b></a>, <a href="#rfc.xref.RFC2557.2">A.6</a><ul>5253 <li><em>Section 4</em> <a href="#rfc.xref.RFC2557.1"> 10.8</a></li>5253 <li><em>RFC2076</em> <a href="#RFC2076"><b>13.2</b></a>, <a href="#rfc.xref.RFC2076.1">B</a></li> 5254 <li><em>RFC2119</em> <a href="#rfc.xref.RFC2119.1">1.1</a>, <a href="#RFC2119"><b>13.1</b></a></li> 5255 <li><em>RFC2277</em> <a href="#rfc.xref.RFC2277.1">9.3</a>, <a href="#RFC2277"><b>13.2</b></a></li> 5256 <li><em>RFC2295</em> <a href="#rfc.xref.RFC2295.1">3.5</a>, <a href="#RFC2295"><b>13.2</b></a></li> 5257 <li><em>RFC2388</em> <a href="#rfc.xref.RFC2388.1">9.5.2</a>, <a href="#RFC2388"><b>13.2</b></a></li> 5258 <li><em>RFC2557</em> <a href="#rfc.xref.RFC2557.1">3.2.4</a>, <a href="#RFC2557"><b>13.2</b></a>, <a href="#rfc.xref.RFC2557.2">A.6</a><ul> 5259 <li><em>Section 4</em> <a href="#rfc.xref.RFC2557.1">3.2.4</a></li> 5254 5260 </ul> 5255 5261 </li> 5256 <li><em>RFC2616</em> <a href="#rfc.xref.RFC2616.1"> 7.4</a>, <a href="#rfc.xref.RFC2616.2">10.4</a>, <a href="#RFC2616"><b>14.2</b></a>, <a href="#rfc.xref.RFC2616.3">F.1</a><ul>5257 <li><em>Section 10.3.8</em> <a href="#rfc.xref.RFC2616. 1">7.4</a></li>5258 <li><em>Section 14.4</em> <a href="#rfc.xref.RFC2616. 2">10.4</a></li>5262 <li><em>RFC2616</em> <a href="#rfc.xref.RFC2616.1">6.3.5</a>, <a href="#rfc.xref.RFC2616.2">7.4</a>, <a href="#RFC2616"><b>13.2</b></a>, <a href="#rfc.xref.RFC2616.3">F.1</a><ul> 5263 <li><em>Section 10.3.8</em> <a href="#rfc.xref.RFC2616.2">7.4</a></li> 5264 <li><em>Section 14.4</em> <a href="#rfc.xref.RFC2616.1">6.3.5</a></li> 5259 5265 </ul> 5260 5266 </li> 5261 <li><em>RFC2817</em> <a href="#rfc.xref.RFC2817.1">1 1.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>5262 <li><em>Section 7.1</em> <a href="#rfc.xref.RFC2817.1">1 1.2</a>, <a href="#rfc.xref.RFC2817.3">C</a></li>5267 <li><em>RFC2817</em> <a href="#rfc.xref.RFC2817.1">10.2</a>, <a href="#RFC2817"><b>13.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> 5268 <li><em>Section 7.1</em> <a href="#rfc.xref.RFC2817.1">10.2</a>, <a href="#rfc.xref.RFC2817.3">C</a></li> 5263 5269 </ul> 5264 5270 </li> 5265 <li><em>RFC3629</em> <a href="#rfc.xref.RFC3629.1">9.3</a>, <a href="#RFC3629"><b>1 4.2</b></a></li>5266 <li><em>RFC3864</em> <a href="#rfc.xref.RFC3864.1">1 1.3</a>, <a href="#rfc.xref.RFC3864.2">11.3.1</a>, <a href="#RFC3864"><b>14.2</b></a><ul>5267 <li><em>Section 4.1</em> <a href="#rfc.xref.RFC3864.2">1 1.3.1</a></li>5271 <li><em>RFC3629</em> <a href="#rfc.xref.RFC3629.1">9.3</a>, <a href="#RFC3629"><b>13.2</b></a></li> 5272 <li><em>RFC3864</em> <a href="#rfc.xref.RFC3864.1">10.3</a>, <a href="#rfc.xref.RFC3864.2">10.3.1</a>, <a href="#RFC3864"><b>13.2</b></a><ul> 5273 <li><em>Section 4.1</em> <a href="#rfc.xref.RFC3864.2">10.3.1</a></li> 5268 5274 </ul> 5269 5275 </li> 5270 <li><em>RFC3986</em> <a href="#rfc.xref.RFC3986.1"> 10.13</a>, <a href="#rfc.xref.RFC3986.2">10.13</a>, <a href="#RFC3986"><b>14.1</b></a><ul>5271 <li><em>Section 4.2</em> <a href="#rfc.xref.RFC3986.1"> 10.13</a></li>5272 <li><em>Section 5</em> <a href="#rfc.xref.RFC3986.2"> 10.13</a></li>5276 <li><em>RFC3986</em> <a href="#rfc.xref.RFC3986.1">8.1.1</a>, <a href="#rfc.xref.RFC3986.2">8.1.1</a>, <a href="#RFC3986"><b>13.1</b></a><ul> 5277 <li><em>Section 4.2</em> <a href="#rfc.xref.RFC3986.1">8.1.1</a></li> 5278 <li><em>Section 5</em> <a href="#rfc.xref.RFC3986.2">8.1.1</a></li> 5273 5279 </ul> 5274 5280 </li> 5275 <li><em>RFC4288</em> <a href="#rfc.xref.RFC4288.1">9.5</a>, <a href="#RFC4288"><b>1 4.2</b></a></li>5276 <li><em>RFC4647</em> <a href="#rfc.xref.RFC4647.1"> 10.4</a>, <a href="#rfc.xref.RFC4647.2">10.4</a>, <a href="#rfc.xref.RFC4647.3">10.4</a>, <a href="#rfc.xref.RFC4647.4">10.4</a>, <a href="#RFC4647"><b>14.1</b></a><ul>5277 <li><em>Section 2.1</em> <a href="#rfc.xref.RFC4647.1"> 10.4</a></li>5278 <li><em>Section 2.3</em> <a href="#rfc.xref.RFC4647.2"> 10.4</a></li>5279 <li><em>Section 3</em> <a href="#rfc.xref.RFC4647.3"> 10.4</a></li>5280 <li><em>Section 3.3.1</em> <a href="#rfc.xref.RFC4647.4"> 10.4</a></li>5281 <li><em>RFC4288</em> <a href="#rfc.xref.RFC4288.1">9.5</a>, <a href="#RFC4288"><b>13.2</b></a></li> 5282 <li><em>RFC4647</em> <a href="#rfc.xref.RFC4647.1">6.3.5</a>, <a href="#rfc.xref.RFC4647.2">6.3.5</a>, <a href="#rfc.xref.RFC4647.3">6.3.5</a>, <a href="#rfc.xref.RFC4647.4">6.3.5</a>, <a href="#RFC4647"><b>13.1</b></a><ul> 5283 <li><em>Section 2.1</em> <a href="#rfc.xref.RFC4647.1">6.3.5</a></li> 5284 <li><em>Section 2.3</em> <a href="#rfc.xref.RFC4647.2">6.3.5</a></li> 5285 <li><em>Section 3</em> <a href="#rfc.xref.RFC4647.3">6.3.5</a></li> 5286 <li><em>Section 3.3.1</em> <a href="#rfc.xref.RFC4647.4">6.3.5</a></li> 5281 5287 </ul> 5282 5288 </li> 5283 <li><em>RFC5226</em> <a href="#rfc.xref.RFC5226.1">1 1.1.1</a>, <a href="#rfc.xref.RFC5226.2">11.2.1</a>, <a href="#rfc.xref.RFC5226.3">11.4.1</a>, <a href="#RFC5226"><b>14.2</b></a><ul>5284 <li><em>Section 4.1</em> <a href="#rfc.xref.RFC5226.1">1 1.1.1</a>, <a href="#rfc.xref.RFC5226.2">11.2.1</a>, <a href="#rfc.xref.RFC5226.3">11.4.1</a></li>5289 <li><em>RFC5226</em> <a href="#rfc.xref.RFC5226.1">10.1.1</a>, <a href="#rfc.xref.RFC5226.2">10.2.1</a>, <a href="#rfc.xref.RFC5226.3">10.4.1</a>, <a href="#RFC5226"><b>13.2</b></a><ul> 5290 <li><em>Section 4.1</em> <a href="#rfc.xref.RFC5226.1">10.1.1</a>, <a href="#rfc.xref.RFC5226.2">10.2.1</a>, <a href="#rfc.xref.RFC5226.3">10.4.1</a></li> 5285 5291 </ul> 5286 5292 </li> 5287 <li><em>RFC5234</em> <a href="#rfc.xref.RFC5234.1">1.2</a>, <a href="#rfc.xref.RFC5234.2">1 1.3.1</a>, <a href="#RFC5234"><b>14.1</b></a>, <a href="#rfc.xref.RFC5234.3">D</a><ul>5293 <li><em>RFC5234</em> <a href="#rfc.xref.RFC5234.1">1.2</a>, <a href="#rfc.xref.RFC5234.2">10.3.1</a>, <a href="#RFC5234"><b>13.1</b></a>, <a href="#rfc.xref.RFC5234.3">D</a><ul> 5288 5294 <li><em>Appendix B.1</em> <a href="#rfc.xref.RFC5234.3">D</a></li> 5289 5295 </ul> 5290 5296 </li> 5291 <li><em>RFC5322</em> <a href="#rfc.xref.RFC5322.1"> 9.1</a>, <a href="#rfc.xref.RFC5322.2">10.10</a>, <a href="#rfc.xref.RFC5322.3">10.12</a>, <a href="#rfc.xref.RFC5322.4">10.12</a>, <a href="#RFC5322"><b>14.2</b></a>, <a href="#rfc.xref.RFC5322.5">A</a><ul>5292 <li><em>Section 3.3</em> <a href="#rfc.xref.RFC5322. 1">9.1</a></li>5293 <li><em>Section 3.4</em> <a href="#rfc.xref.RFC5322. 3">10.12</a>, <a href="#rfc.xref.RFC5322.4">10.12</a></li>5294 <li><em>Section 3.6.1</em> <a href="#rfc.xref.RFC5322. 2">10.10</a></li>5297 <li><em>RFC5322</em> <a href="#rfc.xref.RFC5322.1">6.5.1</a>, <a href="#rfc.xref.RFC5322.2">6.5.1</a>, <a href="#rfc.xref.RFC5322.3">8.2.1</a>, <a href="#rfc.xref.RFC5322.4">9.1</a>, <a href="#RFC5322"><b>13.2</b></a>, <a href="#rfc.xref.RFC5322.5">A</a><ul> 5298 <li><em>Section 3.3</em> <a href="#rfc.xref.RFC5322.4">9.1</a></li> 5299 <li><em>Section 3.4</em> <a href="#rfc.xref.RFC5322.1">6.5.1</a>, <a href="#rfc.xref.RFC5322.2">6.5.1</a></li> 5300 <li><em>Section 3.6.1</em> <a href="#rfc.xref.RFC5322.3">8.2.1</a></li> 5295 5301 </ul> 5296 5302 </li> 5297 <li><em>RFC5646</em> <a href="#rfc.xref.RFC5646.1">9.6</a>, <a href="#rfc.xref.RFC5646.2">9.6</a>, <a href="#rfc.xref.RFC5646.3">9.6</a>, <a href="#RFC5646"><b>1 4.1</b></a><ul>5303 <li><em>RFC5646</em> <a href="#rfc.xref.RFC5646.1">9.6</a>, <a href="#rfc.xref.RFC5646.2">9.6</a>, <a href="#rfc.xref.RFC5646.3">9.6</a>, <a href="#RFC5646"><b>13.1</b></a><ul> 5298 5304 <li><em>Section 2.1</em> <a href="#rfc.xref.RFC5646.2">9.6</a></li> 5299 5305 </ul> 5300 5306 </li> 5301 <li><em>RFC5789</em> <a href="#rfc.xref.RFC5789.1">5.3.4</a>, <a href="#RFC5789"><b>1 4.2</b></a></li>5302 <li><em>RFC5987</em> <a href="#rfc.xref.RFC5987.1">1 1.3.1</a>, <a href="#RFC5987"><b>14.2</b></a></li>5303 <li><em>RFC6151</em> <a href="#RFC6151"><b>1 4.2</b></a>, <a href="#rfc.xref.RFC6151.1">C</a></li>5304 <li><em>RFC6266</em> <a href="#RFC6266"><b>1 4.2</b></a>, <a href="#rfc.xref.RFC6266.1">B</a>, <a href="#rfc.xref.RFC6266.2">C</a></li>5307 <li><em>RFC5789</em> <a href="#rfc.xref.RFC5789.1">5.3.4</a>, <a href="#RFC5789"><b>13.2</b></a></li> 5308 <li><em>RFC5987</em> <a href="#rfc.xref.RFC5987.1">10.3.1</a>, <a href="#RFC5987"><b>13.2</b></a></li> 5309 <li><em>RFC6151</em> <a href="#RFC6151"><b>13.2</b></a>, <a href="#rfc.xref.RFC6151.1">C</a></li> 5310 <li><em>RFC6266</em> <a href="#RFC6266"><b>13.2</b></a>, <a href="#rfc.xref.RFC6266.1">B</a>, <a href="#rfc.xref.RFC6266.2">C</a></li> 5305 5311 </ul> 5306 5312 </li> 5307 5313 <li><a id="rfc.index.S" href="#rfc.index.S"><b>S</b></a><ul> 5308 5314 <li>safe <a href="#rfc.iref.s.2"><b>5.2.1</b></a></li> 5309 <li>selected representation <a href="#rfc.iref.s.1"><b>3. 2</b></a></li>5310 <li>Server header field <a href="#rfc.xref.header.server.1">8.4</a>, <a href="#rfc.iref.s.44"><b> 10.17</b></a>, <a href="#rfc.xref.header.server.2">11.3.2</a>, <a href="#rfc.xref.header.server.3">12.1</a>, <a href="#rfc.xref.header.server.4">C</a></li>5315 <li>selected representation <a href="#rfc.iref.s.1"><b>3.3</b></a></li> 5316 <li>Server header field <a href="#rfc.xref.header.server.1">8.4</a>, <a href="#rfc.iref.s.44"><b>8.4.2</b></a>, <a href="#rfc.xref.header.server.2">10.3.2</a>, <a href="#rfc.xref.header.server.3">11.1</a>, <a href="#rfc.xref.header.server.4">C</a></li> 5311 5317 <li>Status Codes 5312 5318 <ul> 5313 <li>100 Continue <a href="#rfc.xref.status.100.1">7.1</a>, <a href="#rfc.iref.s.4"><b>7.2.1</b></a>, <a href="#rfc.xref.status.100.2">1 1.2.3</a></li>5314 <li>101 Switching Protocols <a href="#rfc.xref.status.101.1">7.1</a>, <a href="#rfc.iref.s.5"><b>7.2.2</b></a>, <a href="#rfc.xref.status.101.2">1 1.2.3</a></li>5315 <li>200 OK <a href="#rfc.xref.status.200.1">7.1</a>, <a href="#rfc.iref.s.7"><b>7.3.1</b></a>, <a href="#rfc.xref.status.200.2">1 1.2.3</a></li>5316 <li>201 Created <a href="#rfc.xref.status.201.1">7.1</a>, <a href="#rfc.iref.s.8"><b>7.3.2</b></a>, <a href="#rfc.xref.status.201.2">1 1.2.3</a></li>5317 <li>202 Accepted <a href="#rfc.xref.status.202.1">7.1</a>, <a href="#rfc.iref.s.9"><b>7.3.3</b></a>, <a href="#rfc.xref.status.202.2">1 1.2.3</a></li>5318 <li>203 Non-Authoritative Information <a href="#rfc.xref.status.203.1">7.1</a>, <a href="#rfc.iref.s.10"><b>7.3.4</b></a>, <a href="#rfc.xref.status.203.2">1 1.2.3</a>, <a href="#rfc.xref.status.203.3">C</a></li>5319 <li>204 No Content <a href="#rfc.xref.status.204.1">7.1</a>, <a href="#rfc.iref.s.11"><b>7.3.5</b></a>, <a href="#rfc.xref.status.204.2">1 1.2.3</a></li>5320 <li>205 Reset Content <a href="#rfc.xref.status.205.1">7.1</a>, <a href="#rfc.iref.s.12"><b>7.3.6</b></a>, <a href="#rfc.xref.status.205.2">1 1.2.3</a></li>5321 <li>300 Multiple Choices <a href="#rfc.xref.status.300.1">7.1</a>, <a href="#rfc.iref.s.14"><b>7.4.1</b></a>, <a href="#rfc.xref.status.300.2">1 1.2.3</a></li>5322 <li>301 Moved Permanently <a href="#rfc.xref.status.301.1">7.1</a>, <a href="#rfc.iref.s.15"><b>7.4.2</b></a>, <a href="#rfc.xref.status.301.2">1 1.2.3</a>, <a href="#rfc.xref.status.301.3">C</a></li>5323 <li>302 Found <a href="#rfc.xref.status.302.1">7.1</a>, <a href="#rfc.iref.s.16"><b>7.4.3</b></a>, <a href="#rfc.xref.status.302.2">1 1.2.3</a>, <a href="#rfc.xref.status.302.3">C</a></li>5324 <li>303 See Other <a href="#rfc.xref.status.303.1">7.1</a>, <a href="#rfc.iref.s.17"><b>7.4.4</b></a>, <a href="#rfc.xref.status.303.2">1 1.2.3</a></li>5325 <li>305 Use Proxy <a href="#rfc.xref.status.305.1">7.1</a>, <a href="#rfc.iref.s.18"><b>7.4.5</b></a>, <a href="#rfc.xref.status.305.2">1 1.2.3</a>, <a href="#rfc.xref.status.305.3">C</a></li>5326 <li>306 (Unused) <a href="#rfc.iref.s.19"><b>7.4.6</b></a>, <a href="#rfc.xref.status.306.1">1 1.2.3</a></li>5327 <li>307 Temporary Redirect <a href="#rfc.xref.status.307.1">7.1</a>, <a href="#rfc.iref.s.20"><b>7.4.7</b></a>, <a href="#rfc.xref.status.307.2">1 1.2.3</a>, <a href="#rfc.xref.status.307.3">C</a></li>5328 <li>400 Bad Request <a href="#rfc.xref.status.400.1">7.1</a>, <a href="#rfc.iref.s.22"><b>7.5.1</b></a>, <a href="#rfc.xref.status.400.2">1 1.2.3</a></li>5329 <li>402 Payment Required&