Changeset 1649 for draft-ietf-httpbis/latest/p2-semantics.html
- Timestamp:
- 30/03/12 16:31:27 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/p2-semantics.html
r1648 r1649 486 486 <link rel="Chapter" title="3 Header Fields" href="#rfc.section.3"> 487 487 <link rel="Chapter" title="4 Status Codes" href="#rfc.section.4"> 488 <link rel="Chapter" title="5 Representation" href="#rfc.section.5"> 489 <link rel="Chapter" title="6 Protocol Parameters" href="#rfc.section.6"> 490 <link rel="Chapter" title="7 Header Field Definitions" href="#rfc.section.7"> 491 <link rel="Chapter" title="8 IANA Considerations" href="#rfc.section.8"> 492 <link rel="Chapter" title="9 Security Considerations" href="#rfc.section.9"> 493 <link rel="Chapter" title="10 Acknowledgments" href="#rfc.section.10"> 494 <link rel="Chapter" href="#rfc.section.11" title="11 References"> 488 <link rel="Chapter" title="5 Protocol Parameters" href="#rfc.section.5"> 489 <link rel="Chapter" title="6 Payload" href="#rfc.section.6"> 490 <link rel="Chapter" title="7 Representation" href="#rfc.section.7"> 491 <link rel="Chapter" title="8 Content Negotiation" href="#rfc.section.8"> 492 <link rel="Chapter" title="9 Header Field Definitions" href="#rfc.section.9"> 493 <link rel="Chapter" title="10 IANA Considerations" href="#rfc.section.10"> 494 <link rel="Chapter" title="11 Security Considerations" href="#rfc.section.11"> 495 <link rel="Chapter" title="12 Acknowledgments" href="#rfc.section.12"> 496 <link rel="Chapter" href="#rfc.section.13" title="13 References"> 495 497 <link rel="Appendix" title="A Differences between HTTP and MIME" href="#rfc.section.A"> 496 498 <link rel="Appendix" title="B Additional Features" href="#rfc.section.B"> … … 689 691 </ul> 690 692 </li> 691 <li>5. <a href="#representation">Representation</a><ul> 692 <li>5.1 <a href="#identifying.response.associated.with.representation">Identifying the Resource Associated with a Representation</a></li> 693 </ul> 694 </li> 695 <li>6. <a href="#protocol.parameters">Protocol Parameters</a><ul> 696 <li>6.1 <a href="#http.date">Date/Time Formats</a></li> 697 <li>6.2 <a href="#product.tokens">Product Tokens</a></li> 698 <li>6.3 <a href="#character.sets">Character Encodings (charset)</a></li> 699 <li>6.4 <a href="#content.codings">Content Codings</a><ul> 700 <li>6.4.1 <a href="#content.coding.registry">Content Coding Registry</a></li> 693 <li>5. <a href="#protocol.parameters">Protocol Parameters</a><ul> 694 <li>5.1 <a href="#http.date">Date/Time Formats</a></li> 695 <li>5.2 <a href="#product.tokens">Product Tokens</a></li> 696 <li>5.3 <a href="#character.sets">Character Encodings (charset)</a></li> 697 <li>5.4 <a href="#content.codings">Content Codings</a><ul> 698 <li>5.4.1 <a href="#content.coding.registry">Content Coding Registry</a></li> 701 699 </ul> 702 700 </li> 703 <li> 6.5 <a href="#media.types">Media Types</a><ul>704 <li> 6.5.1 <a href="#canonicalization.and.text.defaults">Canonicalization and Text Defaults</a></li>705 <li> 6.5.2 <a href="#multipart.types">Multipart Types</a></li>701 <li>5.5 <a href="#media.types">Media Types</a><ul> 702 <li>5.5.1 <a href="#canonicalization.and.text.defaults">Canonicalization and Text Defaults</a></li> 703 <li>5.5.2 <a href="#multipart.types">Multipart Types</a></li> 706 704 </ul> 707 705 </li> 708 <li> 6.6 <a href="#language.tags">Language Tags</a></li>706 <li>5.6 <a href="#language.tags">Language Tags</a></li> 709 707 </ul> 710 708 </li> 711 <li>7. <a href="#header.field.definitions">Header Field Definitions</a><ul> 712 <li>7.1 <a href="#header.accept">Accept</a></li> 713 <li>7.2 <a href="#header.accept-charset">Accept-Charset</a></li> 714 <li>7.3 <a href="#header.accept-encoding">Accept-Encoding</a></li> 715 <li>7.4 <a href="#header.accept-language">Accept-Language</a></li> 716 <li>7.5 <a href="#header.allow">Allow</a></li> 717 <li>7.6 <a href="#header.content-encoding">Content-Encoding</a></li> 718 <li>7.7 <a href="#header.content-language">Content-Language</a></li> 719 <li>7.8 <a href="#header.content-location">Content-Location</a></li> 720 <li>7.9 <a href="#header.content-type">Content-Type</a></li> 721 <li>7.10 <a href="#header.date">Date</a></li> 722 <li>7.11 <a href="#header.expect">Expect</a></li> 723 <li>7.12 <a href="#header.from">From</a></li> 724 <li>7.13 <a href="#header.location">Location</a></li> 725 <li>7.14 <a href="#header.max-forwards">Max-Forwards</a></li> 726 <li>7.15 <a href="#header.referer">Referer</a></li> 727 <li>7.16 <a href="#header.retry-after">Retry-After</a></li> 728 <li>7.17 <a href="#header.server">Server</a></li> 729 <li>7.18 <a href="#header.user-agent">User-Agent</a></li> 709 <li>6. <a href="#payload">Payload</a><ul> 710 <li>6.1 <a href="#payload.header.fields">Payload Header Fields</a></li> 711 <li>6.2 <a href="#payload.body">Payload Body</a></li> 730 712 </ul> 731 713 </li> 732 <li>8. <a href="#IANA.considerations">IANA Considerations</a><ul> 733 <li>8.1 <a href="#method.registration">Method Registry</a></li> 734 <li>8.2 <a href="#status.code.registration">Status Code Registry</a></li> 735 <li>8.3 <a href="#header.field.registration">Header Field Registration</a></li> 736 <li>8.4 <a href="#content.coding.registration">Content Coding Registry</a></li> 714 <li>7. <a href="#representation">Representation</a><ul> 715 <li>7.1 <a href="#identifying.response.associated.with.representation">Identifying the Resource Associated with a Representation</a></li> 737 716 </ul> 738 717 </li> 739 <li>9. <a href="#security.considerations">Security Considerations</a><ul> 740 <li>9.1 <a href="#security.sensitive">Transfer of Sensitive Information</a></li> 741 <li>9.2 <a href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></li> 742 <li>9.3 <a href="#location.spoofing-leakage">Location Header Fields: Spoofing and Information Leakage</a></li> 743 <li>9.4 <a href="#rfc.section.9.4">Security Considerations for CONNECT</a></li> 744 <li>9.5 <a href="#privacy.issues.connected.to.accept.header.fields">Privacy Issues Connected to Accept Header Fields</a></li> 718 <li>8. <a href="#content.negotiation">Content Negotiation</a><ul> 719 <li>8.1 <a href="#server-driven.negotiation">Server-driven Negotiation</a></li> 720 <li>8.2 <a href="#agent-driven.negotiation">Agent-driven Negotiation</a></li> 745 721 </ul> 746 722 </li> 747 <li>10. <a href="#acks">Acknowledgments</a></li> 748 <li>11. <a href="#rfc.references">References</a><ul> 749 <li>11.1 <a href="#rfc.references.1">Normative References</a></li> 750 <li>11.2 <a href="#rfc.references.2">Informative References</a></li> 723 <li>9. <a href="#header.field.definitions">Header Field Definitions</a><ul> 724 <li>9.1 <a href="#header.accept">Accept</a></li> 725 <li>9.2 <a href="#header.accept-charset">Accept-Charset</a></li> 726 <li>9.3 <a href="#header.accept-encoding">Accept-Encoding</a></li> 727 <li>9.4 <a href="#header.accept-language">Accept-Language</a></li> 728 <li>9.5 <a href="#header.allow">Allow</a></li> 729 <li>9.6 <a href="#header.content-encoding">Content-Encoding</a></li> 730 <li>9.7 <a href="#header.content-language">Content-Language</a></li> 731 <li>9.8 <a href="#header.content-location">Content-Location</a></li> 732 <li>9.9 <a href="#header.content-type">Content-Type</a></li> 733 <li>9.10 <a href="#header.date">Date</a></li> 734 <li>9.11 <a href="#header.expect">Expect</a></li> 735 <li>9.12 <a href="#header.from">From</a></li> 736 <li>9.13 <a href="#header.location">Location</a></li> 737 <li>9.14 <a href="#header.max-forwards">Max-Forwards</a></li> 738 <li>9.15 <a href="#header.referer">Referer</a></li> 739 <li>9.16 <a href="#header.retry-after">Retry-After</a></li> 740 <li>9.17 <a href="#header.server">Server</a></li> 741 <li>9.18 <a href="#header.user-agent">User-Agent</a></li> 742 </ul> 743 </li> 744 <li>10. <a href="#IANA.considerations">IANA Considerations</a><ul> 745 <li>10.1 <a href="#method.registration">Method Registry</a></li> 746 <li>10.2 <a href="#status.code.registration">Status Code Registry</a></li> 747 <li>10.3 <a href="#header.field.registration">Header Field Registration</a></li> 748 <li>10.4 <a href="#content.coding.registration">Content Coding Registry</a></li> 749 </ul> 750 </li> 751 <li>11. <a href="#security.considerations">Security Considerations</a><ul> 752 <li>11.1 <a href="#security.sensitive">Transfer of Sensitive Information</a></li> 753 <li>11.2 <a href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></li> 754 <li>11.3 <a href="#location.spoofing-leakage">Location Header Fields: Spoofing and Information Leakage</a></li> 755 <li>11.4 <a href="#rfc.section.11.4">Security Considerations for CONNECT</a></li> 756 <li>11.5 <a href="#privacy.issues.connected.to.accept.header.fields">Privacy Issues Connected to Accept Header Fields</a></li> 757 </ul> 758 </li> 759 <li>12. <a href="#acks">Acknowledgments</a></li> 760 <li>13. <a href="#rfc.references">References</a><ul> 761 <li>13.1 <a href="#rfc.references.1">Normative References</a></li> 762 <li>13.2 <a href="#rfc.references.2">Informative References</a></li> 751 763 </ul> 752 764 </li> … … 810 822 </li> 811 823 <li>F. <a href="#rfc.section.F">THE TEXT FORMERLY KNOWN AS PART3</a><ul> 812 <li>F.1 <a href="#payload">Payload</a><ul> 813 <li>F.1.1 <a href="#payload.header.fields">Payload Header Fields</a></li> 814 <li>F.1.2 <a href="#payload.body">Payload Body</a></li> 815 </ul> 816 </li> 817 <li>F.2 <a href="#representation3">Representation</a><ul> 818 <li>F.2.1 <a href="#representation.header.fields">Representation Header Fields</a></li> 819 <li>F.2.2 <a href="#representation.data">Representation Data</a></li> 820 </ul> 821 </li> 822 <li>F.3 <a href="#content.negotiation">Content Negotiation</a><ul> 823 <li>F.3.1 <a href="#server-driven.negotiation">Server-driven Negotiation</a></li> 824 <li>F.3.2 <a href="#agent-driven.negotiation">Agent-driven Negotiation</a></li> 825 </ul> 826 </li> 827 <li>F.4 <a href="#change.log3">Change Log (to be removed by RFC Editor before publication)</a><ul> 828 <li>F.4.1 <a href="#rfc.section.F.4.1">Since RFC 2616</a></li> 824 <li>F.1 <a href="#representation3">Representation</a><ul> 825 <li>F.1.1 <a href="#representation.header.fields">Representation Header Fields</a></li> 826 <li>F.1.2 <a href="#representation.data">Representation Data</a></li> 829 827 </ul> 830 828 </li> … … 910 908 </p> 911 909 <div id="rfc.figure.u.3"></div><pre class="inline"><span id="rfc.iref.g.1"></span> <a href="#methods" class="smpl">method</a> = <a href="#core.rules" class="smpl">token</a> 912 </pre><p id="rfc.section.2.p.3">The list of methods allowed by a resource can be specified in an Allow header field (<a href="#header.allow" id="rfc.xref.header.allow.1" title="Allow">Section 7.5</a>). The status code of the response always notifies the client whether a method is currently allowed on a resource, since the910 </pre><p id="rfc.section.2.p.3">The list of methods allowed by a resource can be specified in an Allow header field (<a href="#header.allow" id="rfc.xref.header.allow.1" title="Allow">Section 9.5</a>). The status code of the response always notifies the client whether a method is currently allowed on a resource, since the 913 911 set of allowed methods can change dynamically. An origin server <em class="bcp14">SHOULD</em> respond with the status code 405 (Method Not Allowed) if the method is known by the origin server but not allowed for the 914 912 resource, and 501 (Not Implemented) if the method is unrecognized or not implemented by the origin server. The methods GET … … 990 988 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 Content-Length field with a field-value of "0". 991 989 </p> 992 <p id="rfc.section.2.3.1.p.7">The Max-Forwards 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 7.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.990 <p id="rfc.section.2.3.1.p.7">The Max-Forwards 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 9.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. 993 991 </p> 994 992 <h3 id="rfc.section.2.3.2"><a href="#rfc.section.2.3.2">2.3.2</a> <a id="GET" href="#GET">GET</a></h3> … … 1014 1012 <p id="rfc.section.2.3.2.p.6">The response to a GET request is cacheable and <em class="bcp14">MAY</em> be used to satisfy subsequent GET and HEAD requests (see <a href="#Part6" id="rfc.xref.Part6.2"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1015 1013 </p> 1016 <p id="rfc.section.2.3.2.p.7">See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 9.2</a> for security considerations when used for forms.1014 <p id="rfc.section.2.3.2.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. 1017 1015 </p> 1018 1016 <h3 id="rfc.section.2.3.3"><a href="#rfc.section.2.3.3">2.3.3</a> <a id="HEAD" href="#HEAD">HEAD</a></h3> … … 1048 1046 </p> 1049 1047 <p id="rfc.section.2.3.4.p.4">If a resource has been created on the origin server, the response <em class="bcp14">SHOULD</em> be 201 (Created) and contain a representation which describes the status of the request and refers to the new resource, and 1050 a Location header field (see <a href="#header.location" id="rfc.xref.header.location.1" title="Location">Section 7.13</a>).1051 </p> 1052 <p id="rfc.section.2.3.4.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 2.3.1</a> of <a href="#Part6" id="rfc.xref.Part6.4"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). A cached POST response with a Content-Location header field (see <a href="#header.content-location" id="rfc.xref.header.content-location.1" title="Content-Location">Section 7.8</a>) whose value is the effective Request URI <em class="bcp14">MAY</em> be used to satisfy subsequent GET and HEAD requests.1048 a Location header field (see <a href="#header.location" id="rfc.xref.header.location.1" title="Location">Section 9.13</a>). 1049 </p> 1050 <p id="rfc.section.2.3.4.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 2.3.1</a> of <a href="#Part6" id="rfc.xref.Part6.4"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). A cached POST response with a Content-Location header field (see <a href="#header.content-location" id="rfc.xref.header.content-location.1" title="Content-Location">Section 9.8</a>) whose value is the effective Request URI <em class="bcp14">MAY</em> be used to satisfy subsequent GET and HEAD requests. 1053 1051 </p> 1054 1052 <p id="rfc.section.2.3.4.p.6">Note that POST caching is not widely implemented. However, the 303 (See Other) response can be used to direct the user agent … … 1138 1136 <div id="rfc.iref.m.7"></div> 1139 1137 <p id="rfc.section.2.3.7.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 200 (OK) response. The final recipient is either 1140 the origin server or the first proxy to receive a Max-Forwards value of zero (0) in the request (see <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.2" title="Max-Forwards">Section 7.14</a>). A TRACE request <em class="bcp14">MUST NOT</em> include a message body.1138 the origin server or the first proxy to receive a Max-Forwards value of zero (0) in the request (see <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.2" title="Max-Forwards">Section 9.14</a>). A TRACE request <em class="bcp14">MUST NOT</em> include a message body. 1141 1139 </p> 1142 1140 <p id="rfc.section.2.3.7.p.2">TRACE allows the client to see what is being received at the other end of the request chain and use that data for testing … … 1213 1211 double quotes will likely cause unnecessary confusion. 1214 1212 </p> 1215 <p id="rfc.section.3.1.p.8">Many header fields use a format including (case-insensitively) named parameters (for instance, Content-Type, defined in <a href="#header.content-type" id="rfc.xref.header.content-type.1" title="Content-Type">Section 7.9</a>). Allowing both unquoted (token) and quoted (quoted-string) syntax for the parameter value enables recipients to use existing1213 <p id="rfc.section.3.1.p.8">Many header fields use a format including (case-insensitively) named parameters (for instance, Content-Type, defined in <a href="#header.content-type" id="rfc.xref.header.content-type.1" title="Content-Type">Section 9.9</a>). Allowing both unquoted (token) and quoted (quoted-string) syntax for the parameter value enables recipients to use existing 1216 1214 parser components. When allowing both forms, the meaning of a parameter value ought to be independent of the syntax used for 1217 it (for an example, see the notes on parameter handling for media types in <a href="#media.types" title="Media Types">Section 6.5</a>).1215 it (for an example, see the notes on parameter handling for media types in <a href="#media.types" title="Media Types">Section 5.5</a>). 1218 1216 </p> 1219 1217 <p id="rfc.section.3.1.p.9">Authors of specifications defining new header fields are advised to consider documenting: </p> … … 1270 1268 <tr> 1271 1269 <td class="left">Accept</td> 1272 <td class="left"><a href="#header.accept" id="rfc.xref.header.accept.1" title="Accept">Section 7.1</a></td>1270 <td class="left"><a href="#header.accept" id="rfc.xref.header.accept.1" title="Accept">Section 9.1</a></td> 1273 1271 </tr> 1274 1272 <tr> 1275 1273 <td class="left">Accept-Charset</td> 1276 <td class="left"><a href="#header.accept-charset" id="rfc.xref.header.accept-charset.1" title="Accept-Charset">Section 7.2</a></td>1274 <td class="left"><a href="#header.accept-charset" id="rfc.xref.header.accept-charset.1" title="Accept-Charset">Section 9.2</a></td> 1277 1275 </tr> 1278 1276 <tr> 1279 1277 <td class="left">Accept-Encoding</td> 1280 <td class="left"><a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.1" title="Accept-Encoding">Section 7.3</a></td>1278 <td class="left"><a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.1" title="Accept-Encoding">Section 9.3</a></td> 1281 1279 </tr> 1282 1280 <tr> 1283 1281 <td class="left">Accept-Language</td> 1284 <td class="left"><a href="#header.accept-language" id="rfc.xref.header.accept-language.1" title="Accept-Language">Section 7.4</a></td>1282 <td class="left"><a href="#header.accept-language" id="rfc.xref.header.accept-language.1" title="Accept-Language">Section 9.4</a></td> 1285 1283 </tr> 1286 1284 <tr> … … 1290 1288 <tr> 1291 1289 <td class="left">Expect</td> 1292 <td class="left"><a href="#header.expect" id="rfc.xref.header.expect.1" title="Expect">Section 7.11</a></td>1290 <td class="left"><a href="#header.expect" id="rfc.xref.header.expect.1" title="Expect">Section 9.11</a></td> 1293 1291 </tr> 1294 1292 <tr> 1295 1293 <td class="left">From</td> 1296 <td class="left"><a href="#header.from" id="rfc.xref.header.from.1" title="From">Section 7.12</a></td>1294 <td class="left"><a href="#header.from" id="rfc.xref.header.from.1" title="From">Section 9.12</a></td> 1297 1295 </tr> 1298 1296 <tr> … … 1322 1320 <tr> 1323 1321 <td class="left">Max-Forwards</td> 1324 <td class="left"><a href="#header.max-forwards" id="rfc.xref.header.max-forwards.3" title="Max-Forwards">Section 7.14</a></td>1322 <td class="left"><a href="#header.max-forwards" id="rfc.xref.header.max-forwards.3" title="Max-Forwards">Section 9.14</a></td> 1325 1323 </tr> 1326 1324 <tr> … … 1334 1332 <tr> 1335 1333 <td class="left">Referer</td> 1336 <td class="left"><a href="#header.referer" id="rfc.xref.header.referer.1" title="Referer">Section 7.15</a></td>1334 <td class="left"><a href="#header.referer" id="rfc.xref.header.referer.1" title="Referer">Section 9.15</a></td> 1337 1335 </tr> 1338 1336 <tr> … … 1342 1340 <tr> 1343 1341 <td class="left">User-Agent</td> 1344 <td class="left"><a href="#header.user-agent" id="rfc.xref.header.user-agent.1" title="User-Agent">Section 7.18</a></td>1342 <td class="left"><a href="#header.user-agent" id="rfc.xref.header.user-agent.1" title="User-Agent">Section 9.18</a></td> 1345 1343 </tr> 1346 1344 </tbody> … … 1370 1368 <tr> 1371 1369 <td class="left">Allow</td> 1372 <td class="left"><a href="#header.allow" id="rfc.xref.header.allow.2" title="Allow">Section 7.5</a></td>1370 <td class="left"><a href="#header.allow" id="rfc.xref.header.allow.2" title="Allow">Section 9.5</a></td> 1373 1371 </tr> 1374 1372 <tr> 1375 1373 <td class="left">Date</td> 1376 <td class="left"><a href="#header.date" id="rfc.xref.header.date.1" title="Date">Section 7.10</a></td>1374 <td class="left"><a href="#header.date" id="rfc.xref.header.date.1" title="Date">Section 9.10</a></td> 1377 1375 </tr> 1378 1376 <tr> … … 1382 1380 <tr> 1383 1381 <td class="left">Location</td> 1384 <td class="left"><a href="#header.location" id="rfc.xref.header.location.2" title="Location">Section 7.13</a></td>1382 <td class="left"><a href="#header.location" id="rfc.xref.header.location.2" title="Location">Section 9.13</a></td> 1385 1383 </tr> 1386 1384 <tr> … … 1390 1388 <tr> 1391 1389 <td class="left">Retry-After</td> 1392 <td class="left"><a href="#header.retry-after" id="rfc.xref.header.retry-after.1" title="Retry-After">Section 7.16</a></td>1390 <td class="left"><a href="#header.retry-after" id="rfc.xref.header.retry-after.1" title="Retry-After">Section 9.16</a></td> 1393 1391 </tr> 1394 1392 <tr> 1395 1393 <td class="left">Server</td> 1396 <td class="left"><a href="#header.server" id="rfc.xref.header.server.1" title="Server">Section 7.17</a></td>1394 <td class="left"><a href="#header.server" id="rfc.xref.header.server.1" title="Server">Section 9.17</a></td> 1397 1395 </tr> 1398 1396 <tr> … … 1426 1424 </ul> 1427 1425 <p id="rfc.section.4.p.4">For most status codes the response can carry a payload, in which case a Content-Type header field indicates the payload's 1428 media type (<a href="#header.content-type" id="rfc.xref.header.content-type.2" title="Content-Type">Section 7.9</a>).1426 media type (<a href="#header.content-type" id="rfc.xref.header.content-type.2" title="Content-Type">Section 9.9</a>). 1429 1427 </p> 1430 1428 <h2 id="rfc.section.4.1"><a href="#rfc.section.4.1">4.1</a> <a id="overview.of.status.codes" href="#overview.of.status.codes">Overview of Status Codes</a></h2> … … 1672 1670 a zero-length response body. They can require the presence of one or more particular HTTP response header(s). 1673 1671 </p> 1674 <p id="rfc.section.4.2.1.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.10"><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 5.1</a>; by default, it is anonymous).1672 <p id="rfc.section.4.2.1.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.10"><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 7.1</a>; by default, it is anonymous). 1675 1673 </p> 1676 1674 <h2 id="rfc.section.4.3"><a href="#rfc.section.4.3">4.3</a> <a id="status.1xx" href="#status.1xx">Informational 1xx</a></h2> … … 1805 1803 </li> 1806 1804 <li> 1807 <p>Redirection offering a choice of matching resources for use by agent-driven content negotiation (<a href="#agent-driven.negotiation" title="Agent-driven Negotiation"> Appendix F.3.2</a>). This is status code 300 (Multiple Choices).1805 <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 8.2</a>). This is status code 300 (Multiple Choices). 1808 1806 </p> 1809 1807 </li> … … 1822 1820 </p> 1823 1821 </div> 1824 <p id="rfc.section.4.5.p.4">A Location 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.3" title="Location">Section 7.13</a>.1822 <p id="rfc.section.4.5.p.4">A Location 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.3" title="Location">Section 9.13</a>. 1825 1823 </p> 1826 1824 <p id="rfc.section.4.5.p.5">Note that for methods not known to be "safe", as defined in <a href="#safe.methods" title="Safe Methods">Section 2.1.1</a>, automatic redirection needs to done with care, since the redirect might change the conditions under which the request was … … 1837 1835 <h3 id="rfc.section.4.5.1"><a href="#rfc.section.4.5.1">4.5.1</a> <a id="status.300" href="#status.300">300 Multiple Choices</a></h3> 1838 1836 <p id="rfc.section.4.5.1.p.1">The target resource has more than one representation, each with its own specific location, and agent-driven negotiation information 1839 (<a href="#content.negotiation" title="Content Negotiation"> Appendix F.3</a>) is being provided so that the user (or user agent) can select a preferred representation by redirecting its request to that1837 (<a href="#content.negotiation" title="Content Negotiation">Section 8</a>) is being provided so that the user (or user agent) can select a preferred representation by redirecting its request to that 1840 1838 location. 1841 1839 </p> … … 2038 2036 <div id="rfc.iref.s.31"></div> 2039 2037 <h3 id="rfc.section.4.6.14"><a href="#rfc.section.4.6.14">4.6.14</a> <a id="status.417" href="#status.417">417 Expectation Failed</a></h3> 2040 <p id="rfc.section.4.6.14.p.1">The expectation given in an Expect header field (see <a href="#header.expect" id="rfc.xref.header.expect.2" title="Expect">Section 7.11</a>) could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could2038 <p id="rfc.section.4.6.14.p.1">The expectation given in an Expect header field (see <a href="#header.expect" id="rfc.xref.header.expect.2" title="Expect">Section 9.11</a>) could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could 2041 2039 not be met by the next-hop server. 2042 2040 </p> … … 2083 2081 <p id="rfc.section.4.7.4.p.1">The server is currently unable to handle the request due to a temporary overloading or maintenance of the server.</p> 2084 2082 <p id="rfc.section.4.7.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 2085 delay <em class="bcp14">MAY</em> be indicated in a Retry-After header field (<a href="#header.retry-after" id="rfc.xref.header.retry-after.2" title="Retry-After">Section 7.16</a>). If no Retry-After is given, the client <em class="bcp14">SHOULD</em> handle the response as it would for a 500 response.2083 delay <em class="bcp14">MAY</em> be indicated in a Retry-After header field (<a href="#header.retry-after" id="rfc.xref.header.retry-after.2" title="Retry-After">Section 9.16</a>). If no Retry-After is given, the client <em class="bcp14">SHOULD</em> handle the response as it would for a 500 response. 2086 2084 </p> 2087 2085 <div class="note" id="rfc.section.4.7.4.p.3"> … … 2107 2105 in <a href="p1-messaging.html#http.version" title="Protocol Versioning">Section 2.6</a> of <a href="#Part1" id="rfc.xref.Part1.36"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, other than with this error message. The response <em class="bcp14">SHOULD</em> contain a representation describing why that version is not supported and what other protocols are supported by that server. 2108 2106 </p> 2109 <h1 id="rfc.section.5"><a href="#rfc.section.5">5.</a> <a id="representation" href="#representation">Representation</a></h1> 2110 <p id="rfc.section.5.p.1">Request and Response messages <em class="bcp14">MAY</em> transfer a representation if not otherwise restricted by the request method or response status code. A representation consists 2111 of metadata (representation header fields) and data (representation body). When a complete or partial representation is enclosed 2112 in an HTTP message, it is referred to as the payload of the message. 2113 </p> 2114 <p id="rfc.section.5.p.2">A representation body is only present in a message when a message body is present, as described in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.37"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. The representation body is obtained from the message body by decoding any Transfer-Encoding that might have been applied 2115 to ensure safe and proper transfer of the message. 2116 </p> 2117 <h2 id="rfc.section.5.1"><a href="#rfc.section.5.1">5.1</a> <a id="identifying.response.associated.with.representation" href="#identifying.response.associated.with.representation">Identifying the Resource Associated with a Representation</a></h2> 2118 <p id="rfc.section.5.1.p.1">It is sometimes necessary to determine an identifier for the resource associated with a representation.</p> 2119 <p id="rfc.section.5.1.p.2">An HTTP request representation, when present, is always associated with an anonymous (i.e., unidentified) resource.</p> 2120 <p id="rfc.section.5.1.p.3">In the common case, an HTTP response is a representation of the target resource (see <a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 5.5</a> of <a href="#Part1" id="rfc.xref.Part1.38"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). However, this is not always the case. To determine the URI of the resource a response is associated with, the following 2121 rules are used (with the first applicable one being selected): 2122 </p> 2123 <ol> 2124 <li>If the response status code is 200 or 203 and the request method was GET, the response payload is a representation of the 2125 target resource. 2126 </li> 2127 <li>If the response status code is 204, 206, or 304 and the request method was GET or HEAD, the response payload is a partial 2128 representation of the target resource. 2129 </li> 2130 <li>If the response has a Content-Location header field, and that URI is the same as the effective request URI, the response payload 2131 is a representation of the target resource. 2132 </li> 2133 <li>If the response has a Content-Location header field, and that URI is not the same as the effective request URI, then the response 2134 asserts that its payload is a representation of the resource identified by the Content-Location URI. However, such an assertion 2135 cannot be trusted unless it can be verified by other means (not defined by HTTP). 2136 </li> 2137 <li>Otherwise, the response is a representation of an anonymous (i.e., unidentified) resource.</li> 2138 </ol> 2139 <p id="rfc.section.5.1.p.5"> <span class="comment" id="TODO-req-uri">[<a href="#TODO-req-uri" class="smpl">TODO-req-uri</a>: The comparison function is going to have to be defined somewhere, because we already need to compare URIs for things like 2140 cache invalidation.]</span> 2141 </p> 2142 <h1 id="rfc.section.6"><a href="#rfc.section.6">6.</a> <a id="protocol.parameters" href="#protocol.parameters">Protocol Parameters</a></h1> 2143 <h2 id="rfc.section.6.1"><a href="#rfc.section.6.1">6.1</a> <a id="http.date" href="#http.date">Date/Time Formats</a></h2> 2144 <p id="rfc.section.6.1.p.1">HTTP applications have historically allowed three different formats for date/time stamps. However, the preferred format is 2107 <h1 id="rfc.section.5"><a href="#rfc.section.5">5.</a> <a id="protocol.parameters" href="#protocol.parameters">Protocol Parameters</a></h1> 2108 <h2 id="rfc.section.5.1"><a href="#rfc.section.5.1">5.1</a> <a id="http.date" href="#http.date">Date/Time Formats</a></h2> 2109 <p id="rfc.section.5.1.p.1">HTTP applications have historically allowed three different formats for date/time stamps. However, the preferred format is 2145 2110 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>: 2146 2111 </p> 2147 2112 <div id="rfc.figure.u.8"></div><pre class="text">Sun, 06 Nov 1994 08:49:37 GMT ; RFC 1123 2148 </pre><p id="rfc.section. 6.1.p.3">The other formats are described here only for compatibility with obsolete implementations.</p>2113 </pre><p id="rfc.section.5.1.p.3">The other formats are described here only for compatibility with obsolete implementations.</p> 2149 2114 <div id="rfc.figure.u.9"></div><pre class="text">Sunday, 06-Nov-94 08:49:37 GMT ; obsolete RFC 850 format 2150 2115 Sun Nov 6 08:49:37 1994 ; ANSI C's asctime() format 2151 </pre><p id="rfc.section. 6.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.2152 </p> 2153 <p id="rfc.section. 6.1.p.6">All HTTP date/time stamps <em class="bcp14">MUST</em> be represented in Greenwich Mean Time (GMT), without exception. For the purposes of HTTP, GMT is exactly equal to UTC (Coordinated2116 </pre><p id="rfc.section.5.1.p.5">HTTP/1.1 clients and servers that parse a date value <em class="bcp14">MUST</em> accept all three formats (for compatibility with HTTP/1.0), though they <em class="bcp14">MUST</em> only generate the RFC 1123 format for representing HTTP-date values in header fields. 2117 </p> 2118 <p id="rfc.section.5.1.p.6">All HTTP date/time stamps <em class="bcp14">MUST</em> be represented in Greenwich Mean Time (GMT), without exception. For the purposes of HTTP, GMT is exactly equal to UTC (Coordinated 2154 2119 Universal Time). This is indicated in the first two formats by the inclusion of "GMT" as the three-letter abbreviation for 2155 2120 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. … … 2157 2122 <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g.3"></span> <a href="#http.date" class="smpl">HTTP-date</a> = <a href="#preferred.date.format" class="smpl">rfc1123-date</a> / <a href="#obsolete.date.formats" class="smpl">obs-date</a> 2158 2123 </pre><div id="preferred.date.format"> 2159 <p id="rfc.section. 6.1.p.8"> Preferred format:</p>2124 <p id="rfc.section.5.1.p.8"> Preferred format:</p> 2160 2125 </div> 2161 2126 <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.4"></span><span id="rfc.iref.g.5"></span><span id="rfc.iref.g.6"></span><span id="rfc.iref.g.7"></span><span id="rfc.iref.g.8"></span><span id="rfc.iref.g.9"></span><span id="rfc.iref.g.10"></span><span id="rfc.iref.g.11"></span><span id="rfc.iref.g.12"></span><span id="rfc.iref.g.13"></span><span id="rfc.iref.g.14"></span><span id="rfc.iref.g.15"></span> <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#notation" class="smpl">SP</a> date1 <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a> … … 2197 2162 <a href="#preferred.date.format" class="smpl">minute</a> = 2<a href="#notation" class="smpl">DIGIT</a> 2198 2163 <a href="#preferred.date.format" class="smpl">second</a> = 2<a href="#notation" class="smpl">DIGIT</a> 2199 </pre><p id="rfc.section. 6.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>).2164 </pre><p id="rfc.section.5.1.p.10">The semantics of <a href="#preferred.date.format" class="smpl">day-name</a>, <a href="#preferred.date.format" class="smpl">day</a>, <a href="#preferred.date.format" class="smpl">month</a>, <a href="#preferred.date.format" class="smpl">year</a>, and <a href="#preferred.date.format" class="smpl">time-of-day</a> are the same as those defined for the RFC 5322 constructs with the corresponding name (<a href="#RFC5322" id="rfc.xref.RFC5322.1"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.3">Section 3.3</a>). 2200 2165 </p> 2201 2166 <div id="obsolete.date.formats"> 2202 <p id="rfc.section. 6.1.p.11"> Obsolete formats:</p>2167 <p id="rfc.section.5.1.p.11"> Obsolete formats:</p> 2203 2168 </div> 2204 2169 <div id="rfc.figure.u.12"></div><pre class="inline"><span id="rfc.iref.g.16"></span> <a href="#obsolete.date.formats" class="smpl">obs-date</a> = <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> / <a href="#obsolete.date.formats" class="smpl">asctime-date</a> … … 2217 2182 <a href="#obsolete.date.formats" class="smpl">date3</a> = <a href="#preferred.date.format" class="smpl">month</a> <a href="#notation" class="smpl">SP</a> ( 2<a href="#notation" class="smpl">DIGIT</a> / ( <a href="#notation" class="smpl">SP</a> 1<a href="#notation" class="smpl">DIGIT</a> )) 2218 2183 ; month day (e.g., Jun 2) 2219 </pre><div class="note" id="rfc.section. 6.1.p.15">2184 </pre><div class="note" id="rfc.section.5.1.p.15"> 2220 2185 <p> <b>Note:</b> Recipients of date values are encouraged to be robust in accepting date values that might have been sent by non-HTTP applications, 2221 2186 as is sometimes the case when retrieving or posting messages via proxies/gateways to SMTP or NNTP. 2222 2187 </p> 2223 2188 </div> 2224 <div class="note" id="rfc.section. 6.1.p.16">2189 <div class="note" id="rfc.section.5.1.p.16"> 2225 2190 <p> <b>Note:</b> HTTP requirements for the date/time stamp format apply only to their usage within the protocol stream. Clients and servers 2226 2191 are not required to use these formats for user presentation, request logging, etc. 2227 2192 </p> 2228 2193 </div> 2229 <h2 id="rfc.section. 6.2"><a href="#rfc.section.6.2">6.2</a> <a id="product.tokens" href="#product.tokens">Product Tokens</a></h2>2230 <p id="rfc.section. 6.2.p.1">Product tokens are used to allow communicating applications to identify themselves by software name and version. Most fields2194 <h2 id="rfc.section.5.2"><a href="#rfc.section.5.2">5.2</a> <a id="product.tokens" href="#product.tokens">Product Tokens</a></h2> 2195 <p id="rfc.section.5.2.p.1">Product tokens are used to allow communicating applications to identify themselves by software name and version. Most fields 2231 2196 using product tokens also allow sub-products which form a significant part of the application to be listed, separated by whitespace. 2232 2197 By convention, the products are listed in order of their significance for identifying the application. … … 2234 2199 <div id="rfc.figure.u.15"></div><pre class="inline"><span id="rfc.iref.g.19"></span><span id="rfc.iref.g.20"></span> <a href="#product.tokens" class="smpl">product</a> = <a href="#core.rules" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>] 2235 2200 <a href="#product.tokens" class="smpl">product-version</a> = <a href="#core.rules" class="smpl">token</a> 2236 </pre><p id="rfc.section. 6.2.p.3">Examples:</p>2201 </pre><p id="rfc.section.5.2.p.3">Examples:</p> 2237 2202 <div id="rfc.figure.u.16"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b3 2238 2203 Server: Apache/0.8.4 2239 </pre><p id="rfc.section. 6.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).2240 </p> 2241 <h2 id="rfc.section. 6.3"><a href="#rfc.section.6.3">6.3</a> <a id="character.sets" href="#character.sets">Character Encodings (charset)</a></h2>2242 <p id="rfc.section. 6.3.p.1">HTTP uses charset names to indicate the character encoding of a textual representation.</p>2204 </pre><p id="rfc.section.5.2.p.5">Product tokens <em class="bcp14">SHOULD</em> be short and to the point. They <em class="bcp14">MUST NOT</em> be used for advertising or other non-essential information. Although any token octet <em class="bcp14">MAY</em> appear in a product-version, this token <em class="bcp14">SHOULD</em> only be used for a version identifier (i.e., successive versions of the same product <em class="bcp14">SHOULD</em> only differ in the product-version portion of the product value). 2205 </p> 2206 <h2 id="rfc.section.5.3"><a href="#rfc.section.5.3">5.3</a> <a id="character.sets" href="#character.sets">Character Encodings (charset)</a></h2> 2207 <p id="rfc.section.5.3.p.1">HTTP uses charset names to indicate the character encoding of a textual representation.</p> 2243 2208 <div id="rule.charset"> 2244 <p id="rfc.section. 6.3.p.2"> A character encoding is identified by a case-insensitive token. The complete set of tokens is defined by the IANA Character2209 <p id="rfc.section.5.3.p.2"> A character encoding is identified by a case-insensitive token. The complete set of tokens is defined by the IANA Character 2245 2210 Set registry (<<a href="http://www.iana.org/assignments/character-sets">http://www.iana.org/assignments/character-sets</a>>). 2246 2211 </p> 2247 2212 </div> 2248 2213 <div id="rfc.figure.u.17"></div><pre class="inline"><span id="rfc.iref.g.21"></span> <a href="#rule.charset" class="smpl">charset</a> = <a href="#core.rules" class="smpl">token</a> 2249 </pre><p id="rfc.section. 6.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 IANA2214 </pre><p id="rfc.section.5.3.p.4">Although HTTP allows an arbitrary token to be used as a charset value, any token that has a predefined value within the IANA 2250 2215 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. 2251 2216 </p> 2252 <p id="rfc.section. 6.3.p.5">HTTP uses charset in two contexts: within an Accept-Charset request header field (in which the charset value is an unquoted2217 <p id="rfc.section.5.3.p.5">HTTP uses charset in two contexts: within an Accept-Charset request header field (in which the charset value is an unquoted 2253 2218 token) and as the value of a parameter in a Content-Type header field (within a request or response), in which case the parameter 2254 2219 value of the charset parameter can be quoted. 2255 2220 </p> 2256 <p id="rfc.section. 6.3.p.6">Implementors need to be aware of IETF character set requirements <a href="#RFC3629" id="rfc.xref.RFC3629.1"><cite title="UTF-8, a transformation format of ISO 10646">[RFC3629]</cite></a> <a href="#RFC2277" id="rfc.xref.RFC2277.1"><cite title="IETF Policy on Character Sets and Languages">[RFC2277]</cite></a>.2257 </p> 2258 <h2 id="rfc.section. 6.4"><a href="#rfc.section.6.4">6.4</a> <a id="content.codings" href="#content.codings">Content Codings</a></h2>2259 <p id="rfc.section. 6.4.p.1">Content coding values indicate an encoding transformation that has been or can be applied to a representation. Content codings2221 <p id="rfc.section.5.3.p.6">Implementors need to be aware of IETF character set requirements <a href="#RFC3629" id="rfc.xref.RFC3629.1"><cite title="UTF-8, a transformation format of ISO 10646">[RFC3629]</cite></a> <a href="#RFC2277" id="rfc.xref.RFC2277.1"><cite title="IETF Policy on Character Sets and Languages">[RFC2277]</cite></a>. 2222 </p> 2223 <h2 id="rfc.section.5.4"><a href="#rfc.section.5.4">5.4</a> <a id="content.codings" href="#content.codings">Content Codings</a></h2> 2224 <p id="rfc.section.5.4.p.1">Content coding values indicate an encoding transformation that has been or can be applied to a representation. Content codings 2260 2225 are primarily used to allow a representation to be compressed or otherwise usefully transformed without losing the identity 2261 2226 of its underlying media type and without loss of information. Frequently, the representation is stored in coded form, transmitted … … 2263 2228 </p> 2264 2229 <div id="rfc.figure.u.18"></div><pre class="inline"><span id="rfc.iref.g.22"></span> <a href="#content.codings" class="smpl">content-coding</a> = <a href="#core.rules" class="smpl">token</a> 2265 </pre><p id="rfc.section. 6.4.p.3">All content-coding values are case-insensitive. HTTP/1.1 uses content-coding values in the Accept-Encoding (<a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.2" title="Accept-Encoding">Section 7.3</a>) and Content-Encoding (<a href="#header.content-encoding" id="rfc.xref.header.content-encoding.1" title="Content-Encoding">Section 7.6</a>) header fields. Although the value describes the content-coding, what is more important is that it indicates what decoding2230 </pre><p id="rfc.section.5.4.p.3">All content-coding values are case-insensitive. HTTP/1.1 uses content-coding values in the Accept-Encoding (<a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.2" title="Accept-Encoding">Section 9.3</a>) and Content-Encoding (<a href="#header.content-encoding" id="rfc.xref.header.content-encoding.1" title="Content-Encoding">Section 9.6</a>) header fields. Although the value describes the content-coding, what is more important is that it indicates what decoding 2266 2231 mechanism will be required to remove the encoding. 2267 2232 </p> 2268 <p id="rfc.section. 6.4.p.4">compress<span id="rfc.iref.c.3"></span><span id="rfc.iref.c.4"></span>2233 <p id="rfc.section.5.4.p.4">compress<span id="rfc.iref.c.3"></span><span id="rfc.iref.c.4"></span> 2269 2234 </p> 2270 2235 <ul class="empty"> 2271 <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.3 9"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.2272 </li> 2273 </ul> 2274 <p id="rfc.section. 6.4.p.5">deflate<span id="rfc.iref.d.2"></span><span id="rfc.iref.c.5"></span>2236 <li>See <a href="p1-messaging.html#compress.coding" title="Compress Coding">Section 4.2.1</a> of <a href="#Part1" id="rfc.xref.Part1.37"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 2237 </li> 2238 </ul> 2239 <p id="rfc.section.5.4.p.5">deflate<span id="rfc.iref.d.2"></span><span id="rfc.iref.c.5"></span> 2275 2240 </p> 2276 2241 <ul class="empty"> 2277 <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. 40"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.2278 </li> 2279 </ul> 2280 <p id="rfc.section. 6.4.p.6">gzip<span id="rfc.iref.g.23"></span><span id="rfc.iref.c.6"></span>2242 <li>See <a href="p1-messaging.html#deflate.coding" title="Deflate Coding">Section 4.2.2</a> of <a href="#Part1" id="rfc.xref.Part1.38"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 2243 </li> 2244 </ul> 2245 <p id="rfc.section.5.4.p.6">gzip<span id="rfc.iref.g.23"></span><span id="rfc.iref.c.6"></span> 2281 2246 </p> 2282 2247 <ul class="empty"> 2283 <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. 41"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.2284 </li> 2285 </ul> 2286 <h3 id="rfc.section. 6.4.1"><a href="#rfc.section.6.4.1">6.4.1</a> <a id="content.coding.registry" href="#content.coding.registry">Content Coding Registry</a></h3>2287 <p id="rfc.section. 6.4.1.p.1">The HTTP Content Coding Registry defines the name space for the content coding names.</p>2288 <p id="rfc.section. 6.4.1.p.2">Registrations <em class="bcp14">MUST</em> include the following fields:2248 <li>See <a href="p1-messaging.html#gzip.coding" title="Gzip Coding">Section 4.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.39"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 2249 </li> 2250 </ul> 2251 <h3 id="rfc.section.5.4.1"><a href="#rfc.section.5.4.1">5.4.1</a> <a id="content.coding.registry" href="#content.coding.registry">Content Coding Registry</a></h3> 2252 <p id="rfc.section.5.4.1.p.1">The HTTP Content Coding Registry defines the name space for the content coding names.</p> 2253 <p id="rfc.section.5.4.1.p.2">Registrations <em class="bcp14">MUST</em> include the following fields: 2289 2254 </p> 2290 2255 <ul> … … 2293 2258 <li>Pointer to specification text</li> 2294 2259 </ul> 2295 <p id="rfc.section. 6.4.1.p.3">Names of content codings <em class="bcp14">MUST NOT</em> overlap with names of transfer codings (<a href="p1-messaging.html#transfer.codings" title="Transfer Codings">Section 4</a> of <a href="#Part1" id="rfc.xref.Part1.42"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>), unless the encoding transformation is identical (as is the case for the compression codings defined in <a href="p1-messaging.html#compression.codings" title="Compression Codings">Section 4.2</a> of <a href="#Part1" id="rfc.xref.Part1.43"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).2296 </p> 2297 <p id="rfc.section. 6.4.1.p.4">Values to be added to this name space require IETF Review (see <a href="http://tools.ietf.org/html/rfc5226#section-4.1">Section 4.1</a> of <a href="#RFC5226" id="rfc.xref.RFC5226.3"><cite title="Guidelines for Writing an IANA Considerations Section in RFCs">[RFC5226]</cite></a>), and <em class="bcp14">MUST</em> conform to the purpose of content coding defined in this section.2298 </p> 2299 <p id="rfc.section. 6.4.1.p.5">The registry itself is maintained at <<a href="http://www.iana.org/assignments/http-parameters">http://www.iana.org/assignments/http-parameters</a>>.2300 </p> 2301 <h2 id="rfc.section. 6.5"><a href="#rfc.section.6.5">6.5</a> <a id="media.types" href="#media.types">Media Types</a></h2>2302 <p id="rfc.section. 6.5.p.1">HTTP uses Internet Media Types <a href="#RFC2046" id="rfc.xref.RFC2046.1"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types">[RFC2046]</cite></a> in the Content-Type (<a href="#header.content-type" id="rfc.xref.header.content-type.3" title="Content-Type">Section 7.9</a>) and Accept (<a href="#header.accept" id="rfc.xref.header.accept.2" title="Accept">Section 7.1</a>) header fields in order to provide open and extensible data typing and type negotiation.2260 <p id="rfc.section.5.4.1.p.3">Names of content codings <em class="bcp14">MUST NOT</em> overlap with names of transfer codings (<a href="p1-messaging.html#transfer.codings" title="Transfer Codings">Section 4</a> of <a href="#Part1" id="rfc.xref.Part1.40"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>), unless the encoding transformation is identical (as is the case for the compression codings defined in <a href="p1-messaging.html#compression.codings" title="Compression Codings">Section 4.2</a> of <a href="#Part1" id="rfc.xref.Part1.41"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 2261 </p> 2262 <p id="rfc.section.5.4.1.p.4">Values to be added to this name space require IETF Review (see <a href="http://tools.ietf.org/html/rfc5226#section-4.1">Section 4.1</a> of <a href="#RFC5226" id="rfc.xref.RFC5226.3"><cite title="Guidelines for Writing an IANA Considerations Section in RFCs">[RFC5226]</cite></a>), and <em class="bcp14">MUST</em> conform to the purpose of content coding defined in this section. 2263 </p> 2264 <p id="rfc.section.5.4.1.p.5">The registry itself is maintained at <<a href="http://www.iana.org/assignments/http-parameters">http://www.iana.org/assignments/http-parameters</a>>. 2265 </p> 2266 <h2 id="rfc.section.5.5"><a href="#rfc.section.5.5">5.5</a> <a id="media.types" href="#media.types">Media Types</a></h2> 2267 <p id="rfc.section.5.5.p.1">HTTP uses Internet Media Types <a href="#RFC2046" id="rfc.xref.RFC2046.1"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types">[RFC2046]</cite></a> in the Content-Type (<a href="#header.content-type" id="rfc.xref.header.content-type.3" title="Content-Type">Section 9.9</a>) and Accept (<a href="#header.accept" id="rfc.xref.header.accept.2" title="Accept">Section 9.1</a>) header fields in order to provide open and extensible data typing and type negotiation. 2303 2268 </p> 2304 2269 <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g.24"></span><span id="rfc.iref.g.25"></span><span id="rfc.iref.g.26"></span> <a href="#media.types" class="smpl">media-type</a> = <a href="#media.types" class="smpl">type</a> "/" <a href="#media.types" class="smpl">subtype</a> *( <a href="#core.rules" class="smpl">OWS</a> ";" <a href="#core.rules" class="smpl">OWS</a> <a href="#rule.parameter" class="smpl">parameter</a> ) … … 2306 2271 <a href="#media.types" class="smpl">subtype</a> = <a href="#core.rules" class="smpl">token</a> 2307 2272 </pre><div id="rule.parameter"> 2308 <p id="rfc.section. 6.5.p.3"> The type/subtype <em class="bcp14">MAY</em> be followed by parameters in the form of attribute/value pairs.2273 <p id="rfc.section.5.5.p.3"> The type/subtype <em class="bcp14">MAY</em> be followed by parameters in the form of attribute/value pairs. 2309 2274 </p> 2310 2275 </div> … … 2312 2277 <a href="#rule.parameter" class="smpl">attribute</a> = <a href="#core.rules" class="smpl">token</a> 2313 2278 <a href="#rule.parameter" class="smpl">value</a> = <a href="#core.rules" class="smpl">word</a> 2314 </pre><p id="rfc.section. 6.5.p.5">The type, subtype, and parameter attribute names are case-insensitive. Parameter values might or might not be case-sensitive,2279 </pre><p id="rfc.section.5.5.p.5">The type, subtype, and parameter attribute names are case-insensitive. Parameter values might or might not be case-sensitive, 2315 2280 depending on the semantics of the parameter name. The presence or absence of a parameter might be significant to the processing 2316 2281 of a media-type, depending on its definition within the media type registry. 2317 2282 </p> 2318 <p id="rfc.section. 6.5.p.6">A parameter value that matches the <a href="#core.rules" class="smpl">token</a> production can be transmitted as either a token or within a quoted-string. The quoted and unquoted values are equivalent.2319 </p> 2320 <p id="rfc.section. 6.5.p.7">Note that some older HTTP applications do not recognize media type parameters. When sending data to older HTTP applications,2283 <p id="rfc.section.5.5.p.6">A parameter value that matches the <a href="#core.rules" class="smpl">token</a> production can be transmitted as either a token or within a quoted-string. The quoted and unquoted values are equivalent. 2284 </p> 2285 <p id="rfc.section.5.5.p.7">Note that some older HTTP applications do not recognize media type parameters. When sending data to older HTTP applications, 2321 2286 implementations <em class="bcp14">SHOULD</em> only use media type parameters when they are required by that type/subtype definition. 2322 2287 </p> 2323 <p id="rfc.section. 6.5.p.8">Media-type values are registered with the Internet Assigned Number Authority (IANA). The media type registration process is2288 <p id="rfc.section.5.5.p.8">Media-type values are registered with the Internet Assigned Number Authority (IANA). The media type registration process is 2324 2289 outlined in <a href="#RFC4288" id="rfc.xref.RFC4288.1"><cite title="Media Type Specifications and Registration Procedures">[RFC4288]</cite></a>. Use of non-registered media types is discouraged. 2325 2290 </p> 2326 <h3 id="rfc.section. 6.5.1"><a href="#rfc.section.6.5.1">6.5.1</a> <a id="canonicalization.and.text.defaults" href="#canonicalization.and.text.defaults">Canonicalization and Text Defaults</a></h3>2327 <p id="rfc.section. 6.5.1.p.1">Internet media types are registered with a canonical form. A representation transferred via HTTP messages <em class="bcp14">MUST</em> be in the appropriate canonical form prior to its transmission except for "text" types, as defined in the next paragraph.2328 </p> 2329 <p id="rfc.section. 6.5.1.p.2">When in canonical form, media subtypes of the "text" type use CRLF as the text line break. HTTP relaxes this requirement and2291 <h3 id="rfc.section.5.5.1"><a href="#rfc.section.5.5.1">5.5.1</a> <a id="canonicalization.and.text.defaults" href="#canonicalization.and.text.defaults">Canonicalization and Text Defaults</a></h3> 2292 <p id="rfc.section.5.5.1.p.1">Internet media types are registered with a canonical form. A representation transferred via HTTP messages <em class="bcp14">MUST</em> be in the appropriate canonical form prior to its transmission except for "text" types, as defined in the next paragraph. 2293 </p> 2294 <p id="rfc.section.5.5.1.p.2">When in canonical form, media subtypes of the "text" type use CRLF as the text line break. HTTP relaxes this requirement and 2330 2295 allows the transport of text media with plain CR or LF alone representing a line break when it is done consistently for an 2331 2296 entire representation. HTTP applications <em class="bcp14">MUST</em> accept CRLF, bare CR, and bare LF as indicating a line break in text media received via HTTP. In addition, if the text is … … 2335 2300 body; a bare CR or LF <em class="bcp14">MUST NOT</em> be substituted for CRLF within any of the HTTP control structures (such as header fields and multipart boundaries). 2336 2301 </p> 2337 <p id="rfc.section. 6.5.1.p.3">If a representation is encoded with a content-coding, the underlying data <em class="bcp14">MUST</em> be in a form defined above prior to being encoded.2338 </p> 2339 <h3 id="rfc.section. 6.5.2"><a href="#rfc.section.6.5.2">6.5.2</a> <a id="multipart.types" href="#multipart.types">Multipart Types</a></h3>2340 <p id="rfc.section. 6.5.2.p.1">MIME provides for a number of "multipart" types — encapsulations of one or more representations within a single message body.2302 <p id="rfc.section.5.5.1.p.3">If a representation is encoded with a content-coding, the underlying data <em class="bcp14">MUST</em> be in a form defined above prior to being encoded. 2303 </p> 2304 <h3 id="rfc.section.5.5.2"><a href="#rfc.section.5.5.2">5.5.2</a> <a id="multipart.types" href="#multipart.types">Multipart Types</a></h3> 2305 <p id="rfc.section.5.5.2.p.1">MIME provides for a number of "multipart" types — encapsulations of one or more representations within a single message body. 2341 2306 All multipart types share a common syntax, as defined in <a href="http://tools.ietf.org/html/rfc2046#section-5.1.1">Section 5.1.1</a> of <a href="#RFC2046" id="rfc.xref.RFC2046.2"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types">[RFC2046]</cite></a>, and <em class="bcp14">MUST</em> include a boundary parameter as part of the media type value. The message body is itself a protocol element and <em class="bcp14">MUST</em> therefore use only CRLF to represent line breaks between body-parts. 2342 2307 </p> 2343 <p id="rfc.section. 6.5.2.p.2">In general, HTTP treats a multipart message body no differently than any other media type: strictly as payload. HTTP does2308 <p id="rfc.section.5.5.2.p.2">In general, HTTP treats a multipart message body no differently than any other media type: strictly as payload. HTTP does 2344 2309 not use the multipart boundary as an indicator of message body length. In all other respects, an HTTP user agent <em class="bcp14">SHOULD</em> follow the same or similar behavior as a MIME user agent would upon receipt of a multipart type. The MIME header fields within 2345 2310 each body-part of a multipart message body do not have any significance to HTTP beyond that defined by their MIME semantics. 2346 2311 </p> 2347 <p id="rfc.section. 6.5.2.p.3">If an application receives an unrecognized multipart subtype, the application <em class="bcp14">MUST</em> treat it as being equivalent to "multipart/mixed".2348 </p> 2349 <div class="note" id="rfc.section. 6.5.2.p.4">2312 <p id="rfc.section.5.5.2.p.3">If an application receives an unrecognized multipart subtype, the application <em class="bcp14">MUST</em> treat it as being equivalent to "multipart/mixed". 2313 </p> 2314 <div class="note" id="rfc.section.5.5.2.p.4"> 2350 2315 <p> <b>Note:</b> The "multipart/form-data" type has been specifically defined for carrying form data suitable for processing via the POST request 2351 2316 method, as described in <a href="#RFC2388" id="rfc.xref.RFC2388.1"><cite title="Returning Values from Forms: multipart/form-data">[RFC2388]</cite></a>. 2352 2317 </p> 2353 2318 </div> 2354 <h2 id="rfc.section. 6.6"><a href="#rfc.section.6.6">6.6</a> <a id="language.tags" href="#language.tags">Language Tags</a></h2>2355 <p id="rfc.section. 6.6.p.1">A language tag, as defined in <a href="#RFC5646" id="rfc.xref.RFC5646.1"><cite title="Tags for Identifying Languages">[RFC5646]</cite></a>, identifies a natural language spoken, written, or otherwise conveyed by human beings for communication of information to2319 <h2 id="rfc.section.5.6"><a href="#rfc.section.5.6">5.6</a> <a id="language.tags" href="#language.tags">Language Tags</a></h2> 2320 <p id="rfc.section.5.6.p.1">A language tag, as defined in <a href="#RFC5646" id="rfc.xref.RFC5646.1"><cite title="Tags for Identifying Languages">[RFC5646]</cite></a>, identifies a natural language spoken, written, or otherwise conveyed by human beings for communication of information to 2356 2321 other human beings. Computer languages are explicitly excluded. HTTP uses language tags within the Accept-Language and Content-Language 2357 2322 fields. 2358 2323 </p> 2359 <p id="rfc.section. 6.6.p.2">In summary, a language tag is composed of one or more parts: A primary language subtag followed by a possibly empty series2324 <p id="rfc.section.5.6.p.2">In summary, a language tag is composed of one or more parts: A primary language subtag followed by a possibly empty series 2360 2325 of subtags: 2361 2326 </p> 2362 2327 <div id="rfc.figure.u.21"></div><pre class="inline"><span id="rfc.iref.g.30"></span> <a href="#language.tags" class="smpl">language-tag</a> = <Language-Tag, defined in <a href="#RFC5646" id="rfc.xref.RFC5646.2"><cite title="Tags for Identifying Languages">[RFC5646]</cite></a>, <a href="http://tools.ietf.org/html/rfc5646#section-2.1">Section 2.1</a>> 2363 </pre><p id="rfc.section. 6.6.p.4">White space is not allowed within the tag and all tags are case-insensitive. The name space of language subtags is administered2328 </pre><p id="rfc.section.5.6.p.4">White space is not allowed within the tag and all tags are case-insensitive. The name space of language subtags is administered 2364 2329 by the IANA (see <<a href="http://www.iana.org/assignments/language-subtag-registry">http://www.iana.org/assignments/language-subtag-registry</a>>). 2365 2330 </p> 2366 2331 <div id="rfc.figure.u.22"></div> 2367 2332 <p>Example tags include:</p> <pre class="text"> en, en-US, es-419, az-Arab, x-pig-latin, man-Nkoo-GN 2368 </pre> <p id="rfc.section.6.6.p.6">See <a href="#RFC5646" id="rfc.xref.RFC5646.3"><cite title="Tags for Identifying Languages">[RFC5646]</cite></a> for further information. 2369 </p> 2370 <h1 id="rfc.section.7"><a href="#rfc.section.7">7.</a> <a id="header.field.definitions" href="#header.field.definitions">Header Field Definitions</a></h1> 2371 <p id="rfc.section.7.p.1">This section defines the syntax and semantics of HTTP/1.1 header fields related to request and response semantics and to the 2333 </pre> <p id="rfc.section.5.6.p.6">See <a href="#RFC5646" id="rfc.xref.RFC5646.3"><cite title="Tags for Identifying Languages">[RFC5646]</cite></a> for further information. 2334 </p> 2335 <h1 id="rfc.section.6"><a href="#rfc.section.6">6.</a> <a id="payload" href="#payload">Payload</a></h1> 2336 <p id="rfc.section.6.p.1">HTTP messages <em class="bcp14">MAY</em> transfer a payload if not otherwise restricted by the request method or response status code. The payload consists of metadata, 2337 in the form of header fields, and data, in the form of the sequence of octets in the message body after any transfer-coding 2338 has been decoded. 2339 </p> 2340 <div id="rfc.iref.p.3"></div> 2341 <p id="rfc.section.6.p.2">A "<dfn>payload</dfn>" in HTTP is always a partial or complete representation of some resource. We use separate terms for payload and representation 2342 because some messages contain only the associated representation's header fields (e.g., responses to HEAD) or only some part(s) 2343 of the representation (e.g., the 206 status code). 2344 </p> 2345 <h2 id="rfc.section.6.1"><a href="#rfc.section.6.1">6.1</a> <a id="payload.header.fields" href="#payload.header.fields">Payload Header Fields</a></h2> 2346 <p id="rfc.section.6.1.p.1">HTTP header fields that specifically define the payload, rather than the associated representation, are referred to as "payload 2347 header fields". The following payload header fields are defined by HTTP/1.1: 2348 </p> 2349 <div id="rfc.table.u.4"> 2350 <table class="tt full left" cellpadding="3" cellspacing="0"> 2351 <thead> 2352 <tr> 2353 <th>Header Field Name</th> 2354 <th>Defined in...</th> 2355 </tr> 2356 </thead> 2357 <tbody> 2358 <tr> 2359 <td class="left">Content-Length</td> 2360 <td class="left"><a href="p1-messaging.html#header.content-length" title="Content-Length">Section 3.3.2</a> of <a href="#Part1" id="rfc.xref.Part1.42"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a></td> 2361 </tr> 2362 <tr> 2363 <td class="left">Content-Range</td> 2364 <td class="left"><a href="p5-range.html#header.content-range" title="Content-Range">Section 5.2</a> of <a href="#Part5" id="rfc.xref.Part5.8"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a></td> 2365 </tr> 2366 </tbody> 2367 </table> 2368 </div> 2369 <h2 id="rfc.section.6.2"><a href="#rfc.section.6.2">6.2</a> <a id="payload.body" href="#payload.body">Payload Body</a></h2> 2370 <p id="rfc.section.6.2.p.1">A payload body is only present in a message when a message body is present, as described in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.43"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. The payload body is obtained from the message body by decoding any Transfer-Encoding that might have been applied to ensure 2371 safe and proper transfer of the message. 2372 </p> 2373 <h1 id="rfc.section.7"><a href="#rfc.section.7">7.</a> <a id="representation" href="#representation">Representation</a></h1> 2374 <p id="rfc.section.7.p.1">Request and Response messages <em class="bcp14">MAY</em> transfer a representation if not otherwise restricted by the request method or response status code. A representation consists 2375 of metadata (representation header fields) and data (representation body). When a complete or partial representation is enclosed 2376 in an HTTP message, it is referred to as the payload of the message. 2377 </p> 2378 <p id="rfc.section.7.p.2">A representation body is only present in a message when a message body is present, as described in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.44"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. The representation body is obtained from the message body by decoding any Transfer-Encoding that might have been applied 2379 to ensure safe and proper transfer of the message. 2380 </p> 2381 <h2 id="rfc.section.7.1"><a href="#rfc.section.7.1">7.1</a> <a id="identifying.response.associated.with.representation" href="#identifying.response.associated.with.representation">Identifying the Resource Associated with a Representation</a></h2> 2382 <p id="rfc.section.7.1.p.1">It is sometimes necessary to determine an identifier for the resource associated with a representation.</p> 2383 <p id="rfc.section.7.1.p.2">An HTTP request representation, when present, is always associated with an anonymous (i.e., unidentified) resource.</p> 2384 <p id="rfc.section.7.1.p.3">In the common case, an HTTP response is a representation of the target resource (see <a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 5.5</a> of <a href="#Part1" id="rfc.xref.Part1.45"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). However, this is not always the case. To determine the URI of the resource a response is associated with, the following 2385 rules are used (with the first applicable one being selected): 2386 </p> 2387 <ol> 2388 <li>If the response status code is 200 or 203 and the request method was GET, the response payload is a representation of the 2389 target resource. 2390 </li> 2391 <li>If the response status code is 204, 206, or 304 and the request method was GET or HEAD, the response payload is a partial 2392 representation of the target resource. 2393 </li> 2394 <li>If the response has a Content-Location header field, and that URI is the same as the effective request URI, the response payload 2395 is a representation of the target resource. 2396 </li> 2397 <li>If the response has a Content-Location header field, and that URI is not the same as the effective request URI, then the response 2398 asserts that its payload is a representation of the resource identified by the Content-Location URI. However, such an assertion 2399 cannot be trusted unless it can be verified by other means (not defined by HTTP). 2400 </li> 2401 <li>Otherwise, the response is a representation of an anonymous (i.e., unidentified) resource.</li> 2402 </ol> 2403 <p id="rfc.section.7.1.p.5"> <span class="comment" id="TODO-req-uri">[<a href="#TODO-req-uri" class="smpl">TODO-req-uri</a>: The comparison function is going to have to be defined somewhere, because we already need to compare URIs for things like 2404 cache invalidation.]</span> 2405 </p> 2406 <h1 id="rfc.section.8"><a href="#rfc.section.8">8.</a> <a id="content.negotiation" href="#content.negotiation">Content Negotiation</a></h1> 2407 <p id="rfc.section.8.p.1">HTTP responses include a representation which contains information for interpretation, whether by a human user or for further 2408 processing. Often, the server has different ways of representing the same information; for example, in different formats, 2409 languages, or using different character encodings. 2410 </p> 2411 <p id="rfc.section.8.p.2">HTTP clients and their users might have different or variable capabilities, characteristics or preferences which would influence 2412 which representation, among those available from the server, would be best for the server to deliver. For this reason, HTTP 2413 provides mechanisms for "content negotiation" — a process of allowing selection of a representation of a given resource, when 2414 more than one is available. 2415 </p> 2416 <p id="rfc.section.8.p.3">This specification defines two patterns of content negotiation; "server-driven", where the server selects the representation 2417 based upon the client's stated preferences, and "agent-driven" negotiation, where the server provides a list of representations 2418 for the client to choose from, based upon their metadata. In addition, there are other patterns: some applications use an 2419 "active content" pattern, where the server returns active content which runs on the client and, based on client available 2420 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. 2421 </p> 2422 <p id="rfc.section.8.p.4">These patterns are all widely used, and have trade-offs in applicability and practicality. In particular, when the number 2423 of preferences or capabilities to be expressed by a client are large (such as when many different formats are supported by 2424 a user-agent), server-driven negotiation becomes unwieldy, and might not be appropriate. Conversely, when the number of representations 2425 to choose from is very large, agent-driven negotiation might not be appropriate. 2426 </p> 2427 <p id="rfc.section.8.p.5">Note that in all cases, the supplier of representations has the responsibility for determining which representations might 2428 be considered to be the "same information". 2429 </p> 2430 <h2 id="rfc.section.8.1"><a href="#rfc.section.8.1">8.1</a> <a id="server-driven.negotiation" href="#server-driven.negotiation">Server-driven Negotiation</a></h2> 2431 <p id="rfc.section.8.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 2432 negotiation. Selection is based on the available representations of the response (the dimensions over which it can vary; e.g., 2433 language, content-coding, etc.) and the contents of particular header fields in the request message or on other information 2434 pertaining to the request (such as the network address of the client). 2435 </p> 2436 <p id="rfc.section.8.1.p.2">Server-driven negotiation is advantageous when the algorithm for selecting from among the available representations is difficult 2437 to describe to the user agent, or when the server desires to send its "best guess" to the client along with the first response 2438 (hoping to avoid the round-trip delay of a subsequent request if the "best guess" is good enough for the user). In order to 2439 improve the server's guess, the user agent <em class="bcp14">MAY</em> include request header fields (Accept, Accept-Language, Accept-Encoding, etc.) which describe its preferences for such a response. 2440 </p> 2441 <p id="rfc.section.8.1.p.3">Server-driven negotiation has disadvantages: </p> 2442 <ol> 2443 <li>It is impossible for the server to accurately determine what might be "best" for any given user, since that would require 2444 complete knowledge of both the capabilities of the user agent and the intended use for the response (e.g., does the user want 2445 to view it on screen or print it on paper?). 2446 </li> 2447 <li>Having the user agent describe its capabilities in every request can be both very inefficient (given that only a small percentage 2448 of responses have multiple representations) and a potential violation of the user's privacy. 2449 </li> 2450 <li>It complicates the implementation of an origin server and the algorithms for generating responses to a request.</li> 2451 <li>It might limit a public cache's ability to use the same response for multiple user's requests.</li> 2452 </ol> 2453 <p id="rfc.section.8.1.p.4">Server-driven negotiation allows the user agent to specify its preferences, but it cannot expect responses to always honor 2454 them. For example, the origin server might not implement server-driven negotiation, or it might decide that sending a response 2455 that doesn't conform to them is better than sending a 406 (Not Acceptable) response. 2456 </p> 2457 <p id="rfc.section.8.1.p.5">Many of the mechanisms for expressing preferences use quality values to declare relative preference. See <a href="p1-messaging.html#quality.values" title="Quality Values">Section 4.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.46"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for more information. 2458 </p> 2459 <p id="rfc.section.8.1.p.6">HTTP/1.1 includes the following header fields for enabling server-driven negotiation through description of user agent capabilities 2460 and user preferences: Accept (<a href="#header.accept" id="rfc.xref.header.accept.3" title="Accept">Section 9.1</a>), Accept-Charset (<a href="#header.accept-charset" id="rfc.xref.header.accept-charset.2" title="Accept-Charset">Section 9.2</a>), Accept-Encoding (<a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.3" title="Accept-Encoding">Section 9.3</a>), Accept-Language (<a href="#header.accept-language" id="rfc.xref.header.accept-language.2" title="Accept-Language">Section 9.4</a>), and User-Agent (<a href="#header.user-agent" id="rfc.xref.header.user-agent.2" title="User-Agent">Section 9.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 information 2461 within extension header fields not defined by this specification. 2462 </p> 2463 <div class="note" id="rfc.section.8.1.p.7"> 2464 <p> <b>Note:</b> In practice, User-Agent based negotiation is fragile, because new clients might not be recognized. 2465 </p> 2466 </div> 2467 <p id="rfc.section.8.1.p.8">The Vary header field (<a href="p6-cache.html#header.vary" title="Vary">Section 3.5</a> of <a href="#Part6" id="rfc.xref.Part6.18"><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. 2468 </p> 2469 <h2 id="rfc.section.8.2"><a href="#rfc.section.8.2">8.2</a> <a id="agent-driven.negotiation" href="#agent-driven.negotiation">Agent-driven Negotiation</a></h2> 2470 <p id="rfc.section.8.2.p.1">With agent-driven negotiation, selection of the best representation for a response is performed by the user agent after receiving 2471 an initial response from the origin server. Selection is based on a list of the available representations of the response 2472 included within the header fields or body of the initial response, with each representation identified by its own URI. Selection 2473 from among the representations can be performed automatically (if the user agent is capable of doing so) or manually by the 2474 user selecting from a generated (possibly hypertext) menu. 2475 </p> 2476 <p id="rfc.section.8.2.p.2">Agent-driven negotiation is advantageous when the response would vary over commonly-used dimensions (such as type, language, 2477 or encoding), when the origin server is unable to determine a user agent's capabilities from examining the request, and generally 2478 when public caches are used to distribute server load and reduce network usage. 2479 </p> 2480 <p id="rfc.section.8.2.p.3">Agent-driven negotiation suffers from the disadvantage of needing a second request to obtain the best alternate representation. 2481 This second request is only efficient when caching is used. In addition, this specification does not define any mechanism 2482 for supporting automatic selection, though it also does not prevent any such mechanism from being developed as an extension 2483 and used within HTTP/1.1. 2484 </p> 2485 <p id="rfc.section.8.2.p.4">This specification defines the 300 (Multiple Choices) and 406 (Not Acceptable) status codes for enabling agent-driven negotiation 2486 when the server is unwilling or unable to provide a varying response using server-driven negotiation. 2487 </p> 2488 <h1 id="rfc.section.9"><a href="#rfc.section.9">9.</a> <a id="header.field.definitions" href="#header.field.definitions">Header Field Definitions</a></h1> 2489 <p id="rfc.section.9.p.1">This section defines the syntax and semantics of HTTP/1.1 header fields related to request and response semantics and to the 2372 2490 payload of messages. 2373 2491 </p> 2374 2492 <div id="rfc.iref.a.1"></div> 2375 2493 <div id="rfc.iref.h.2"></div> 2376 <h2 id="rfc.section. 7.1"><a href="#rfc.section.7.1">7.1</a> <a id="header.accept" href="#header.accept">Accept</a></h2>2377 <p id="rfc.section. 7.1.p.1">The "Accept" header field can be used by user agents to specify response media types that are acceptable. Accept header fields2494 <h2 id="rfc.section.9.1"><a href="#rfc.section.9.1">9.1</a> <a id="header.accept" href="#header.accept">Accept</a></h2> 2495 <p id="rfc.section.9.1.p.1">The "Accept" header field can be used by user agents to specify response media types that are acceptable. Accept header fields 2378 2496 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 2379 2497 for an in-line image. … … 2387 2505 <a href="#header.accept" class="smpl">accept-params</a> = <a href="#core.rules" class="smpl">OWS</a> ";" <a href="#core.rules" class="smpl">OWS</a> "q=" <a href="#abnf.dependencies" class="smpl">qvalue</a> *( <a href="#header.accept" class="smpl">accept-ext</a> ) 2388 2506 <a href="#header.accept" class="smpl">accept-ext</a> = <a href="#core.rules" class="smpl">OWS</a> ";" <a href="#core.rules" class="smpl">OWS</a> <a href="#core.rules" class="smpl">token</a> [ "=" <a href="#core.rules" class="smpl">word</a> ] 2389 </pre><p id="rfc.section. 7.1.p.3">The asterisk "*" character is used to group media types into ranges, with "*/*" indicating all media types and "type/*" indicating2507 </pre><p id="rfc.section.9.1.p.3">The asterisk "*" character is used to group media types into ranges, with "*/*" indicating all media types and "type/*" indicating 2390 2508 all subtypes of that type. The media-range <em class="bcp14">MAY</em> include media type parameters that are applicable to that range. 2391 2509 </p> 2392 <p id="rfc.section. 7.1.p.4">Each media-range <em class="bcp14">MAY</em> be followed by one or more accept-params, beginning with the "q" parameter for indicating a relative quality factor. The first2510 <p id="rfc.section.9.1.p.4">Each media-range <em class="bcp14">MAY</em> be followed by one or more accept-params, beginning with the "q" parameter for indicating a relative quality factor. The first 2393 2511 "q" parameter (if any) separates the media-range parameter(s) from the accept-params. Quality factors allow the user or user 2394 agent to indicate the relative degree of preference for that media-range, using the qvalue scale from 0 to 1 (<a href="p1-messaging.html#quality.values" title="Quality Values">Section 4.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.4 4"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). The default value is q=1.2395 </p> 2396 <div class="note" id="rfc.section. 7.1.p.5">2512 agent to indicate the relative degree of preference for that media-range, using the qvalue scale from 0 to 1 (<a href="p1-messaging.html#quality.values" title="Quality Values">Section 4.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.47"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). The default value is q=1. 2513 </p> 2514 <div class="note" id="rfc.section.9.1.p.5"> 2397 2515 <p> <b>Note:</b> Use of the "q" parameter name to separate media type parameters from Accept extension parameters is due to historical practice. 2398 2516 Although this prevents any media type parameter named "q" from being used with a media range, such an event is believed to … … 2401 2519 </p> 2402 2520 </div> 2403 <p id="rfc.section. 7.1.p.6">The example</p>2521 <p id="rfc.section.9.1.p.6">The example</p> 2404 2522 <div id="rfc.figure.u.24"></div><pre class="text"> Accept: audio/*; q=0.2, audio/basic 2405 </pre><p id="rfc.section. 7.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 in2523 </pre><p id="rfc.section.9.1.p.8"> <em class="bcp14">SHOULD</em> be interpreted as "I prefer audio/basic, but send me any audio type if it is the best available after an 80% mark-down in 2406 2524 quality". 2407 2525 </p> 2408 <p id="rfc.section. 7.1.p.9">A request without any Accept header field implies that the user agent will accept any media type in response. If an Accept2526 <p id="rfc.section.9.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 2409 2527 header field is present in a request and none of the available representations for the response have a media type that is 2410 2528 listed as acceptable, the origin server <em class="bcp14">MAY</em> either honor the Accept header field by sending a 406 (Not Acceptable) response or disregard the Accept header field by treating 2411 2529 the response as if it is not subject to content negotiation. 2412 2530 </p> 2413 <p id="rfc.section. 7.1.p.10">A more elaborate example is</p>2531 <p id="rfc.section.9.1.p.10">A more elaborate example is</p> 2414 2532 <div id="rfc.figure.u.25"></div><pre class="text"> Accept: text/plain; q=0.5, text/html, 2415 2533 text/x-dvi; q=0.8, text/x-c 2416 </pre><p id="rfc.section. 7.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, then2534 </pre><p id="rfc.section.9.1.p.12">Verbally, this would be interpreted as "text/html and text/x-c are the preferred media types, but if they do not exist, then 2417 2535 send the text/x-dvi representation, and if that does not exist, send the text/plain representation". 2418 2536 </p> 2419 <p id="rfc.section. 7.1.p.13">Media ranges can be overridden by more specific media ranges or specific media types. If more than one media range applies2537 <p id="rfc.section.9.1.p.13">Media ranges can be overridden by more specific media ranges or specific media types. If more than one media range applies 2420 2538 to a given type, the most specific reference has precedence. For example, 2421 2539 </p> 2422 2540 <div id="rfc.figure.u.26"></div><pre class="text"> Accept: text/*, text/plain, text/plain;format=flowed, */* 2423 </pre><p id="rfc.section. 7.1.p.15">have the following precedence: </p>2541 </pre><p id="rfc.section.9.1.p.15">have the following precedence: </p> 2424 2542 <ol> 2425 2543 <li>text/plain;format=flowed</li> … … 2428 2546 <li>*/*</li> 2429 2547 </ol> 2430 <p id="rfc.section. 7.1.p.16">The media type quality factor associated with a given type is determined by finding the media range with the highest precedence2548 <p id="rfc.section.9.1.p.16">The media type quality factor associated with a given type is determined by finding the media range with the highest precedence 2431 2549 which matches that type. For example, 2432 2550 </p> 2433 2551 <div id="rfc.figure.u.27"></div><pre class="text"> Accept: text/*;q=0.3, text/html;q=0.7, text/html;level=1, 2434 2552 text/html;level=2;q=0.4, */*;q=0.5 2435 </pre><p id="rfc.section. 7.1.p.18">would cause the following values to be associated:</p>2436 <div id="rfc.table.u. 4">2553 </pre><p id="rfc.section.9.1.p.18">would cause the following values to be associated:</p> 2554 <div id="rfc.table.u.5"> 2437 2555 <table class="tt full left" cellpadding="3" cellspacing="0"> 2438 2556 <thead> … … 2470 2588 </table> 2471 2589 </div> 2472 <p id="rfc.section. 7.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 agent2590 <p id="rfc.section.9.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 2473 2591 is a closed system which cannot interact with other rendering agents, this default set ought to be configurable by the user. 2474 2592 </p> 2475 2593 <div id="rfc.iref.a.2"></div> 2476 2594 <div id="rfc.iref.h.3"></div> 2477 <h2 id="rfc.section. 7.2"><a href="#rfc.section.7.2">7.2</a> <a id="header.accept-charset" href="#header.accept-charset">Accept-Charset</a></h2>2478 <p id="rfc.section. 7.2.p.1">The "Accept-Charset" header field can be used by user agents to indicate what character encodings are acceptable in a response2595 <h2 id="rfc.section.9.2"><a href="#rfc.section.9.2">9.2</a> <a id="header.accept-charset" href="#header.accept-charset">Accept-Charset</a></h2> 2596 <p id="rfc.section.9.2.p.1">The "Accept-Charset" header field can be used by user agents to indicate what character encodings are acceptable in a response 2479 2597 payload. This field allows clients capable of understanding more comprehensive or special-purpose character encodings to signal 2480 2598 that capability to a server which is capable of representing documents in those character encodings. … … 2482 2600 <div id="rfc.figure.u.28"></div><pre class="inline"><span id="rfc.iref.g.35"></span> <a href="#header.accept-charset" class="smpl">Accept-Charset</a> = 1#( ( <a href="#rule.charset" class="smpl">charset</a> / "*" ) 2483 2601 [ <a href="#core.rules" class="smpl">OWS</a> ";" <a href="#core.rules" class="smpl">OWS</a> "q=" <a href="#abnf.dependencies" class="smpl">qvalue</a> ] ) 2484 </pre><p id="rfc.section. 7.2.p.3">Character encoding values (a.k.a., charsets) are described in <a href="#character.sets" title="Character Encodings (charset)">Section 6.3</a>. Each charset <em class="bcp14">MAY</em> be given an associated quality value which represents the user's preference for that charset. The default value is q=1. An2602 </pre><p id="rfc.section.9.2.p.3">Character encoding values (a.k.a., charsets) are described in <a href="#character.sets" title="Character Encodings (charset)">Section 5.3</a>. Each charset <em class="bcp14">MAY</em> be given an associated quality value which represents the user's preference for that charset. The default value is q=1. An 2485 2603 example is 2486 2604 </p> 2487 2605 <div id="rfc.figure.u.29"></div><pre class="text"> Accept-Charset: iso-8859-5, unicode-1-1;q=0.8 2488 </pre><p id="rfc.section. 7.2.p.5">The special value "*", if present in the Accept-Charset field, matches every character encoding which is not mentioned elsewhere2606 </pre><p id="rfc.section.9.2.p.5">The special value "*", if present in the Accept-Charset field, matches every character encoding which is not mentioned elsewhere 2489 2607 in the Accept-Charset field. If no "*" is present in an Accept-Charset field, then all character encodings not explicitly 2490 2608 mentioned get a quality value of 0. 2491 2609 </p> 2492 <p id="rfc.section. 7.2.p.6">A request without any Accept-Charset header field implies that the user agent will accept any character encoding in response.2610 <p id="rfc.section.9.2.p.6">A request without any Accept-Charset header field implies that the user agent will accept any character encoding in response. 2493 2611 If an Accept-Charset header field is present in a request and none of the available representations for the response have 2494 2612 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 406 (Not Acceptable) response or disregard the Accept-Charset header … … 2497 2615 <div id="rfc.iref.a.3"></div> 2498 2616 <div id="rfc.iref.h.4"></div> 2499 <h2 id="rfc.section. 7.3"><a href="#rfc.section.7.3">7.3</a> <a id="header.accept-encoding" href="#header.accept-encoding">Accept-Encoding</a></h2>2500 <p id="rfc.section. 7.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 6.4</a>) are acceptable in the response. An "identity" token is used as a synonym for "no encoding" in order to communicate when2617 <h2 id="rfc.section.9.3"><a href="#rfc.section.9.3">9.3</a> <a id="header.accept-encoding" href="#header.accept-encoding">Accept-Encoding</a></h2> 2618 <p id="rfc.section.9.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 5.4</a>) are acceptable in the response. An "identity" token is used as a synonym for "no encoding" in order to communicate when 2501 2619 no encoding is preferred. 2502 2620 </p> 2503 2621 <div id="rfc.figure.u.30"></div><pre class="inline"><span id="rfc.iref.g.36"></span><span id="rfc.iref.g.37"></span> <a href="#header.accept-encoding" class="smpl">Accept-Encoding</a> = #( <a href="#header.accept-encoding" class="smpl">codings</a> [ <a href="#core.rules" class="smpl">OWS</a> ";" <a href="#core.rules" class="smpl">OWS</a> "q=" <a href="#abnf.dependencies" class="smpl">qvalue</a> ] ) 2504 2622 <a href="#header.accept-encoding" class="smpl">codings</a> = <a href="#content.codings" class="smpl">content-coding</a> / "identity" / "*" 2505 </pre><p id="rfc.section. 7.3.p.3">Each codings value <em class="bcp14">MAY</em> be given an associated quality value which represents the preference for that encoding. The default value is q=1.2506 </p> 2507 <p id="rfc.section. 7.3.p.4">For example,</p>2623 </pre><p id="rfc.section.9.3.p.3">Each codings value <em class="bcp14">MAY</em> be given an associated quality value which represents the preference for that encoding. The default value is q=1. 2624 </p> 2625 <p id="rfc.section.9.3.p.4">For example,</p> 2508 2626 <div id="rfc.figure.u.31"></div><pre class="text"> Accept-Encoding: compress, gzip 2509 2627 Accept-Encoding: … … 2511 2629 Accept-Encoding: compress;q=0.5, gzip;q=1.0 2512 2630 Accept-Encoding: gzip;q=1.0, identity; q=0.5, *;q=0 2513 </pre><p id="rfc.section. 7.3.p.6">A server tests whether a content-coding for a given representation is acceptable, according to an Accept-Encoding field, using2631 </pre><p id="rfc.section.9.3.p.6">A server tests whether a content-coding for a given representation is acceptable, according to an Accept-Encoding field, using 2514 2632 these rules: 2515 2633 </p> … … 2522 2640 </li> 2523 2641 <li>If the representation's content-coding is one of the content-codings listed in the Accept-Encoding field, then it is acceptable 2524 unless it is accompanied by a qvalue of 0. (As defined in <a href="p1-messaging.html#quality.values" title="Quality Values">Section 4.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.4 5"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, a qvalue of 0 means "not acceptable".)2642 unless it is accompanied by a qvalue of 0. (As defined in <a href="p1-messaging.html#quality.values" title="Quality Values">Section 4.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.48"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, a qvalue of 0 means "not acceptable".) 2525 2643 </li> 2526 2644 <li>If multiple content-codings are acceptable, then the acceptable content-coding with the highest non-zero qvalue is preferred.</li> 2527 2645 </ol> 2528 <p id="rfc.section. 7.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-coding2646 <p id="rfc.section.9.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 2529 2647 in response. If an Accept-Encoding header field is present in a request and none of the available representations for the 2530 2648 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. 2531 2649 </p> 2532 <p id="rfc.section. 7.3.p.8">A request without an Accept-Encoding header field implies that the user agent will accept any content-coding in response,2650 <p id="rfc.section.9.3.p.8">A request without an Accept-Encoding header field implies that the user agent will accept any content-coding in response, 2533 2651 but a representation without content-coding is preferred for compatibility with the widest variety of user agents. 2534 2652 </p> 2535 <div class="note" id="rfc.section. 7.3.p.9">2653 <div class="note" id="rfc.section.9.3.p.9"> 2536 2654 <p> <b>Note:</b> Most HTTP/1.0 applications do not recognize or obey qvalues associated with content-codings. This means that qvalues will 2537 2655 not work and are not permitted with x-gzip or x-compress. … … 2540 2658 <div id="rfc.iref.a.4"></div> 2541 2659 <div id="rfc.iref.h.5"></div> 2542 <h2 id="rfc.section. 7.4"><a href="#rfc.section.7.4">7.4</a> <a id="header.accept-language" href="#header.accept-language">Accept-Language</a></h2>2543 <p id="rfc.section. 7.4.p.1">The "Accept-Language" header field can be used by user agents to indicate the set of natural languages that are preferred2544 in the response. Language tags are defined in <a href="#language.tags" title="Language Tags">Section 6.6</a>.2660 <h2 id="rfc.section.9.4"><a href="#rfc.section.9.4">9.4</a> <a id="header.accept-language" href="#header.accept-language">Accept-Language</a></h2> 2661 <p id="rfc.section.9.4.p.1">The "Accept-Language" header field can be used by user agents to indicate the set of natural languages that are preferred 2662 in the response. Language tags are defined in <a href="#language.tags" title="Language Tags">Section 5.6</a>. 2545 2663 </p> 2546 2664 <div id="rfc.figure.u.32"></div><pre class="inline"><span id="rfc.iref.g.38"></span><span id="rfc.iref.g.39"></span> <a href="#header.accept-language" class="smpl">Accept-Language</a> = … … 2548 2666 <a href="#header.accept-language" class="smpl">language-range</a> = 2549 2667 <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>> 2550 </pre><p id="rfc.section. 7.4.p.3">Each language-range can be given an associated quality value which represents an estimate of the user's preference for the2668 </pre><p id="rfc.section.9.4.p.3">Each language-range can be given an associated quality value which represents an estimate of the user's preference for the 2551 2669 languages specified by that range. The quality value defaults to "q=1". For example, 2552 2670 </p> 2553 2671 <div id="rfc.figure.u.33"></div><pre class="text"> Accept-Language: da, en-gb;q=0.8, en;q=0.7 2554 </pre><p id="rfc.section. 7.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>)2555 </p> 2556 <p id="rfc.section. 7.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.2557 </p> 2558 <div class="note" id="rfc.section. 7.4.p.7">2672 </pre><p id="rfc.section.9.4.p.5">would mean: "I prefer Danish, but will accept British English and other types of English". (see also <a href="http://tools.ietf.org/html/rfc4647#section-2.3">Section 2.3</a> of <a href="#RFC4647" id="rfc.xref.RFC4647.2"><cite title="Matching of Language Tags">[RFC4647]</cite></a>) 2673 </p> 2674 <p id="rfc.section.9.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. 2675 </p> 2676 <div class="note" id="rfc.section.9.4.p.7"> 2559 2677 <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.3"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2616]</cite></a>. 2560 2678 </p> 2561 2679 </div> 2562 <p id="rfc.section. 7.4.p.8">It might be contrary to the privacy expectations of the user to send an Accept-Language header field with the complete linguistic2563 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 9.5</a>.2564 </p> 2565 <p id="rfc.section. 7.4.p.9">As intelligibility is highly dependent on the individual user, it is recommended that client applications make the choice2680 <p id="rfc.section.9.4.p.8">It might be contrary to the privacy expectations of the user to send an Accept-Language header field with the complete linguistic 2681 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>. 2682 </p> 2683 <p id="rfc.section.9.4.p.9">As intelligibility is highly dependent on the individual user, it is recommended that client applications make the choice 2566 2684 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. 2567 2685 </p> 2568 <div class="note" id="rfc.section. 7.4.p.10">2686 <div class="note" id="rfc.section.9.4.p.10"> 2569 2687 <p> <b>Note:</b> When making the choice of linguistic preference available to the user, we remind implementors of the fact that users are not 2570 2688 familiar with the details of language matching as described above, and ought to be provided appropriate guidance. As an example, … … 2575 2693 <div id="rfc.iref.a.5"></div> 2576 2694 <div id="rfc.iref.h.6"></div> 2577 <h2 id="rfc.section. 7.5"><a href="#rfc.section.7.5">7.5</a> <a id="header.allow" href="#header.allow">Allow</a></h2>2578 <p id="rfc.section. 7.5.p.1">The "Allow" header field lists the set of methods advertised as supported by the target resource. The purpose of this field2695 <h2 id="rfc.section.9.5"><a href="#rfc.section.9.5">9.5</a> <a id="header.allow" href="#header.allow">Allow</a></h2> 2696 <p id="rfc.section.9.5.p.1">The "Allow" header field lists the set of methods advertised as supported by the target resource. The purpose of this field 2579 2697 is strictly to inform the recipient of valid request methods associated with the resource. 2580 2698 </p> 2581 2699 <div id="rfc.figure.u.34"></div><pre class="inline"><span id="rfc.iref.g.40"></span> <a href="#header.allow" class="smpl">Allow</a> = #<a href="#methods" class="smpl">method</a> 2582 </pre><p id="rfc.section. 7.5.p.3">Example of use:</p>2700 </pre><p id="rfc.section.9.5.p.3">Example of use:</p> 2583 2701 <div id="rfc.figure.u.35"></div><pre class="text"> Allow: GET, HEAD, PUT 2584 </pre><p id="rfc.section. 7.5.p.5">The actual set of allowed methods is defined by the origin server at the time of each request.</p>2585 <p id="rfc.section. 7.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 according2702 </pre><p id="rfc.section.9.5.p.5">The actual set of allowed methods is defined by the origin server at the time of each request.</p> 2703 <p id="rfc.section.9.5.p.6">A proxy <em class="bcp14">MUST NOT</em> modify the Allow header field — it does not need to understand all the methods specified in order to handle them according 2586 2704 to the generic message handling rules. 2587 2705 </p> 2588 2706 <div id="rfc.iref.c.7"></div> 2589 2707 <div id="rfc.iref.h.7"></div> 2590 <h2 id="rfc.section. 7.6"><a href="#rfc.section.7.6">7.6</a> <a id="header.content-encoding" href="#header.content-encoding">Content-Encoding</a></h2>2591 <p id="rfc.section. 7.6.p.1">The "Content-Encoding" header field indicates what content-codings have been applied to the representation beyond those inherent2708 <h2 id="rfc.section.9.6"><a href="#rfc.section.9.6">9.6</a> <a id="header.content-encoding" href="#header.content-encoding">Content-Encoding</a></h2> 2709 <p id="rfc.section.9.6.p.1">The "Content-Encoding" header field indicates what content-codings have been applied to the representation beyond those inherent 2592 2710 in the media type, and thus what decoding mechanisms have to be applied in order to obtain the media-type referenced by the 2593 2711 Content-Type header field. Content-Encoding is primarily used to allow a representation to be compressed without losing the … … 2595 2713 </p> 2596 2714 <div id="rfc.figure.u.36"></div><pre class="inline"><span id="rfc.iref.g.41"></span> <a href="#header.content-encoding" class="smpl">Content-Encoding</a> = 1#<a href="#content.codings" class="smpl">content-coding</a> 2597 </pre><p id="rfc.section. 7.6.p.3">Content codings are defined in <a href="#content.codings" title="Content Codings">Section 6.4</a>. An example of its use is2715 </pre><p id="rfc.section.9.6.p.3">Content codings are defined in <a href="#content.codings" title="Content Codings">Section 5.4</a>. An example of its use is 2598 2716 </p> 2599 2717 <div id="rfc.figure.u.37"></div><pre class="text"> Content-Encoding: gzip 2600 </pre><p id="rfc.section. 7.6.p.5">The content-coding is a characteristic of the representation. Typically, the representation body is stored with this encoding2718 </pre><p id="rfc.section.9.6.p.5">The content-coding is a characteristic of the representation. Typically, the representation body is stored with this encoding 2601 2719 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 2602 2720 directive is present in the message. 2603 2721 </p> 2604 <p id="rfc.section. 7.6.p.6">If the media type includes an inherent encoding, such as a data format that is always compressed, then that encoding would2722 <p id="rfc.section.9.6.p.6">If the media type includes an inherent encoding, such as a data format that is always compressed, then that encoding would 2605 2723 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 2606 2724 would only be listed if, for some bizarre reason, it is applied a second time to form the representation. Likewise, an origin … … 2609 2727 response (e.g., open a "Save as ..." dialog instead of automatic decompression and rendering of content). 2610 2728 </p> 2611 <p id="rfc.section. 7.6.p.7">A representation that has a content-coding applied to it <em class="bcp14">MUST</em> include a Content-Encoding header field (<a href="#header.content-encoding" id="rfc.xref.header.content-encoding.2" title="Content-Encoding">Section 7.6</a>) that lists the content-coding(s) applied.2612 </p> 2613 <p id="rfc.section. 7.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.2614 </p> 2615 <p id="rfc.section. 7.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).2729 <p id="rfc.section.9.6.p.7">A representation that has a content-coding applied to it <em class="bcp14">MUST</em> include a Content-Encoding header field (<a href="#header.content-encoding" id="rfc.xref.header.content-encoding.2" title="Content-Encoding">Section 9.6</a>) that lists the content-coding(s) applied. 2730 </p> 2731 <p id="rfc.section.9.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. 2732 </p> 2733 <p id="rfc.section.9.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). 2616 2734 </p> 2617 2735 <div id="rfc.iref.c.8"></div> 2618 2736 <div id="rfc.iref.h.8"></div> 2619 <h2 id="rfc.section. 7.7"><a href="#rfc.section.7.7">7.7</a> <a id="header.content-language" href="#header.content-language">Content-Language</a></h2>2620 <p id="rfc.section. 7.7.p.1">The "Content-Language" header field describes the natural language(s) of the intended audience for the representation. Note2737 <h2 id="rfc.section.9.7"><a href="#rfc.section.9.7">9.7</a> <a id="header.content-language" href="#header.content-language">Content-Language</a></h2> 2738 <p id="rfc.section.9.7.p.1">The "Content-Language" header field describes the natural language(s) of the intended audience for the representation. Note 2621 2739 that this might not be equivalent to all the languages used within the representation. 2622 2740 </p> 2623 2741 <div id="rfc.figure.u.38"></div><pre class="inline"><span id="rfc.iref.g.42"></span> <a href="#header.content-language" class="smpl">Content-Language</a> = 1#<a href="#language.tags" class="smpl">language-tag</a> 2624 </pre><p id="rfc.section. 7.7.p.3">Language tags are defined in <a href="#language.tags" title="Language Tags">Section 6.6</a>. The primary purpose of Content-Language is to allow a user to identify and differentiate representations according to the2742 </pre><p id="rfc.section.9.7.p.3">Language tags are defined in <a href="#language.tags" title="Language Tags">Section 5.6</a>. The primary purpose of Content-Language is to allow a user to identify and differentiate representations according to the 2625 2743 user's own preferred language. Thus, if the body content is intended only for a Danish-literate audience, the appropriate 2626 2744 field is 2627 2745 </p> 2628 2746 <div id="rfc.figure.u.39"></div><pre class="text"> Content-Language: da 2629 </pre><p id="rfc.section. 7.7.p.5">If no Content-Language is specified, the default is that the content is intended for all language audiences. This might mean2747 </pre><p id="rfc.section.9.7.p.5">If no Content-Language is specified, the default is that the content is intended for all language audiences. This might mean 2630 2748 that the sender does not consider it to be specific to any natural language, or that the sender does not know for which language 2631 2749 it is intended. 2632 2750 </p> 2633 <p id="rfc.section. 7.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", presented2751 <p id="rfc.section.9.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 2634 2752 simultaneously in the original Maori and English versions, would call for 2635 2753 </p> 2636 2754 <div id="rfc.figure.u.40"></div><pre class="text"> Content-Language: mi, en 2637 </pre><p id="rfc.section. 7.7.p.8">However, just because multiple languages are present within a representation does not mean that it is intended for multiple2755 </pre><p id="rfc.section.9.7.p.8">However, just because multiple languages are present within a representation does not mean that it is intended for multiple 2638 2756 linguistic audiences. An example would be a beginner's language primer, such as "A First Lesson in Latin", which is clearly 2639 2757 intended to be used by an English-literate audience. In this case, the Content-Language would properly only include "en". 2640 2758 </p> 2641 <p id="rfc.section. 7.7.p.9">Content-Language <em class="bcp14">MAY</em> be applied to any media type — it is not limited to textual documents.2759 <p id="rfc.section.9.7.p.9">Content-Language <em class="bcp14">MAY</em> be applied to any media type — it is not limited to textual documents. 2642 2760 </p> 2643 2761 <div id="rfc.iref.c.9"></div> 2644 2762 <div id="rfc.iref.h.9"></div> 2645 <h2 id="rfc.section. 7.8"><a href="#rfc.section.7.8">7.8</a> <a id="header.content-location" href="#header.content-location">Content-Location</a></h2>2646 <p id="rfc.section. 7.8.p.1">The "Content-Location" header field supplies a URI that can be used as a specific identifier for the representation in this2763 <h2 id="rfc.section.9.8"><a href="#rfc.section.9.8">9.8</a> <a id="header.content-location" href="#header.content-location">Content-Location</a></h2> 2764 <p id="rfc.section.9.8.p.1">The "Content-Location" header field supplies a URI that can be used as a specific identifier for the representation in this 2647 2765 message. In other words, if one were to perform a GET on this URI at the time of this message's generation, then a 200 response 2648 2766 would contain the same representation that is enclosed as payload in this message. 2649 2767 </p> 2650 2768 <div id="rfc.figure.u.41"></div><pre class="inline"><span id="rfc.iref.g.43"></span> <a href="#header.content-location" class="smpl">Content-Location</a> = <a href="#abnf.dependencies" class="smpl">absolute-URI</a> / <a href="#abnf.dependencies" class="smpl">partial-URI</a> 2651 </pre><p id="rfc.section. 7.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.46"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). It is representation metadata. It has the same syntax and semantics as the header field of the same name defined for MIME2769 </pre><p id="rfc.section.9.8.p.3">The Content-Location value is not a replacement for the effective Request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 5.5</a> of <a href="#Part1" id="rfc.xref.Part1.49"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). It is representation metadata. It has the same syntax and semantics as the header field of the same name defined for MIME 2652 2770 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. 2653 2771 </p> 2654 <p id="rfc.section. 7.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 response2772 <p id="rfc.section.9.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 2655 2773 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 2656 2774 when no Content-Location is provided by the server. For a state-changing request like PUT or POST, it implies that the server's … … 2659 2777 need for a subsequent GET request. 2660 2778 </p> 2661 <p id="rfc.section. 7.8.p.5">If Content-Location is included in a response message and its value differs from the effective request URI, then the origin2779 <p id="rfc.section.9.8.p.5">If Content-Location is included in a response message and its value differs from the effective request URI, then the origin 2662 2780 server is informing recipients that this representation has its own, presumably more specific, identifier. For a GET or HEAD 2663 2781 request, this is an indication that the effective request URI identifies a resource that is subject to content negotiation … … 2668 2786 in the future. 2669 2787 </p> 2670 <p id="rfc.section. 7.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 enclosed2788 <p id="rfc.section.9.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 2671 2789 representation (prior to any subsequent modification of the content by that user agent). In other words, the user agent is 2672 2790 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 … … 2676 2794 latter semantics, it would have applied the PUT directly to the Content-Location URI. 2677 2795 </p> 2678 <p id="rfc.section. 7.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 use2796 <p id="rfc.section.9.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 2679 2797 in other contexts, such as within source links or other metadata. 2680 2798 </p> 2681 <p id="rfc.section. 7.8.p.8">A cache cannot assume that a representation with a Content-Location different from the URI used to retrieve it can be used2799 <p id="rfc.section.9.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 2682 2800 to respond to later requests on that Content-Location URI. 2683 2801 </p> 2684 <p id="rfc.section. 7.8.p.9">If the Content-Location value is a partial URI, the partial URI is interpreted relative to the effective request URI.</p>2802 <p id="rfc.section.9.8.p.9">If the Content-Location value is a partial URI, the partial URI is interpreted relative to the effective request URI.</p> 2685 2803 <div id="rfc.iref.c.10"></div> 2686 2804 <div id="rfc.iref.h.10"></div> 2687 <h2 id="rfc.section. 7.9"><a href="#rfc.section.7.9">7.9</a> <a id="header.content-type" href="#header.content-type">Content-Type</a></h2>2688 <p id="rfc.section. 7.9.p.1">The "Content-Type" header field indicates the media type of the representation. In the case of responses to the HEAD method,2805 <h2 id="rfc.section.9.9"><a href="#rfc.section.9.9">9.9</a> <a id="header.content-type" href="#header.content-type">Content-Type</a></h2> 2806 <p id="rfc.section.9.9.p.1">The "Content-Type" header field indicates the media type of the representation. In the case of responses to the HEAD method, 2689 2807 the media type is that which would have been sent had the request been a GET. 2690 2808 </p> 2691 2809 <div id="rfc.figure.u.42"></div><pre class="inline"><span id="rfc.iref.g.44"></span> <a href="#header.content-type" class="smpl">Content-Type</a> = <a href="#media.types" class="smpl">media-type</a> 2692 </pre><p id="rfc.section. 7.9.p.3">Media types are defined in <a href="#media.types" title="Media Types">Section 6.5</a>. An example of the field is2810 </pre><p id="rfc.section.9.9.p.3">Media types are defined in <a href="#media.types" title="Media Types">Section 5.5</a>. An example of the field is 2693 2811 </p> 2694 2812 <div id="rfc.figure.u.43"></div><pre class="text"> Content-Type: text/html; charset=ISO-8859-4 2695 </pre><p id="rfc.section. 7.9.p.5">Further discussion of Content-Type is provided in <a href="#representation.data" title="Representation Data">Appendix F.2.2</a>.2813 </pre><p id="rfc.section.9.9.p.5">Further discussion of Content-Type is provided in <a href="#representation.data" title="Representation Data">Appendix F.1.2</a>. 2696 2814 </p> 2697 2815 <div id="rfc.iref.d.3"></div> 2698 2816 <div id="rfc.iref.h.11"></div> 2699 <h2 id="rfc.section. 7.10"><a href="#rfc.section.7.10">7.10</a> <a id="header.date" href="#header.date">Date</a></h2>2700 <p id="rfc.section. 7.10.p.1">The "Date" header field represents the date and time at which the message was originated, having the same semantics as the2701 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 6.1</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format.2817 <h2 id="rfc.section.9.10"><a href="#rfc.section.9.10">9.10</a> <a id="header.date" href="#header.date">Date</a></h2> 2818 <p id="rfc.section.9.10.p.1">The "Date" header field represents the date and time at which the message was originated, having the same semantics as the 2819 Origination Date Field (orig-date) defined in <a href="http://tools.ietf.org/html/rfc5322#section-3.6.1">Section 3.6.1</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.2"><cite title="Internet Message Format">[RFC5322]</cite></a>. The field value is an HTTP-date, as defined in <a href="#http.date" title="Date/Time Formats">Section 5.1</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format. 2702 2820 </p> 2703 2821 <div id="rfc.figure.u.44"></div><pre class="inline"><span id="rfc.iref.g.45"></span> <a href="#header.date" class="smpl">Date</a> = <a href="#http.date" class="smpl">HTTP-date</a> 2704 </pre><p id="rfc.section. 7.10.p.3">An example is</p>2822 </pre><p id="rfc.section.9.10.p.3">An example is</p> 2705 2823 <div id="rfc.figure.u.45"></div><pre class="text"> Date: Tue, 15 Nov 1994 08:12:31 GMT 2706 </pre><p id="rfc.section. 7.10.p.5">Origin servers <em class="bcp14">MUST</em> include a Date header field in all responses, except in these cases:2824 </pre><p id="rfc.section.9.10.p.5">Origin servers <em class="bcp14">MUST</em> include a Date header field in all responses, except in these cases: 2707 2825 </p> 2708 2826 <ol> … … 2715 2833 </li> 2716 2834 </ol> 2717 <p id="rfc.section. 7.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.2718 </p> 2719 <p id="rfc.section. 7.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 it2835 <p id="rfc.section.9.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. 2836 </p> 2837 <p id="rfc.section.9.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 2720 2838 when it doesn't convey any useful information (as is usually the case for requests that do not contain a payload). 2721 2839 </p> 2722 <p id="rfc.section. 7.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 means2840 <p id="rfc.section.9.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 2723 2841 of generating a reasonably accurate date and time. In theory, the date ought to represent the moment just before the payload 2724 2842 is generated. In practice, the date can be generated at any time during the message origination without affecting its semantic … … 2727 2845 <div id="rfc.iref.e.1"></div> 2728 2846 <div id="rfc.iref.h.12"></div> 2729 <h2 id="rfc.section. 7.11"><a href="#rfc.section.7.11">7.11</a> <a id="header.expect" href="#header.expect">Expect</a></h2>2730 <p id="rfc.section. 7.11.p.1">The "Expect" header field is used to indicate that particular server behaviors are required by the client.</p>2847 <h2 id="rfc.section.9.11"><a href="#rfc.section.9.11">9.11</a> <a id="header.expect" href="#header.expect">Expect</a></h2> 2848 <p id="rfc.section.9.11.p.1">The "Expect" header field is used to indicate that particular server behaviors are required by the client.</p> 2731 2849 <div id="rfc.figure.u.46"></div><pre class="inline"><span id="rfc.iref.g.46"></span><span id="rfc.iref.g.47"></span><span id="rfc.iref.g.48"></span><span id="rfc.iref.g.49"></span><span id="rfc.iref.g.50"></span> <a href="#header.expect" class="smpl">Expect</a> = 1#<a href="#header.expect" class="smpl">expectation</a> 2732 2850 … … 2737 2855 <a href="#header.expect" class="smpl">expect-name</a> = <a href="#core.rules" class="smpl">token</a> 2738 2856 <a href="#header.expect" class="smpl">expect-value</a> = <a href="#core.rules" class="smpl">token</a> / <a href="#core.rules" class="smpl">quoted-string</a> 2739 </pre><p id="rfc.section. 7.11.p.3">If all received Expect header field(s) are syntactically valid but contain an expectation that the recipient does not understand2857 </pre><p id="rfc.section.9.11.p.3">If all received Expect header field(s) are syntactically valid but contain an expectation that the recipient does not understand 2740 2858 or cannot comply with, the recipient <em class="bcp14">MUST</em> respond with a 417 (Expectation Failed) status code. A recipient of a syntactically invalid Expectation header field <em class="bcp14">MUST</em> respond with a 4xx status code other than 417. 2741 2859 </p> 2742 <p id="rfc.section. 7.11.p.4">The only expectation defined by this specification is:</p>2743 <p id="rfc.section. 7.11.p.5"><span id="rfc.iref.132"></span><span id="rfc.iref.e.2"></span> 100-continue2860 <p id="rfc.section.9.11.p.4">The only expectation defined by this specification is:</p> 2861 <p id="rfc.section.9.11.p.5"><span id="rfc.iref.133"></span><span id="rfc.iref.e.2"></span> 100-continue 2744 2862 </p> 2745 2863 <ul class="empty"> 2746 <li>The "100-continue" expectation is defined <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 6.4.3</a> of <a href="#Part1" id="rfc.xref.Part1. 47"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. It does not support any expect-params.2747 </li> 2748 </ul> 2749 <p id="rfc.section. 7.11.p.6">Comparison is case-insensitive for names (expect-name), and case-sensitive for values (expect-value).</p>2750 <p id="rfc.section. 7.11.p.7">The Expect mechanism is hop-by-hop: the above requirements apply to any server, including proxies. However, the Expect header2864 <li>The "100-continue" expectation is defined <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 6.4.3</a> of <a href="#Part1" id="rfc.xref.Part1.50"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. It does not support any expect-params. 2865 </li> 2866 </ul> 2867 <p id="rfc.section.9.11.p.6">Comparison is case-insensitive for names (expect-name), and case-sensitive for values (expect-value).</p> 2868 <p id="rfc.section.9.11.p.7">The Expect mechanism is hop-by-hop: the above requirements apply to any server, including proxies. However, the Expect header 2751 2869 field itself is end-to-end; it <em class="bcp14">MUST</em> be forwarded if the request is forwarded. 2752 2870 </p> 2753 <p id="rfc.section. 7.11.p.8">Many older HTTP/1.0 and HTTP/1.1 applications do not understand the Expect header field.</p>2871 <p id="rfc.section.9.11.p.8">Many older HTTP/1.0 and HTTP/1.1 applications do not understand the Expect header field.</p> 2754 2872 <div id="rfc.iref.f.1"></div> 2755 2873 <div id="rfc.iref.h.13"></div> 2756 <h2 id="rfc.section. 7.12"><a href="#rfc.section.7.12">7.12</a> <a id="header.from" href="#header.from">From</a></h2>2757 <p id="rfc.section. 7.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>:2874 <h2 id="rfc.section.9.12"><a href="#rfc.section.9.12">9.12</a> <a id="header.from" href="#header.from">From</a></h2> 2875 <p id="rfc.section.9.12.p.1">The "From" header field, if given, <em class="bcp14">SHOULD</em> contain an Internet e-mail address for the human user who controls the requesting user agent. The address <em class="bcp14">SHOULD</em> be machine-usable, as defined by "mailbox" in <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.3"><cite title="Internet Message Format">[RFC5322]</cite></a>: 2758 2876 </p> 2759 2877 <div id="rfc.figure.u.47"></div><pre class="inline"><span id="rfc.iref.g.51"></span> <a href="#header.from" class="smpl">From</a> = <a href="#header.from" class="smpl">mailbox</a> 2760 2878 2761 2879 <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>> 2762 </pre><p id="rfc.section. 7.12.p.3">An example is:</p>2880 </pre><p id="rfc.section.9.12.p.3">An example is:</p> 2763 2881 <div id="rfc.figure.u.48"></div><pre class="text"> From: webmaster@example.org 2764 </pre><p id="rfc.section. 7.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 performed2882 </pre><p id="rfc.section.9.12.p.5">This header field <em class="bcp14">MAY</em> be used for logging purposes and as a means for identifying the source of invalid or unwanted requests. It <em class="bcp14">SHOULD NOT</em> be used as an insecure form of access protection. The interpretation of this field is that the request is being performed 2765 2883 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 2766 2884 end. 2767 2885 </p> 2768 <p id="rfc.section. 7.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 original2886 <p id="rfc.section.9.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 2769 2887 issuer's address <em class="bcp14">SHOULD</em> be used. 2770 2888 </p> 2771 <p id="rfc.section. 7.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's2889 <p id="rfc.section.9.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 2772 2890 security policy. It is strongly recommended that the user be able to disable, enable, and modify the value of this field at 2773 2891 any time prior to a request. … … 2775 2893 <div id="rfc.iref.l.1"></div> 2776 2894 <div id="rfc.iref.h.14"></div> 2777 <h2 id="rfc.section. 7.13"><a href="#rfc.section.7.13">7.13</a> <a id="header.location" href="#header.location">Location</a></h2>2778 <p id="rfc.section. 7.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.2895 <h2 id="rfc.section.9.13"><a href="#rfc.section.9.13">9.13</a> <a id="header.location" href="#header.location">Location</a></h2> 2896 <p id="rfc.section.9.13.p.1">The "Location" header field <em class="bcp14">MAY</em> be sent in responses to refer to a specific resource in accordance with the semantics of the status code. 2779 2897 </p> 2780 2898 <div id="rfc.figure.u.49"></div><pre class="inline"><span id="rfc.iref.g.52"></span> <a href="#header.location" class="smpl">Location</a> = <a href="#abnf.dependencies" class="smpl">URI-reference</a> 2781 </pre><p id="rfc.section. 7.13.p.3">For 201 (Created) responses, the Location is the URI of the new resource which was created by the request. For 3xx responses,2899 </pre><p id="rfc.section.9.13.p.3">For 201 (Created) responses, the Location is the URI of the new resource which was created by the request. For 3xx responses, 2782 2900 the location <em class="bcp14">SHOULD</em> indicate the server's preferred URI for automatic redirection to the resource. 2783 2901 </p> 2784 <p id="rfc.section. 7.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,2902 <p id="rfc.section.9.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, 2785 2903 then the original URI's fragment identifier is added to the final value. 2786 2904 </p> … … 2791 2909 <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 2792 2910 </pre> <p>would result in a final value of "http://www.example.net/index.html#larry", preserving the original fragment identifier.</p> 2793 <div class="note" id="rfc.section. 7.13.p.7">2911 <div class="note" id="rfc.section.9.13.p.7"> 2794 2912 <p> <b>Note:</b> Some recipients attempt to recover from Location fields that are not valid URI references. This specification does not mandate 2795 2913 or define such processing, but does allow it (see <a href="#intro.conformance.and.error.handling" title="Conformance and Error Handling">Section 1.2</a>). 2796 2914 </p> 2797 2915 </div> 2798 <p id="rfc.section. 7.13.p.8">There are circumstances in which a fragment identifier in a Location URI would not be appropriate. For instance, when it appears2916 <p id="rfc.section.9.13.p.8">There are circumstances in which a fragment identifier in a Location URI would not be appropriate. For instance, when it appears 2799 2917 in a 201 Created response, where the Location header field specifies the URI for the entire created resource. 2800 2918 </p> 2801 <div class="note" id="rfc.section. 7.13.p.9">2802 <p> <b>Note:</b> The Content-Location header field (<a href="#header.content-location" id="rfc.xref.header.content-location.2" title="Content-Location">Section 7.8</a>) differs from Location in that the Content-Location identifies the most specific resource corresponding to the enclosed representation.2919 <div class="note" id="rfc.section.9.13.p.9"> 2920 <p> <b>Note:</b> The Content-Location header field (<a href="#header.content-location" id="rfc.xref.header.content-location.2" title="Content-Location">Section 9.8</a>) differs from Location in that the Content-Location identifies the most specific resource corresponding to the enclosed representation. 2803 2921 It is therefore possible for a response to contain header fields for both Location and Content-Location. 2804 2922 </p> … … 2806 2924 <div id="rfc.iref.m.9"></div> 2807 2925 <div id="rfc.iref.h.15"></div> 2808 <h2 id="rfc.section. 7.14"><a href="#rfc.section.7.14">7.14</a> <a id="header.max-forwards" href="#header.max-forwards">Max-Forwards</a></h2>2809 <p id="rfc.section. 7.14.p.1">The "Max-Forwards" header field provides a mechanism with the TRACE (<a href="#TRACE" id="rfc.xref.TRACE.1" title="TRACE">Section 2.3.7</a>) and OPTIONS (<a href="#OPTIONS" id="rfc.xref.OPTIONS.1" title="OPTIONS">Section 2.3.1</a>) methods to limit the number of times that the request is forwarded by proxies. This can be useful when the client is attempting2926 <h2 id="rfc.section.9.14"><a href="#rfc.section.9.14">9.14</a> <a id="header.max-forwards" href="#header.max-forwards">Max-Forwards</a></h2> 2927 <p id="rfc.section.9.14.p.1">The "Max-Forwards" header field provides a mechanism with the TRACE (<a href="#TRACE" id="rfc.xref.TRACE.1" title="TRACE">Section 2.3.7</a>) and OPTIONS (<a href="#OPTIONS" id="rfc.xref.OPTIONS.1" title="OPTIONS">Section 2.3.1</a>) methods to limit the number of times that the request is forwarded by proxies. This can be useful when the client is attempting 2810 2928 to trace a request which appears to be failing or looping mid-chain. 2811 2929 </p> 2812 2930 <div id="rfc.figure.u.52"></div><pre class="inline"><span id="rfc.iref.g.53"></span> <a href="#header.max-forwards" class="smpl">Max-Forwards</a> = 1*<a href="#notation" class="smpl">DIGIT</a> 2813 </pre><p id="rfc.section. 7.14.p.3">The Max-Forwards value is a decimal integer indicating the remaining number of times this request message can be forwarded.</p>2814 <p id="rfc.section. 7.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).2815 </p> 2816 <p id="rfc.section. 7.14.p.5">The Max-Forwards header field <em class="bcp14">MAY</em> be ignored for all other request methods.2931 </pre><p id="rfc.section.9.14.p.3">The Max-Forwards value is a decimal integer indicating the remaining number of times this request message can be forwarded.</p> 2932 <p id="rfc.section.9.14.p.4">Each recipient of a TRACE or OPTIONS request containing a Max-Forwards header field <em class="bcp14">MUST</em> check and update its value prior to forwarding the request. If the received value is zero (0), the recipient <em class="bcp14">MUST NOT</em> forward the request; instead, it <em class="bcp14">MUST</em> respond as the final recipient. If the received Max-Forwards value is greater than zero, then the forwarded message <em class="bcp14">MUST</em> contain an updated Max-Forwards field with a value decremented by one (1). 2933 </p> 2934 <p id="rfc.section.9.14.p.5">The Max-Forwards header field <em class="bcp14">MAY</em> be ignored for all other request methods. 2817 2935 </p> 2818 2936 <div id="rfc.iref.r.1"></div> 2819 2937 <div id="rfc.iref.h.16"></div> 2820 <h2 id="rfc.section. 7.15"><a href="#rfc.section.7.15">7.15</a> <a id="header.referer" href="#header.referer">Referer</a></h2>2821 <p id="rfc.section. 7.15.p.1">The "Referer" [sic] header field allows the client to specify the URI of the resource from which the target URI was obtained2938 <h2 id="rfc.section.9.15"><a href="#rfc.section.9.15">9.15</a> <a id="header.referer" href="#header.referer">Referer</a></h2> 2939 <p id="rfc.section.9.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 2822 2940 (the "referrer", although the header field is misspelled.). 2823 2941 </p> 2824 <p id="rfc.section. 7.15.p.2">The Referer header field allows servers to generate lists of back-links to resources for interest, logging, optimized caching,2942 <p id="rfc.section.9.15.p.2">The Referer header field allows servers to generate lists of back-links to resources for interest, logging, optimized caching, 2825 2943 etc. It also allows obsolete or mistyped links to be traced for maintenance. Some servers use Referer as a means of controlling 2826 2944 where they allow links from (so-called "deep linking"), but legitimate requests do not always contain a Referer header field. 2827 2945 </p> 2828 <p id="rfc.section. 7.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 Referer2946 <p id="rfc.section.9.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 2829 2947 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 2830 2948 non-HTTP URIs (e.g., FTP). 2831 2949 </p> 2832 2950 <div id="rfc.figure.u.53"></div><pre class="inline"><span id="rfc.iref.g.54"></span> <a href="#header.referer" class="smpl">Referer</a> = <a href="#abnf.dependencies" class="smpl">absolute-URI</a> / <a href="#abnf.dependencies" class="smpl">partial-URI</a> 2833 </pre><p id="rfc.section. 7.15.p.5">Example:</p>2951 </pre><p id="rfc.section.9.15.p.5">Example:</p> 2834 2952 <div id="rfc.figure.u.54"></div><pre class="text"> Referer: http://www.example.org/hypertext/Overview.html 2835 </pre><p id="rfc.section. 7.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 9.2</a> for security considerations.2953 </pre><p id="rfc.section.9.15.p.7">If the field value is a relative URI, it <em class="bcp14">SHOULD</em> be interpreted relative to the effective request URI. The URI <em class="bcp14">MUST NOT</em> include a fragment. See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 11.2</a> for security considerations. 2836 2954 </p> 2837 2955 <div id="rfc.iref.r.2"></div> 2838 2956 <div id="rfc.iref.h.17"></div> 2839 <h2 id="rfc.section. 7.16"><a href="#rfc.section.7.16">7.16</a> <a id="header.retry-after" href="#header.retry-after">Retry-After</a></h2>2840 <p id="rfc.section. 7.16.p.1">The header "Retry-After" field can be used with a 503 (Service Unavailable) response to indicate how long the service is expected2957 <h2 id="rfc.section.9.16"><a href="#rfc.section.9.16">9.16</a> <a id="header.retry-after" href="#header.retry-after">Retry-After</a></h2> 2958 <p id="rfc.section.9.16.p.1">The header "Retry-After" field can be used with a 503 (Service Unavailable) response to indicate how long the service is expected 2841 2959 to be unavailable to the requesting client. This field <em class="bcp14">MAY</em> also be used with any 3xx (Redirection) response to indicate the minimum time the user-agent is asked to wait before issuing 2842 2960 the redirected request. 2843 2961 </p> 2844 <p id="rfc.section. 7.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>2962 <p id="rfc.section.9.16.p.2">The value of this field can be either an HTTP-date or an integer number of seconds (in decimal) after the time of the response.</p> 2845 2963 <div id="rfc.figure.u.55"></div><pre class="inline"><span id="rfc.iref.g.55"></span> <a href="#header.retry-after" class="smpl">Retry-After</a> = <a href="#http.date" class="smpl">HTTP-date</a> / <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> 2846 2964 </pre><div id="rule.delta-seconds"> 2847 <p id="rfc.section. 7.16.p.4"> Time spans are non-negative decimal integers, representing time in seconds.</p>2965 <p id="rfc.section.9.16.p.4"> Time spans are non-negative decimal integers, representing time in seconds.</p> 2848 2966 </div> 2849 2967 <div id="rfc.figure.u.56"></div><pre class="inline"><span id="rfc.iref.g.56"></span> <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> = 1*<a href="#notation" class="smpl">DIGIT</a> 2850 </pre><p id="rfc.section. 7.16.p.6">Two examples of its use are</p>2968 </pre><p id="rfc.section.9.16.p.6">Two examples of its use are</p> 2851 2969 <div id="rfc.figure.u.57"></div><pre class="text"> Retry-After: Fri, 31 Dec 1999 23:59:59 GMT 2852 2970 Retry-After: 120 2853 </pre><p id="rfc.section. 7.16.p.8">In the latter example, the delay is 2 minutes.</p>2971 </pre><p id="rfc.section.9.16.p.8">In the latter example, the delay is 2 minutes.</p> 2854 2972 <div id="rfc.iref.s.39"></div> 2855 2973 <div id="rfc.iref.h.18"></div> 2856 <h2 id="rfc.section. 7.17"><a href="#rfc.section.7.17">7.17</a> <a id="header.server" href="#header.server">Server</a></h2>2857 <p id="rfc.section. 7.17.p.1">The "Server" header field contains information about the software used by the origin server to handle the request.</p>2858 <p id="rfc.section. 7.17.p.2">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 6.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.48"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) identifying the server and any significant subproducts. The product tokens are listed in order of their significance for2974 <h2 id="rfc.section.9.17"><a href="#rfc.section.9.17">9.17</a> <a id="header.server" href="#header.server">Server</a></h2> 2975 <p id="rfc.section.9.17.p.1">The "Server" header field contains information about the software used by the origin server to handle the request.</p> 2976 <p id="rfc.section.9.17.p.2">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 5.2</a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.51"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) identifying the server and any significant subproducts. The product tokens are listed in order of their significance for 2859 2977 identifying the application. 2860 2978 </p> 2861 2979 <div id="rfc.figure.u.58"></div><pre class="inline"><span id="rfc.iref.g.57"></span> <a href="#header.server" class="smpl">Server</a> = <a href="#product.tokens" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#product.tokens" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) ) 2862 </pre><p id="rfc.section. 7.17.p.4">Example:</p>2980 </pre><p id="rfc.section.9.17.p.4">Example:</p> 2863 2981 <div id="rfc.figure.u.59"></div><pre class="text"> Server: CERN/3.0 libwww/2.17 2864 </pre><p id="rfc.section. 7.17.p.6">If the response is being forwarded through a proxy, the proxy application <em class="bcp14">MUST NOT</em> modify the Server header field. Instead, it <em class="bcp14">MUST</em> include a Via field (as described in <a href="p1-messaging.html#header.via" title="Via">Section 6.2</a> of <a href="#Part1" id="rfc.xref.Part1.49"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).2865 </p> 2866 <div class="note" id="rfc.section. 7.17.p.7">2982 </pre><p id="rfc.section.9.17.p.6">If the response is being forwarded through a proxy, the proxy application <em class="bcp14">MUST NOT</em> modify the Server header field. Instead, it <em class="bcp14">MUST</em> include a Via field (as described in <a href="p1-messaging.html#header.via" title="Via">Section 6.2</a> of <a href="#Part1" id="rfc.xref.Part1.52"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 2983 </p> 2984 <div class="note" id="rfc.section.9.17.p.7"> 2867 2985 <p> <b>Note:</b> Revealing the specific software version of the server might allow the server machine to become more vulnerable to attacks 2868 2986 against software that is known to contain security holes. Server implementors are encouraged to make this field a configurable … … 2872 2990 <div id="rfc.iref.u.1"></div> 2873 2991 <div id="rfc.iref.h.19"></div> 2874 <h2 id="rfc.section. 7.18"><a href="#rfc.section.7.18">7.18</a> <a id="header.user-agent" href="#header.user-agent">User-Agent</a></h2>2875 <p id="rfc.section. 7.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.2876 </p> 2877 <p id="rfc.section. 7.18.p.2">Typically, it is used for statistical purposes, the tracing of protocol violations, and tailoring responses to avoid particular2992 <h2 id="rfc.section.9.18"><a href="#rfc.section.9.18">9.18</a> <a id="header.user-agent" href="#header.user-agent">User-Agent</a></h2> 2993 <p id="rfc.section.9.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. 2994 </p> 2995 <p id="rfc.section.9.18.p.2">Typically, it is used for statistical purposes, the tracing of protocol violations, and tailoring responses to avoid particular 2878 2996 user agent limitations. 2879 2997 </p> 2880 <p id="rfc.section. 7.18.p.3">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 6.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.50"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) identifying the agent and its significant subproducts. By convention, the product tokens are listed in order of their significance2998 <p id="rfc.section.9.18.p.3">The field can contain multiple product tokens (<a href="#product.tokens" title="Product Tokens">Section 5.2</a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.53"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) identifying the agent and its significant subproducts. By convention, the product tokens are listed in order of their significance 2881 2999 for identifying the application. 2882 3000 </p> 2883 <p id="rfc.section. 7.18.p.4">Because this field is usually sent on every request a user agent makes, implementations are encouraged not to include needlessly3001 <p id="rfc.section.9.18.p.4">Because this field is usually sent on every request a user agent makes, implementations are encouraged not to include needlessly 2884 3002 fine-grained detail, and to limit (or even prohibit) the addition of subproducts by third parties. Overly long and detailed 2885 3003 User-Agent field values make requests larger and can also be used to identify ("fingerprint") the user against their wishes. 2886 3004 </p> 2887 <p id="rfc.section. 7.18.p.5">Likewise, implementations are encouraged not to use the product tokens of other implementations in order to declare compatibility3005 <p id="rfc.section.9.18.p.5">Likewise, implementations are encouraged not to use the product tokens of other implementations in order to declare compatibility 2888 3006 with them, as this circumvents the purpose of the field. Finally, they are encouraged not to use comments to identify products; 2889 3007 doing so makes the field value more difficult to parse. 2890 3008 </p> 2891 3009 <div id="rfc.figure.u.60"></div><pre class="inline"><span id="rfc.iref.g.58"></span> <a href="#header.user-agent" class="smpl">User-Agent</a> = <a href="#product.tokens" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#product.tokens" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) ) 2892 </pre><p id="rfc.section. 7.18.p.7">Example:</p>3010 </pre><p id="rfc.section.9.18.p.7">Example:</p> 2893 3011 <div id="rfc.figure.u.61"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b3 2894 </pre><h1 id="rfc.section. 8"><a href="#rfc.section.8">8.</a> <a id="IANA.considerations" href="#IANA.considerations">IANA Considerations</a></h1>2895 <h2 id="rfc.section. 8.1"><a href="#rfc.section.8.1">8.1</a> <a id="method.registration" href="#method.registration">Method Registry</a></h2>2896 <p id="rfc.section. 8.1.p.1">The registration procedure for HTTP request methods is defined by <a href="#method.registry" title="Method Registry">Section 2.2</a> of this document.2897 </p> 2898 <p id="rfc.section. 8.1.p.2">The HTTP Method Registry shall be created at <<a href="http://www.iana.org/assignments/http-methods">http://www.iana.org/assignments/http-methods</a>> and be populated with the registrations below:3012 </pre><h1 id="rfc.section.10"><a href="#rfc.section.10">10.</a> <a id="IANA.considerations" href="#IANA.considerations">IANA Considerations</a></h1> 3013 <h2 id="rfc.section.10.1"><a href="#rfc.section.10.1">10.1</a> <a id="method.registration" href="#method.registration">Method Registry</a></h2> 3014 <p id="rfc.section.10.1.p.1">The registration procedure for HTTP request methods is defined by <a href="#method.registry" title="Method Registry">Section 2.2</a> of this document. 3015 </p> 3016 <p id="rfc.section.10.1.p.2">The HTTP Method Registry shall be created at <<a href="http://www.iana.org/assignments/http-methods">http://www.iana.org/assignments/http-methods</a>> and be populated with the registrations below: 2899 3017 </p> 2900 3018 <div id="rfc.table.1"> … … 2960 3078 </table> 2961 3079 </div> 2962 <h2 id="rfc.section. 8.2"><a href="#rfc.section.8.2">8.2</a> <a id="status.code.registration" href="#status.code.registration">Status Code Registry</a></h2>2963 <p id="rfc.section. 8.2.p.1">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> — is now defined by <a href="#status.code.registry" title="Status Code Registry">Section 4.2</a> of this document.2964 </p> 2965 <p id="rfc.section. 8.2.p.2">The HTTP Status Code Registry located at <<a href="http://www.iana.org/assignments/http-status-codes">http://www.iana.org/assignments/http-status-codes</a>> shall be updated with the registrations below:3080 <h2 id="rfc.section.10.2"><a href="#rfc.section.10.2">10.2</a> <a id="status.code.registration" href="#status.code.registration">Status Code Registry</a></h2> 3081 <p id="rfc.section.10.2.p.1">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> — is now defined by <a href="#status.code.registry" title="Status Code Registry">Section 4.2</a> of this document. 3082 </p> 3083 <p id="rfc.section.10.2.p.2">The HTTP Status Code Registry located at <<a href="http://www.iana.org/assignments/http-status-codes">http://www.iana.org/assignments/http-status-codes</a>> shall be updated with the registrations below: 2966 3084 </p> 2967 3085 <div id="rfc.table.2"> … … 3195 3313 </table> 3196 3314 </div> 3197 <h2 id="rfc.section. 8.3"><a href="#rfc.section.8.3">8.3</a> <a id="header.field.registration" href="#header.field.registration">Header Field Registration</a></h2>3198 <p id="rfc.section. 8.3.p.1">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>> shall be updated with the permanent registrations below (see <a href="#RFC3864" id="rfc.xref.RFC3864.3"><cite title="Registration Procedures for Message Header Fields">[RFC3864]</cite></a>):3315 <h2 id="rfc.section.10.3"><a href="#rfc.section.10.3">10.3</a> <a id="header.field.registration" href="#header.field.registration">Header Field Registration</a></h2> 3316 <p id="rfc.section.10.3.p.1">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>> shall be updated with the permanent registrations below (see <a href="#RFC3864" id="rfc.xref.RFC3864.3"><cite title="Registration Procedures for Message Header Fields">[RFC3864]</cite></a>): 3199 3317 </p> 3200 3318 <div id="rfc.table.3"> … … 3214 3332 <td class="left">http</td> 3215 3333 <td class="left">standard</td> 3216 <td class="left"> <a href="#header.accept" id="rfc.xref.header.accept. 3" title="Accept">Section 7.1</a>3334 <td class="left"> <a href="#header.accept" id="rfc.xref.header.accept.4" title="Accept">Section 9.1</a> 3217 3335 </td> 3218 3336 </tr> … … 3221 3339 <td class="left">http</td> 3222 3340 <td class="left">standard</td> 3223 <td class="left"> <a href="#header.accept-charset" id="rfc.xref.header.accept-charset. 2" title="Accept-Charset">Section 7.2</a>3341 <td class="left"> <a href="#header.accept-charset" id="rfc.xref.header.accept-charset.3" title="Accept-Charset">Section 9.2</a> 3224 3342 </td> 3225 3343 </tr> … … 3228 3346 <td class="left">http</td> 3229 3347 <td class="left">standard</td> 3230 <td class="left"> <a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding. 3" title="Accept-Encoding">Section 7.3</a>3348 <td class="left"> <a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.4" title="Accept-Encoding">Section 9.3</a> 3231 3349 </td> 3232 3350 </tr> … … 3235 3353 <td class="left">http</td> 3236 3354 <td class="left">standard</td> 3237 <td class="left"> <a href="#header.accept-language" id="rfc.xref.header.accept-language. 2" title="Accept-Language">Section 7.4</a>3355 <td class="left"> <a href="#header.accept-language" id="rfc.xref.header.accept-language.3" title="Accept-Language">Section 9.4</a> 3238 3356 </td> 3239 3357 </tr> … … 3242 3360 <td class="left">http</td> 3243 3361 <td class="left">standard</td> 3244 <td class="left"> <a href="#header.allow" id="rfc.xref.header.allow.3" title="Allow">Section 7.5</a>3362 <td class="left"> <a href="#header.allow" id="rfc.xref.header.allow.3" title="Allow">Section 9.5</a> 3245 3363 </td> 3246 3364 </tr> … … 3249 3367 <td class="left">http</td> 3250 3368 <td class="left">standard</td> 3251 <td class="left"> <a href="#header.content-encoding" id="rfc.xref.header.content-encoding.3" title="Content-Encoding">Section 7.6</a>3369 <td class="left"> <a href="#header.content-encoding" id="rfc.xref.header.content-encoding.3" title="Content-Encoding">Section 9.6</a> 3252 3370 </td> 3253 3371 </tr> … … 3256 3374 <td class="left">http</td> 3257 3375 <td class="left">standard</td> 3258 <td class="left"> <a href="#header.content-language" id="rfc.xref.header.content-language.1" title="Content-Language">Section 7.7</a>3376 <td class="left"> <a href="#header.content-language" id="rfc.xref.header.content-language.1" title="Content-Language">Section 9.7</a> 3259 3377 </td> 3260 3378 </tr> … … 3263 3381 <td class="left">http</td> 3264 3382 <td class="left">standard</td> 3265 <td class="left"> <a href="#header.content-location" id="rfc.xref.header.content-location.3" title="Content-Location">Section 7.8</a>3383 <td class="left"> <a href="#header.content-location" id="rfc.xref.header.content-location.3" title="Content-Location">Section 9.8</a> 3266 3384 </td> 3267 3385 </tr> … … 3270 3388 <td class="left">http</td> 3271 3389 <td class="left">standard</td> 3272 <td class="left"> <a href="#header.content-type" id="rfc.xref.header.content-type.4" title="Content-Type">Section 7.9</a>3390 <td class="left"> <a href="#header.content-type" id="rfc.xref.header.content-type.4" title="Content-Type">Section 9.9</a> 3273 3391 </td> 3274 3392 </tr> … … 3277 3395 <td class="left">http</td> 3278 3396 <td class="left">standard</td> 3279 <td class="left"> <a href="#header.date" id="rfc.xref.header.date.2" title="Date">Section 7.10</a>3397 <td class="left"> <a href="#header.date" id="rfc.xref.header.date.2" title="Date">Section 9.10</a> 3280 3398 </td> 3281 3399 </tr> … … 3284 3402 <td class="left">http</td> 3285 3403 <td class="left">standard</td> 3286 <td class="left"> <a href="#header.expect" id="rfc.xref.header.expect.3" title="Expect">Section 7.11</a>3404 <td class="left"> <a href="#header.expect" id="rfc.xref.header.expect.3" title="Expect">Section 9.11</a> 3287 3405 </td> 3288 3406 </tr> … … 3291 3409 <td class="left">http</td> 3292 3410 <td class="left">standard</td> 3293 <td class="left"> <a href="#header.from" id="rfc.xref.header.from.2" title="From">Section 7.12</a>3411 <td class="left"> <a href="#header.from" id="rfc.xref.header.from.2" title="From">Section 9.12</a> 3294 3412 </td> 3295 3413 </tr> … … 3298 3416 <td class="left">http</td> 3299 3417 <td class="left">standard</td> 3300 <td class="left"> <a href="#header.location" id="rfc.xref.header.location.4" title="Location">Section 7.13</a>3418 <td class="left"> <a href="#header.location" id="rfc.xref.header.location.4" title="Location">Section 9.13</a> 3301 3419 </td> 3302 3420 </tr> … … 3312 3430 <td class="left">http</td> 3313 3431 <td class="left">standard</td> 3314 <td class="left"> <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.4" title="Max-Forwards">Section 7.14</a>3432 <td class="left"> <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.4" title="Max-Forwards">Section 9.14</a> 3315 3433 </td> 3316 3434 </tr> … … 3319 3437 <td class="left">http</td> 3320 3438 <td class="left">standard</td> 3321 <td class="left"> <a href="#header.referer" id="rfc.xref.header.referer.2" title="Referer">Section 7.15</a>3439 <td class="left"> <a href="#header.referer" id="rfc.xref.header.referer.2" title="Referer">Section 9.15</a> 3322 3440 </td> 3323 3441 </tr> … … 3326 3444 <td class="left">http</td> 3327 3445 <td class="left">standard</td> 3328 <td class="left"> <a href="#header.retry-after" id="rfc.xref.header.retry-after.3" title="Retry-After">Section 7.16</a>3446 <td class="left"> <a href="#header.retry-after" id="rfc.xref.header.retry-after.3" title="Retry-After">Section 9.16</a> 3329 3447 </td> 3330 3448 </tr> … … 3333 3451 <td class="left">http</td> 3334 3452 <td class="left">standard</td> 3335 <td class="left"> <a href="#header.server" id="rfc.xref.header.server.2" title="Server">Section 7.17</a>3453 <td class="left"> <a href="#header.server" id="rfc.xref.header.server.2" title="Server">Section 9.17</a> 3336 3454 </td> 3337 3455 </tr> … … 3340 3458 <td class="left">http</td> 3341 3459 <td class="left">standard</td> 3342 <td class="left"> <a href="#header.user-agent" id="rfc.xref.header.user-agent. 2" title="User-Agent">Section 7.18</a>3460 <td class="left"> <a href="#header.user-agent" id="rfc.xref.header.user-agent.3" title="User-Agent">Section 9.18</a> 3343 3461 </td> 3344 3462 </tr> … … 3346 3464 </table> 3347 3465 </div> 3348 <p id="rfc.section. 8.3.p.2">The change controller is: "IETF (iesg@ietf.org) - Internet Engineering Task Force".</p>3349 <h2 id="rfc.section. 8.4"><a href="#rfc.section.8.4">8.4</a> <a id="content.coding.registration" href="#content.coding.registration">Content Coding Registry</a></h2>3350 <p id="rfc.section. 8.4.p.1">The registration procedure for HTTP Content Codings is now defined by <a href="#content.coding.registry" title="Content Coding Registry">Section 6.4.1</a> of this document.3351 </p> 3352 <p id="rfc.section. 8.4.p.2">The HTTP Content Codings Registry located at <<a href="http://www.iana.org/assignments/http-parameters">http://www.iana.org/assignments/http-parameters</a>> shall be updated with the registration below:3466 <p id="rfc.section.10.3.p.2">The change controller is: "IETF (iesg@ietf.org) - Internet Engineering Task Force".</p> 3467 <h2 id="rfc.section.10.4"><a href="#rfc.section.10.4">10.4</a> <a id="content.coding.registration" href="#content.coding.registration">Content Coding Registry</a></h2> 3468 <p id="rfc.section.10.4.p.1">The registration procedure for HTTP Content Codings is now defined by <a href="#content.coding.registry" title="Content Coding Registry">Section 5.4.1</a> of this document. 3469 </p> 3470 <p id="rfc.section.10.4.p.2">The HTTP Content Codings Registry located at <<a href="http://www.iana.org/assignments/http-parameters">http://www.iana.org/assignments/http-parameters</a>> shall be updated with the registration below: 3353 3471 </p> 3354 3472 <div id="rfc.table.4"> … … 3366 3484 <td class="left">compress</td> 3367 3485 <td class="left">UNIX "compress" program method</td> 3368 <td class="left"> <a href="p1-messaging.html#compress.coding" title="Compress Coding">Section 4.2.1</a> of <a href="#Part1" id="rfc.xref.Part1.5 1"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>3486 <td class="left"> <a href="p1-messaging.html#compress.coding" title="Compress Coding">Section 4.2.1</a> of <a href="#Part1" id="rfc.xref.Part1.54"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> 3369 3487 </td> 3370 3488 </tr> … … 3373 3491 <td class="left">"deflate" compression mechanism (<a href="#RFC1951" id="rfc.xref.RFC1951.1"><cite title="DEFLATE Compressed Data Format Specification version 1.3">[RFC1951]</cite></a>) used inside the "zlib" data format (<a href="#RFC1950" id="rfc.xref.RFC1950.1"><cite title="ZLIB Compressed Data Format Specification version 3.3">[RFC1950]</cite></a>) 3374 3492 </td> 3375 <td class="left"> <a href="p1-messaging.html#deflate.coding" title="Deflate Coding">Section 4.2.2</a> of <a href="#Part1" id="rfc.xref.Part1.5 2"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>3493 <td class="left"> <a href="p1-messaging.html#deflate.coding" title="Deflate Coding">Section 4.2.2</a> of <a href="#Part1" id="rfc.xref.Part1.55"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> 3376 3494 </td> 3377 3495 </tr> … … 3379 3497 <td class="left">gzip</td> 3380 3498 <td class="left">Same as GNU zip <a href="#RFC1952" id="rfc.xref.RFC1952.1"><cite title="GZIP file format specification version 4.3">[RFC1952]</cite></a></td> 3381 <td class="left"> <a href="p1-messaging.html#gzip.coding" title="Gzip Coding">Section 4.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.5 3"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>3499 <td class="left"> <a href="p1-messaging.html#gzip.coding" title="Gzip Coding">Section 4.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.56"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> 3382 3500 </td> 3383 3501 </tr> … … 3385 3503 <td class="left">identity</td> 3386 3504 <td class="left">reserved (synonym for "no encoding" in Accept-Encoding header field)</td> 3387 <td class="left"> <a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding. 4" title="Accept-Encoding">Section 7.3</a>3505 <td class="left"> <a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.5" title="Accept-Encoding">Section 9.3</a> 3388 3506 </td> 3389 3507 </tr> … … 3391 3509 </table> 3392 3510 </div> 3393 <h1 id="rfc.section. 9"><a href="#rfc.section.9">9.</a> <a id="security.considerations" href="#security.considerations">Security Considerations</a></h1>3394 <p id="rfc.section. 9.p.1">This section is meant to inform application developers, information providers, and users of the security limitations in HTTP/1.13511 <h1 id="rfc.section.11"><a href="#rfc.section.11">11.</a> <a id="security.considerations" href="#security.considerations">Security Considerations</a></h1> 3512 <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 3395 3513 as described by this document. The discussion does not include definitive solutions to the problems revealed, though it does 3396 3514 make some suggestions for reducing security risks. 3397 3515 </p> 3398 <h2 id="rfc.section. 9.1"><a href="#rfc.section.9.1">9.1</a> <a id="security.sensitive" href="#security.sensitive">Transfer of Sensitive Information</a></h2>3399 <p id="rfc.section. 9.1.p.1">Like any generic data transfer protocol, HTTP cannot regulate the content of the data that is transferred, nor is there any3516 <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> 3517 <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 3400 3518 a priori method of determining the sensitivity of any particular piece of information within the context of any given request. 3401 3519 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 3402 3520 special mention in this context: Server, Via, Referer and From. 3403 3521 </p> 3404 <p id="rfc.section. 9.1.p.2">Revealing the specific software version of the server might allow the server machine to become more vulnerable to attacks3522 <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 3405 3523 against software that is known to contain security holes. Implementors <em class="bcp14">SHOULD</em> make the Server header field a configurable option. 3406 3524 </p> 3407 <p id="rfc.section. 9.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,3525 <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, 3408 3526 they <em class="bcp14">SHOULD</em> remove, or replace with sanitized versions, any Via fields generated behind the firewall. 3409 3527 </p> 3410 <p id="rfc.section. 9.1.p.4">The Referer header field allows reading patterns to be studied and reverse links drawn. Although it can be very useful, its3528 <p id="rfc.section.11.1.p.4">The Referer header field allows reading patterns to be studied and reverse links drawn. Although it can be very useful, its 3411 3529 power can be abused if user details are not separated from the information contained in the Referer. Even when the personal 3412 3530 information has been removed, the Referer header field might indicate a private document's URI whose publication would be 3413 3531 inappropriate. 3414 3532 </p> 3415 <p id="rfc.section. 9.1.p.5">The information sent in the From field might conflict with the user's privacy interests or their site's security policy, and3533 <p id="rfc.section.11.1.p.5">The information sent in the From field might conflict with the user's privacy interests or their site's security policy, and 3416 3534 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. 3417 3535 </p> 3418 <p id="rfc.section. 9.1.p.6">We suggest, though do not require, that a convenient toggle interface be provided for the user to enable or disable the sending3536 <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 3419 3537 of From and Referer information. 3420 3538 </p> 3421 <p id="rfc.section. 9.1.p.7">The User-Agent (<a href="#header.user-agent" id="rfc.xref.header.user-agent.3" title="User-Agent">Section 7.18</a>) or Server (<a href="#header.server" id="rfc.xref.header.server.3" title="Server">Section 7.17</a>) header fields can sometimes be used to determine that a specific client or server has a particular security hole which might3539 <p id="rfc.section.11.1.p.7">The User-Agent (<a href="#header.user-agent" id="rfc.xref.header.user-agent.4" title="User-Agent">Section 9.18</a>) or Server (<a href="#header.server" id="rfc.xref.header.server.3" title="Server">Section 9.17</a>) header fields can sometimes be used to determine that a specific client or server has a particular security hole which might 3422 3540 be exploited. Unfortunately, this same information is often used for other valuable purposes for which HTTP currently has 3423 3541 no better mechanism. 3424 3542 </p> 3425 <p id="rfc.section. 9.1.p.8">Furthermore, the User-Agent header field may contain enough entropy to be used, possibly in conjunction with other material,3543 <p id="rfc.section.11.1.p.8">Furthermore, the User-Agent header field may contain enough entropy to be used, possibly in conjunction with other material, 3426 3544 to uniquely identify the user. 3427 3545 </p> 3428 <p id="rfc.section. 9.1.p.9">Some request methods, like TRACE (<a href="#TRACE" id="rfc.xref.TRACE.3" title="TRACE">Section 2.3.7</a>), expose information that was sent in request header fields within the body of their response. Clients <em class="bcp14">SHOULD</em> be careful with sensitive information, like Cookies, Authorization credentials, and other header fields that might be used3546 <p id="rfc.section.11.1.p.9">Some request methods, like TRACE (<a href="#TRACE" id="rfc.xref.TRACE.3" title="TRACE">Section 2.3.7</a>), expose information that was sent in request header fields within the body of their response. Clients <em class="bcp14">SHOULD</em> be careful with sensitive information, like Cookies, Authorization credentials, and other header fields that might be used 3429 3547 to collect data from the client. 3430 3548 </p> 3431 <h2 id="rfc.section. 9.2"><a href="#rfc.section.9.2">9.2</a> <a id="encoding.sensitive.information.in.uris" href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></h2>3432 <p id="rfc.section. 9.2.p.1">Because the source of a link might be private information or might reveal an otherwise private information source, it is strongly3549 <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> 3550 <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 3433 3551 recommended that the user be able to select whether or not the Referer field is sent. For example, a browser client could 3434 3552 have a toggle switch for browsing openly/anonymously, which would respectively enable/disable the sending of Referer and From 3435 3553 information. 3436 3554 </p> 3437 <p id="rfc.section. 9.2.p.2">Clients <em class="bcp14">SHOULD NOT</em> include a Referer header field in a (non-secure) HTTP request if the referring page was transferred with a secure protocol.3438 </p> 3439 <p id="rfc.section. 9.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 existing3555 <p id="rfc.section.11.2.p.2">Clients <em class="bcp14">SHOULD NOT</em> include a Referer header field in a (non-secure) HTTP request if the referring page was transferred with a secure protocol. 3556 </p> 3557 <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 3440 3558 servers, proxies, and user agents log or display the request-target in places where it might be visible to third parties. 3441 3559 Such services can use POST-based form submission instead. 3442 3560 </p> 3443 <h2 id="rfc.section. 9.3"><a href="#rfc.section.9.3">9.3</a> <a id="location.spoofing-leakage" href="#location.spoofing-leakage">Location Header Fields: Spoofing and Information Leakage</a></h2>3444 <p id="rfc.section. 9.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 Location and Content-Location header fields in responses that are generated under control of said organizations3561 <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> 3562 <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 Location and Content-Location header fields in responses that are generated under control of said organizations 3445 3563 to make sure that they do not attempt to invalidate resources over which they have no authority. 3446 3564 </p> 3447 <p id="rfc.section. 9.3.p.2">Furthermore, appending the fragment identifier from one URI to another one obtained from a Location header field might leak3565 <p id="rfc.section.11.3.p.2">Furthermore, appending the fragment identifier from one URI to another one obtained from a Location header field might leak 3448 3566 confidential information to the target server — although the fragment identifier is not transmitted in the final request, 3449 3567 it might be visible to the user agent through other means, such as scripting. 3450 3568 </p> 3451 <h2 id="rfc.section. 9.4"><a href="#rfc.section.9.4">9.4</a> Security Considerations for CONNECT3569 <h2 id="rfc.section.11.4"><a href="#rfc.section.11.4">11.4</a> Security Considerations for CONNECT 3452 3570 </h2> 3453 <p id="rfc.section. 9.4.p.1">Since tunneled data is opaque to the proxy, there are additional risks to tunneling to other well-known or reserved ports.3571 <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. 3454 3572 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. 3455 3573 </p> 3456 <h2 id="rfc.section. 9.5"><a href="#rfc.section.9.5">9.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>3457 <p id="rfc.section. 9.5.p.1">Accept header fields can reveal information about the user to all servers which are accessed. The Accept-Language header field3574 <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> 3575 <p id="rfc.section.11.5.p.1">Accept header fields can reveal information about the user to all servers which are accessed. The Accept-Language header field 3458 3576 in particular can reveal information the user would consider to be of a private nature, because the understanding of particular 3459 3577 languages is often strongly correlated to the membership of a particular ethnic group. User agents which offer the option … … 3461 3579 configuration process include a message which makes the user aware of the loss of privacy involved. 3462 3580 </p> 3463 <p id="rfc.section. 9.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 fields3581 <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 3464 3582 by default, and to ask the user whether or not to start sending Accept-Language header fields to a server if it detects, by 3465 3583 looking for any Vary header fields generated by the server, that such sending could improve the quality of service. 3466 3584 </p> 3467 <p id="rfc.section. 9.5.p.3">Elaborate user-customized accept header fields sent in every request, in particular if these include quality values, can be3585 <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 3468 3586 used by servers as relatively reliable and long-lived user identifiers. Such user identifiers would allow content providers 3469 3587 to do click-trail tracking, and would allow collaborating content providers to match cross-server click-trails or form submissions … … 3473 3591 filter the accept header fields in relayed requests. General purpose user agents which provide a high degree of header configurability <em class="bcp14">SHOULD</em> warn users about the loss of privacy which can be involved. 3474 3592 </p> 3475 <h1 id="rfc.section.1 0"><a href="#rfc.section.10">10.</a> <a id="acks" href="#acks">Acknowledgments</a></h1>3476 <p id="rfc.section.1 0.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 9</a> of <a href="#Part1" id="rfc.xref.Part1.54"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.3477 </p> 3478 <h1 id="rfc.references"><a id="rfc.section.1 1" href="#rfc.section.11">11.</a> References3593 <h1 id="rfc.section.12"><a href="#rfc.section.12">12.</a> <a id="acks" href="#acks">Acknowledgments</a></h1> 3594 <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.57"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 3595 </p> 3596 <h1 id="rfc.references"><a id="rfc.section.13" href="#rfc.section.13">13.</a> References 3479 3597 </h1> 3480 <h2 id="rfc.references.1"><a href="#rfc.section.1 1.1" id="rfc.section.11.1">11.1</a> Normative References3598 <h2 id="rfc.references.1"><a href="#rfc.section.13.1" id="rfc.section.13.1">13.1</a> Normative References 3481 3599 </h2> 3482 3600 <table> … … 3557 3675 </tr> 3558 3676 </table> 3559 <h2 id="rfc.references.2"><a href="#rfc.section.1 1.2" id="rfc.section.11.2">11.2</a> Informative References3677 <h2 id="rfc.references.2"><a href="#rfc.section.13.2" id="rfc.section.13.2">13.2</a> Informative References 3560 3678 </h2> 3561 3679 <table> … … 3700 3818 </p> 3701 3819 <h2 id="rfc.section.A.2"><a href="#rfc.section.A.2">A.2</a> <a id="conversion.to.canonical.form" href="#conversion.to.canonical.form">Conversion to Canonical Form</a></h2> 3702 <p id="rfc.section.A.2.p.1">MIME requires that an Internet mail body-part be converted to canonical form prior to being transferred, as described in <a href="http://tools.ietf.org/html/rfc2049#section-4">Section 4</a> of <a href="#RFC2049" id="rfc.xref.RFC2049.1"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Five: Conformance Criteria and Examples">[RFC2049]</cite></a>. <a href="#canonicalization.and.text.defaults" title="Canonicalization and Text Defaults">Section 6.5.1</a> of this document describes the forms allowed for subtypes of the "text" media type when transmitted over HTTP. <a href="#RFC2046" id="rfc.xref.RFC2046.3"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types">[RFC2046]</cite></a> requires that content with a type of "text" represent line breaks as CRLF and forbids the use of CR or LF outside of line3820 <p id="rfc.section.A.2.p.1">MIME requires that an Internet mail body-part be converted to canonical form prior to being transferred, as described in <a href="http://tools.ietf.org/html/rfc2049#section-4">Section 4</a> of <a href="#RFC2049" id="rfc.xref.RFC2049.1"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Five: Conformance Criteria and Examples">[RFC2049]</cite></a>. <a href="#canonicalization.and.text.defaults" title="Canonicalization and Text Defaults">Section 5.5.1</a> of this document describes the forms allowed for subtypes of the "text" media type when transmitted over HTTP. <a href="#RFC2046" id="rfc.xref.RFC2046.3"><cite title="Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types">[RFC2046]</cite></a> requires that content with a type of "text" represent line breaks as CRLF and forbids the use of CR or LF outside of line 3703 3821 break sequences. HTTP allows CRLF, bare CR, and bare LF to indicate a line break within text content when a message is transmitted 3704 3822 over HTTP. 3705 3823 </p> 3706 <p id="rfc.section.A.2.p.2">Where it is possible, a proxy or gateway from HTTP to a strict MIME environment <em class="bcp14">SHOULD</em> translate all line breaks within the text media types described in <a href="#canonicalization.and.text.defaults" title="Canonicalization and Text Defaults">Section 6.5.1</a> of this document to the RFC 2049 canonical form of CRLF. Note, however, that this might be complicated by the presence of3824 <p id="rfc.section.A.2.p.2">Where it is possible, a proxy or gateway from HTTP to a strict MIME environment <em class="bcp14">SHOULD</em> translate all line breaks within the text media types described in <a href="#canonicalization.and.text.defaults" title="Canonicalization and Text Defaults">Section 5.5.1</a> of this document to the RFC 2049 canonical form of CRLF. Note, however, that this might be complicated by the presence of 3707 3825 a Content-Encoding and by the fact that HTTP allows the use of some character encodings which do not use octets 13 and 10 3708 3826 to represent CR and LF, respectively, as is the case for some multi-byte character encodings. … … 3712 3830 </p> 3713 3831 <h2 id="rfc.section.A.3"><a href="#rfc.section.A.3">A.3</a> <a id="conversion.of.date.formats" href="#conversion.of.date.formats">Conversion of Date Formats</a></h2> 3714 <p id="rfc.section.A.3.p.1">HTTP/1.1 uses a restricted set of date formats (<a href="#http.date" title="Date/Time Formats">Section 6.1</a>) to simplify the process of date comparison. Proxies and gateways from other protocols <em class="bcp14">SHOULD</em> ensure that any Date header field present in a message conforms to one of the HTTP/1.1 formats and rewrite the date if necessary.3832 <p id="rfc.section.A.3.p.1">HTTP/1.1 uses a restricted set of date formats (<a href="#http.date" title="Date/Time Formats">Section 5.1</a>) to simplify the process of date comparison. Proxies and gateways from other protocols <em class="bcp14">SHOULD</em> ensure that any Date header field present in a message conforms to one of the HTTP/1.1 formats and rewrite the date if necessary. 3715 3833 </p> 3716 3834 <h2 id="rfc.section.A.4"><a href="#rfc.section.A.4">A.4</a> <a id="introduction.of.content-encoding" href="#introduction.of.content-encoding">Introduction of Content-Encoding</a></h2> … … 3731 3849 </p> 3732 3850 <h2 id="rfc.section.A.6"><a href="#rfc.section.A.6">A.6</a> <a id="introduction.of.transfer-encoding" href="#introduction.of.transfer-encoding">Introduction of Transfer-Encoding</a></h2> 3733 <p id="rfc.section.A.6.p.1">HTTP/1.1 introduces the Transfer-Encoding header field (<a href="p1-messaging.html#header.transfer-encoding" title="Transfer-Encoding">Section 3.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.5 5"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). Proxies/gateways <em class="bcp14">MUST</em> remove any transfer-coding prior to forwarding a message via a MIME-compliant protocol.3851 <p id="rfc.section.A.6.p.1">HTTP/1.1 introduces the Transfer-Encoding header field (<a href="p1-messaging.html#header.transfer-encoding" title="Transfer-Encoding">Section 3.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.58"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). Proxies/gateways <em class="bcp14">MUST</em> remove any transfer-coding prior to forwarding a message via a MIME-compliant protocol. 3734 3852 </p> 3735 3853 <h2 id="rfc.section.A.7"><a href="#rfc.section.A.7">A.7</a> <a id="mhtml.line.length" href="#mhtml.line.length">MHTML and Line Length Limitations</a></h2> 3736 3854 <p id="rfc.section.A.7.p.1">HTTP implementations which share code with MHTML <a href="#RFC2557" id="rfc.xref.RFC2557.2"><cite title="MIME Encapsulation of Aggregate Documents, such as HTML (MHTML)">[RFC2557]</cite></a> implementations need to be aware of MIME line length limitations. Since HTTP does not have this limitation, HTTP does not 3737 3855 fold long lines. MHTML messages being transported by HTTP follow all conventions of MHTML, including line length limitations 3738 and folding, canonicalization, etc., since HTTP transports all message-bodies as payload (see <a href="#multipart.types" title="Multipart Types">Section 6.5.2</a>) and does not interpret the content or any MIME header lines that might be contained therein.3856 and folding, canonicalization, etc., since HTTP transports all message-bodies as payload (see <a href="#multipart.types" title="Multipart Types">Section 5.5.2</a>) and does not interpret the content or any MIME header lines that might be contained therein. 3739 3857 </p> 3740 3858 <h1 id="rfc.section.B"><a href="#rfc.section.B">B.</a> <a id="additional.features" href="#additional.features">Additional Features</a></h1> … … 3769 3887 <p id="rfc.section.C.p.9">Define status 426 (Upgrade Required) (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 4.6.15</a>) 3770 3888 </p> 3771 <p id="rfc.section.C.p.10">Change ABNF productions for header fields to only define the field value. (<a href="#header.field.definitions" title="Header Field Definitions">Section 7</a>)3889 <p id="rfc.section.C.p.10">Change ABNF productions for header fields to only define the field value. (<a href="#header.field.definitions" title="Header Field Definitions">Section 9</a>) 3772 3890 </p> 3773 3891 <p id="rfc.section.C.p.11">Reclassify "Allow" as response header field, removing the option to specify it in a PUT request. Relax the server requirement 3774 on the contents 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 7.5</a>)3892 on the contents 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 9.5</a>) 3775 3893 </p> 3776 3894 <p id="rfc.section.C.p.12">The ABNF for the Expect header field has been both fixed (allowing parameters for value-less expectations as well) and simplified 3777 (allowing trailing semicolons after "100-continue" when they were invalid before). (<a href="#header.expect" id="rfc.xref.header.expect.4" title="Expect">Section 7.11</a>)3895 (allowing trailing semicolons after "100-continue" when they were invalid before). (<a href="#header.expect" id="rfc.xref.header.expect.4" title="Expect">Section 9.11</a>) 3778 3896 </p> 3779 3897 <p id="rfc.section.C.p.13">Correct syntax of Location header field to allow URI references (including relative references and fragments), as referred 3780 3898 symbol "absoluteURI" wasn't what was expected, and add some clarifications as to when use of fragments would not be appropriate. 3781 (<a href="#header.location" id="rfc.xref.header.location.5" title="Location">Section 7.13</a>)3782 </p> 3783 <p id="rfc.section.C.p.14">Restrict Max-Forwards 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 7.14</a>)3784 </p> 3785 <p id="rfc.section.C.p.15">Allow Referer field value of "about:blank" as alternative to not specifying it. (<a href="#header.referer" id="rfc.xref.header.referer.3" title="Referer">Section 7.15</a>)3899 (<a href="#header.location" id="rfc.xref.header.location.5" title="Location">Section 9.13</a>) 3900 </p> 3901 <p id="rfc.section.C.p.14">Restrict Max-Forwards 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 9.14</a>) 3902 </p> 3903 <p id="rfc.section.C.p.15">Allow Referer field value of "about:blank" as alternative to not specifying it. (<a href="#header.referer" id="rfc.xref.header.referer.3" title="Referer">Section 9.15</a>) 3786 3904 </p> 3787 3905 <p id="rfc.section.C.p.16">In the description of the Server header field, the Via field was described as a SHOULD. The requirement was and is stated 3788 correctly in the description of the Via header field in <a href="p1-messaging.html#header.via" title="Via">Section 6.2</a> of <a href="#Part1" id="rfc.xref.Part1.5 6"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. (<a href="#header.server" id="rfc.xref.header.server.4" title="Server">Section 7.17</a>)3789 </p> 3790 <p id="rfc.section.C.p.17">Clarify contexts that charset is used in. (<a href="#character.sets" title="Character Encodings (charset)">Section 6.3</a>)3791 </p> 3792 <p id="rfc.section.C.p.18">Registration of Content Codings now requires IETF Review (<a href="#content.coding.registry" title="Content Coding Registry">Section 6.4.1</a>)3793 </p> 3794 <p id="rfc.section.C.p.19">Remove the default character encoding for text media types; the default now is whatever the media type definition says. (<a href="#canonicalization.and.text.defaults" title="Canonicalization and Text Defaults">Section 6.5.1</a>)3795 </p> 3796 <p id="rfc.section.C.p.20">Change ABNF productions for header fields to only define the field value. (<a href="#header.field.definitions" title="Header Field Definitions">Section 7</a>)3906 correctly in the description of the Via header field in <a href="p1-messaging.html#header.via" title="Via">Section 6.2</a> of <a href="#Part1" id="rfc.xref.Part1.59"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. (<a href="#header.server" id="rfc.xref.header.server.4" title="Server">Section 9.17</a>) 3907 </p> 3908 <p id="rfc.section.C.p.17">Clarify contexts that charset is used in. (<a href="#character.sets" title="Character Encodings (charset)">Section 5.3</a>) 3909 </p> 3910 <p id="rfc.section.C.p.18">Registration of Content Codings now requires IETF Review (<a href="#content.coding.registry" title="Content Coding Registry">Section 5.4.1</a>) 3911 </p> 3912 <p id="rfc.section.C.p.19">Remove the default character encoding for text media types; the default now is whatever the media type definition says. (<a href="#canonicalization.and.text.defaults" title="Canonicalization and Text Defaults">Section 5.5.1</a>) 3913 </p> 3914 <p id="rfc.section.C.p.20">Change ABNF productions for header fields to only define the field value. (<a href="#header.field.definitions" title="Header Field Definitions">Section 9</a>) 3797 3915 </p> 3798 3916 <p id="rfc.section.C.p.21">Remove definition of Content-MD5 header field because it was inconsistently implemented with respect to partial responses, 3799 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 7</a>)3800 </p> 3801 <p id="rfc.section.C.p.22">Remove ISO-8859-1 special-casing in Accept-Charset. (<a href="#header.accept-charset" id="rfc.xref.header.accept-charset. 3" title="Accept-Charset">Section 7.2</a>)3917 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 9</a>) 3918 </p> 3919 <p id="rfc.section.C.p.22">Remove ISO-8859-1 special-casing in Accept-Charset. (<a href="#header.accept-charset" id="rfc.xref.header.accept-charset.4" title="Accept-Charset">Section 9.2</a>) 3802 3920 </p> 3803 3921 <p id="rfc.section.C.p.23">Remove base URI setting semantics for Content-Location due to poor implementation support, which was caused by too many broken 3804 3922 servers emitting bogus Content-Location header fields, and also the potentially undesirable effect of potentially breaking 3805 relative links in content-negotiated resources. (<a href="#header.content-location" id="rfc.xref.header.content-location.4" title="Content-Location">Section 7.8</a>)3923 relative links in content-negotiated resources. (<a href="#header.content-location" id="rfc.xref.header.content-location.4" title="Content-Location">Section 9.8</a>) 3806 3924 </p> 3807 3925 <p id="rfc.section.C.p.24">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>) … … 4537 4655 <h1 id="rfc.section.F"><a href="#rfc.section.F">F.</a> THE TEXT FORMERLY KNOWN AS PART3 4538 4656 </h1> 4539 <h2 id="rfc.section.F.1"><a href="#rfc.section.F.1">F.1</a> <a id="payload" href="#payload">Payload</a></h2>4540 <p id="rfc.section.F.1.p.1">HTTP messages <em class="bcp14">MAY</em> transfer a payload if not otherwise restricted by the request method or response status code. The payload consists of metadata,4541 in the form of header fields, and data, in the form of the sequence of octets in the message body after any transfer-coding4542 has been decoded.4543 </p>4544 <div id="rfc.iref.p.3"></div>4545 <p id="rfc.section.F.1.p.2">A "<dfn>payload</dfn>" in HTTP is always a partial or complete representation of some resource. We use separate terms for payload and representation4546 because some messages contain only the associated representation's header fields (e.g., responses to HEAD) or only some part(s)4547 of the representation (e.g., the 206 status code).4548 </p>4549 <h3 id="rfc.section.F.1.1"><a href="#rfc.section.F.1.1">F.1.1</a> <a id="payload.header.fields" href="#payload.header.fields">Payload Header Fields</a></h3>4550 <p id="rfc.section.F.1.1.p.1">HTTP header fields that specifically define the payload, rather than the associated representation, are referred to as "payload4551 header fields". The following payload header fields are defined by HTTP/1.1:4552 </p>4553 <div id="rfc.table.u.5">4554 <table class="tt full left" cellpadding="3" cellspacing="0">4555 <thead>4556 <tr>4557 <th>Header Field Name</th>4558 <th>Defined in...</th>4559 </tr>4560 </thead>4561 <tbody>4562 <tr>4563 <td class="left">Content-Length</td>4564 <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.57"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a></td>4565 </tr>4566 <tr>4567 <td class="left">Content-Range</td>4568 <td class="left"><a href="p5-range.html#header.content-range" title="Content-Range">Section 5.2</a> of <a href="#Part5" id="rfc.xref.Part5.8"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a></td>4569 </tr>4570 </tbody>4571 </table>4572 </div>4573 <h3 id="rfc.section.F.1.2"><a href="#rfc.section.F.1.2">F.1.2</a> <a id="payload.body" href="#payload.body">Payload Body</a></h3>4574 <p id="rfc.section.F.1.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.58"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. The payload body is obtained from the message body by decoding any Transfer-Encoding that might have been applied to ensure4575 safe and proper transfer of the message.4576 </p>4577 4657 <div id="rfc.iref.r.3"></div> 4578 <h2 id="rfc.section.F. 2"><a href="#rfc.section.F.2">F.2</a> <a id="representation3" href="#representation3">Representation</a></h2>4579 <p id="rfc.section.F. 2.p.1">A "<dfn>representation</dfn>" is information in a format that can be readily communicated from one party to another. A resource representation is information4658 <h2 id="rfc.section.F.1"><a href="#rfc.section.F.1">F.1</a> <a id="representation3" href="#representation3">Representation</a></h2> 4659 <p id="rfc.section.F.1.p.1">A "<dfn>representation</dfn>" is information in a format that can be readily communicated from one party to another. A resource representation is information 4580 4660 that reflects the state of that resource, as observed at some point in the past (e.g., in a response to GET) or to be desired 4581 4661 at some point in the future (e.g., in a PUT request). 4582 4662 </p> 4583 <p id="rfc.section.F. 2.p.2">Most, but not all, representations transferred via HTTP are intended to be a representation of the target resource (the resource4663 <p id="rfc.section.F.1.p.2">Most, but not all, representations transferred via HTTP are intended to be a representation of the target resource (the resource 4584 4664 identified by the effective request URI). The precise semantics of a representation are determined by the type of message 4585 4665 (request or response), the request method, the response status code, and the representation metadata. For example, the above … … 4590 4670 next steps are suggested for resolving it. 4591 4671 </p> 4592 <h3 id="rfc.section.F. 2.1"><a href="#rfc.section.F.2.1">F.2.1</a> <a id="representation.header.fields" href="#representation.header.fields">Representation Header Fields</a></h3>4593 <p id="rfc.section.F. 2.1.p.1">Representation header fields define metadata about the representation data enclosed in the message body or, if no message4672 <h3 id="rfc.section.F.1.1"><a href="#rfc.section.F.1.1">F.1.1</a> <a id="representation.header.fields" href="#representation.header.fields">Representation Header Fields</a></h3> 4673 <p id="rfc.section.F.1.1.p.1">Representation header fields define metadata about the representation data enclosed in the message body or, if no message 4594 4674 body is present, about the representation that would have been transferred in a 200 response to a simultaneous GET request 4595 4675 with the same effective request URI. 4596 4676 </p> 4597 <p id="rfc.section.F. 2.1.p.2">The following header fields are defined as representation metadata:</p>4677 <p id="rfc.section.F.1.1.p.2">The following header fields are defined as representation metadata:</p> 4598 4678 <div id="rfc.table.u.6"> 4599 4679 <table class="tt full left" cellpadding="3" cellspacing="0"> … … 4607 4687 <tr> 4608 4688 <td class="left">Content-Encoding</td> 4609 <td class="left"><a href="#header.content-encoding" id="rfc.xref.header.content-encoding.4" title="Content-Encoding">Section 7.6</a></td>4689 <td class="left"><a href="#header.content-encoding" id="rfc.xref.header.content-encoding.4" title="Content-Encoding">Section 9.6</a></td> 4610 4690 </tr> 4611 4691 <tr> 4612 4692 <td class="left">Content-Language</td> 4613 <td class="left"><a href="#header.content-language" id="rfc.xref.header.content-language.2" title="Content-Language">Section 7.7</a></td>4693 <td class="left"><a href="#header.content-language" id="rfc.xref.header.content-language.2" title="Content-Language">Section 9.7</a></td> 4614 4694 </tr> 4615 4695 <tr> 4616 4696 <td class="left">Content-Location</td> 4617 <td class="left"><a href="#header.content-location" id="rfc.xref.header.content-location.5" title="Content-Location">Section 7.8</a></td>4697 <td class="left"><a href="#header.content-location" id="rfc.xref.header.content-location.5" title="Content-Location">Section 9.8</a></td> 4618 4698 </tr> 4619 4699 <tr> 4620 4700 <td class="left">Content-Type</td> 4621 <td class="left"><a href="#header.content-type" id="rfc.xref.header.content-type.5" title="Content-Type">Section 7.9</a></td>4701 <td class="left"><a href="#header.content-type" id="rfc.xref.header.content-type.5" title="Content-Type">Section 9.9</a></td> 4622 4702 </tr> 4623 4703 <tr> 4624 4704 <td class="left">Expires</td> 4625 <td class="left"><a href="p6-cache.html#header.expires" title="Expires">Section 3.3</a> of <a href="#Part6" id="rfc.xref.Part6.1 8"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a></td>4705 <td class="left"><a href="p6-cache.html#header.expires" title="Expires">Section 3.3</a> of <a href="#Part6" id="rfc.xref.Part6.19"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a></td> 4626 4706 </tr> 4627 4707 </tbody> 4628 4708 </table> 4629 4709 </div> 4630 <p id="rfc.section.F. 2.1.p.3">Additional header fields define metadata about the selected representation, which might differ from the representation included4710 <p id="rfc.section.F.1.1.p.3">Additional header fields define metadata about the selected representation, which might differ from the representation included 4631 4711 in the message for responses to some state-changing methods. The following header fields are defined as selected representation 4632 4712 metadata: … … 4652 4732 </table> 4653 4733 </div> 4654 <h3 id="rfc.section.F. 2.2"><a href="#rfc.section.F.2.2">F.2.2</a> <a id="representation.data" href="#representation.data">Representation Data</a></h3>4655 <p id="rfc.section.F. 2.2.p.1">The representation body associated with an HTTP message is either provided as the payload body of the message or referred4734 <h3 id="rfc.section.F.1.2"><a href="#rfc.section.F.1.2">F.1.2</a> <a id="representation.data" href="#representation.data">Representation Data</a></h3> 4735 <p id="rfc.section.F.1.2.p.1">The representation body associated with an HTTP message is either provided as the payload body of the message or referred 4656 4736 to by the message semantics and the effective request URI. The representation data is in a format and encoding defined by 4657 4737 the representation metadata header fields. 4658 4738 </p> 4659 <p id="rfc.section.F. 2.2.p.2">The data type of the representation data is determined via the header fields Content-Type and Content-Encoding. These define4739 <p id="rfc.section.F.1.2.p.2">The data type of the representation data is determined via the header fields Content-Type and Content-Encoding. These define 4660 4740 a two-layer, ordered encoding model: 4661 4741 </p> 4662 4742 <div id="rfc.figure.u.65"></div><pre class="text"> representation-data := Content-Encoding( Content-Type( bits ) ) 4663 </pre><p id="rfc.section.F. 2.2.p.4">Content-Type 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 payload4743 </pre><p id="rfc.section.F.1.2.p.4">Content-Type 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 4664 4744 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 4665 4745 to the sender. If the Content-Type header field is not present, it indicates that the sender does not know the media type 4666 4746 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.4"><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. 4667 4747 </p> 4668 <p id="rfc.section.F. 2.2.p.5">In practice, resource owners do not always properly configure their origin server to provide the correct Content-Type for4748 <p id="rfc.section.F.1.2.p.5">In practice, resource owners do not always properly configure their origin server to provide the correct Content-Type for 4669 4749 a given representation, with the result that some clients will examine a response body's content and override the specified 4670 4750 type. Clients that do so risk drawing incorrect conclusions, which might expose additional security risks (e.g., "privilege … … 4673 4753 such "content sniffing" when it is used. 4674 4754 </p> 4675 <p id="rfc.section.F. 2.2.p.6">Content-Encoding is used to indicate any additional content codings applied to the data, usually for the purpose of data compression,4755 <p id="rfc.section.F.1.2.p.6">Content-Encoding is used to indicate any additional content codings applied to the data, usually for the purpose of data compression, 4676 4756 that are a property of the representation. If Content-Encoding is not present, then there is no additional encoding beyond 4677 4757 that defined by the Content-Type. 4678 </p>4679 <h2 id="rfc.section.F.3"><a href="#rfc.section.F.3">F.3</a> <a id="content.negotiation" href="#content.negotiation">Content Negotiation</a></h2>4680 <p id="rfc.section.F.3.p.1">HTTP responses include a representation which contains information for interpretation, whether by a human user or for further4681 processing. Often, the server has different ways of representing the same information; for example, in different formats,4682 languages, or using different character encodings.4683 </p>4684 <p id="rfc.section.F.3.p.2">HTTP clients and their users might have different or variable capabilities, characteristics or preferences which would influence4685 which representation, among those available from the server, would be best for the server to deliver. For this reason, HTTP4686 provides mechanisms for "content negotiation" — a process of allowing selection of a representation of a given resource, when4687 more than one is available.4688 </p>4689 <p id="rfc.section.F.3.p.3">This specification defines two patterns of content negotiation; "server-driven", where the server selects the representation4690 based upon the client's stated preferences, and "agent-driven" negotiation, where the server provides a list of representations4691 for the client to choose from, based upon their metadata. In addition, there are other patterns: some applications use an4692 "active content" pattern, where the server returns active content which runs on the client and, based on client available4693 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.4694 </p>4695 <p id="rfc.section.F.3.p.4">These patterns are all widely used, and have trade-offs in applicability and practicality. In particular, when the number4696 of preferences or capabilities to be expressed by a client are large (such as when many different formats are supported by4697 a user-agent), server-driven negotiation becomes unwieldy, and might not be appropriate. Conversely, when the number of representations4698 to choose from is very large, agent-driven negotiation might not be appropriate.4699 </p>4700 <p id="rfc.section.F.3.p.5">Note that in all cases, the supplier of representations has the responsibility for determining which representations might4701 be considered to be the "same information".4702 </p>4703 <h3 id="rfc.section.F.3.1"><a href="#rfc.section.F.3.1">F.3.1</a> <a id="server-driven.negotiation" href="#server-driven.negotiation">Server-driven Negotiation</a></h3>4704 <p id="rfc.section.F.3.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-driven4705 negotiation. Selection is based on the available representations of the response (the dimensions over which it can vary; e.g.,4706 language, content-coding, etc.) and the contents of particular header fields in the request message or on other information4707 pertaining to the request (such as the network address of the client).4708 </p>4709 <p id="rfc.section.F.3.1.p.2">Server-driven negotiation is advantageous when the algorithm for selecting from among the available representations is difficult4710 to describe to the user agent, or when the server desires to send its "best guess" to the client along with the first response4711 (hoping to avoid the round-trip delay of a subsequent request if the "best guess" is good enough for the user). In order to4712 improve the server's guess, the user agent <em class="bcp14">MAY</em> include request header fields (Accept, Accept-Language, Accept-Encoding, etc.) which describe its preferences for such a response.4713 </p>4714 <p id="rfc.section.F.3.1.p.3">Server-driven negotiation has disadvantages: </p>4715 <ol>4716 <li>It is impossible for the server to accurately determine what might be "best" for any given user, since that would require4717 complete knowledge of both the capabilities of the user agent and the intended use for the response (e.g., does the user want4718 to view it on screen or print it on paper?).4719 </li>4720 <li>Having the user agent describe its capabilities in every request can be both very inefficient (given that only a small percentage4721 of responses have multiple representations) and a potential violation of the user's privacy.4722 </li>4723 <li>It complicates the implementation of an origin server and the algorithms for generating responses to a request.</li>4724 <li>It might limit a public cache's ability to use the same response for multiple user's requests.</li>4725 </ol>4726 <p id="rfc.section.F.3.1.p.4">Server-driven negotiation allows the user agent to specify its preferences, but it cannot expect responses to always honor4727 them. For example, the origin server might not implement server-driven negotiation, or it might decide that sending a response4728 that doesn't conform to them is better than sending a 406 (Not Acceptable) response.4729 </p>4730 <p id="rfc.section.F.3.1.p.5">Many of the mechanisms for expressing preferences use quality values to declare relative preference. See <a href="p1-messaging.html#quality.values" title="Quality Values">Section 4.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.59"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for more information.4731 </p>4732 <p id="rfc.section.F.3.1.p.6">HTTP/1.1 includes the following header fields for enabling server-driven negotiation through description of user agent capabilities4733 and user preferences: Accept (<a href="#header.accept" id="rfc.xref.header.accept.4" title="Accept">Section 7.1</a>), Accept-Charset (<a href="#header.accept-charset" id="rfc.xref.header.accept-charset.4" title="Accept-Charset">Section 7.2</a>), Accept-Encoding (<a href="#header.accept-encoding" id="rfc.xref.header.accept-encoding.5" title="Accept-Encoding">Section 7.3</a>), Accept-Language (<a href="#header.accept-language" id="rfc.xref.header.accept-language.3" title="Accept-Language">Section 7.4</a>), and User-Agent (<a href="#header.user-agent" id="rfc.xref.header.user-agent.4" title="User-Agent">Section 7.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 information4734 within extension header fields not defined by this specification.4735 </p>4736 <div class="note" id="rfc.section.F.3.1.p.7">4737 <p> <b>Note:</b> In practice, User-Agent based negotiation is fragile, because new clients might not be recognized.4738 </p>4739 </div>4740 <p id="rfc.section.F.3.1.p.8">The Vary header field (<a href="p6-cache.html#header.vary" title="Vary">Section 3.5</a> of <a href="#Part6" id="rfc.xref.Part6.19"><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.4741 </p>4742 <h3 id="rfc.section.F.3.2"><a href="#rfc.section.F.3.2">F.3.2</a> <a id="agent-driven.negotiation" href="#agent-driven.negotiation">Agent-driven Negotiation</a></h3>4743 <p id="rfc.section.F.3.2.p.1">With agent-driven negotiation, selection of the best representation for a response is performed by the user agent after receiving4744 an initial response from the origin server. Selection is based on a list of the available representations of the response4745 included within the header fields or body of the initial response, with each representation identified by its own URI. Selection4746 from among the representations can be performed automatically (if the user agent is capable of doing so) or manually by the4747 user selecting from a generated (possibly hypertext) menu.4748 </p>4749 <p id="rfc.section.F.3.2.p.2">Agent-driven negotiation is advantageous when the response would vary over commonly-used dimensions (such as type, language,4750 or encoding), when the origin server is unable to determine a user agent's capabilities from examining the request, and generally4751 when public caches are used to distribute server load and reduce network usage.4752 </p>4753 <p id="rfc.section.F.3.2.p.3">Agent-driven negotiation suffers from the disadvantage of needing a second request to obtain the best alternate representation.4754 This second request is only efficient when caching is used. In addition, this specification does not define any mechanism4755 for supporting automatic selection, though it also does not prevent any such mechanism from being developed as an extension4756 and used within HTTP/1.1.4757 </p>4758 <p id="rfc.section.F.3.2.p.4">This specification defines the 300 (Multiple Choices) and 406 (Not Acceptable) status codes for enabling agent-driven negotiation4759 when the server is unwilling or unable to provide a varying response using server-driven negotiation.4760 </p>4761 <h2 id="rfc.section.F.4"><a href="#rfc.section.F.4">F.4</a> <a id="change.log3" href="#change.log3">Change Log (to be removed by RFC Editor before publication)</a></h2>4762 <h3 id="rfc.section.F.4.1"><a href="#rfc.section.F.4.1">F.4.1</a> Since RFC 26164763 </h3>4764 <p id="rfc.section.F.4.1.p.1">Extracted relevant partitions from <a href="#RFC2616" id="rfc.xref.RFC2616.5"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2616]</cite></a>.4765 4758 </p> 4766 4759 <h1 id="rfc.index"><a href="#rfc.index">Index</a></h1> … … 4770 4763 <ul class="ind"> 4771 4764 <li><a id="rfc.index.1" href="#rfc.index.1"><b>1</b></a><ul> 4772 <li>100 Continue (status code) <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.21"><b>4.3.1</b></a>, <a href="#rfc.xref.status.100.2"> 8.2</a></li>4773 <li>100-continue (expect value) <a href="#rfc.iref.13 2"><b>7.11</b></a></li>4774 <li>101 Switching Protocols (status code) <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.22"><b>4.3.2</b></a>, <a href="#rfc.xref.status.101.2"> 8.2</a></li>4765 <li>100 Continue (status code) <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.21"><b>4.3.1</b></a>, <a href="#rfc.xref.status.100.2">10.2</a></li> 4766 <li>100-continue (expect value) <a href="#rfc.iref.133"><b>9.11</b></a></li> 4767 <li>101 Switching Protocols (status code) <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.22"><b>4.3.2</b></a>, <a href="#rfc.xref.status.101.2">10.2</a></li> 4775 4768 </ul> 4776 4769 </li> 4777 4770 <li><a id="rfc.index.2" href="#rfc.index.2"><b>2</b></a><ul> 4778 <li>200 OK (status code) <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.23"><b>4.4.1</b></a>, <a href="#rfc.xref.status.200.2"> 8.2</a></li>4779 <li>201 Created (status code) <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.24"><b>4.4.2</b></a>, <a href="#rfc.xref.status.201.2"> 8.2</a></li>4780 <li>202 Accepted (status code) <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.25"><b>4.4.3</b></a>, <a href="#rfc.xref.status.202.2"> 8.2</a></li>4781 <li>203 Non-Authoritative Information (status code) <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.26"><b>4.4.4</b></a>, <a href="#rfc.xref.status.203.2"> 8.2</a>, <a href="#rfc.xref.status.203.3">C</a></li>4782 <li>204 No Content (status code) <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.27"><b>4.4.5</b></a>, <a href="#rfc.xref.status.204.2"> 8.2</a></li>4783 <li>205 Reset Content (status code) <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.28"><b>4.4.6</b></a>, <a href="#rfc.xref.status.205.2"> 8.2</a></li>4771 <li>200 OK (status code) <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.23"><b>4.4.1</b></a>, <a href="#rfc.xref.status.200.2">10.2</a></li> 4772 <li>201 Created (status code) <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.24"><b>4.4.2</b></a>, <a href="#rfc.xref.status.201.2">10.2</a></li> 4773 <li>202 Accepted (status code) <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.25"><b>4.4.3</b></a>, <a href="#rfc.xref.status.202.2">10.2</a></li> 4774 <li>203 Non-Authoritative Information (status code) <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.26"><b>4.4.4</b></a>, <a href="#rfc.xref.status.203.2">10.2</a>, <a href="#rfc.xref.status.203.3">C</a></li> 4775 <li>204 No Content (status code) <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.27"><b>4.4.5</b></a>, <a href="#rfc.xref.status.204.2">10.2</a></li> 4776 <li>205 Reset Content (status code) <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.28"><b>4.4.6</b></a>, <a href="#rfc.xref.status.205.2">10.2</a></li> 4784 4777 </ul> 4785 4778 </li> 4786 4779 <li><a id="rfc.index.3" href="#rfc.index.3"><b>3</b></a><ul> 4787 <li>300 Multiple Choices (status code) <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.29"><b>4.5.1</b></a>, <a href="#rfc.xref.status.300.2"> 8.2</a></li>4788 <li>301 Moved Permanently (status code) <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.30"><b>4.5.2</b></a>, <a href="#rfc.xref.status.301.2"> 8.2</a>, <a href="#rfc.xref.status.301.3">C</a></li>4789 <li>302 Found (status code) <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.31"><b>4.5.3</b></a>, <a href="#rfc.xref.status.302.2"> 8.2</a>, <a href="#rfc.xref.status.302.3">C</a></li>4790 <li>303 See Other (status code) <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.iref.32"><b>4.5.4</b></a>, <a href="#rfc.xref.status.303.2"> 8.2</a></li>4791 <li>305 Use Proxy (status code) <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.33"><b>4.5.5</b></a>, <a href="#rfc.xref.status.305.2"> 8.2</a>, <a href="#rfc.xref.status.305.3">C</a></li>4792 <li>306 (Unused) (status code) <a href="#rfc.iref.34"><b>4.5.6</b></a>, <a href="#rfc.xref.status.306.1"> 8.2</a></li>4793 <li>307 Temporary Redirect (status code) <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.iref.35"><b>4.5.7</b></a>, <a href="#rfc.xref.status.307.2"> 8.2</a>, <a href="#rfc.xref.status.307.3">C</a></li>4780 <li>300 Multiple Choices (status code) <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.29"><b>4.5.1</b></a>, <a href="#rfc.xref.status.300.2">10.2</a></li> 4781 <li>301 Moved Permanently (status code) <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.30"><b>4.5.2</b></a>, <a href="#rfc.xref.status.301.2">10.2</a>, <a href="#rfc.xref.status.301.3">C</a></li> 4782 <li>302 Found (status code) <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.31"><b>4.5.3</b></a>, <a href="#rfc.xref.status.302.2">10.2</a>, <a href="#rfc.xref.status.302.3">C</a></li> 4783 <li>303 See Other (status code) <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.iref.32"><b>4.5.4</b></a>, <a href="#rfc.xref.status.303.2">10.2</a></li> 4784 <li>305 Use Proxy (status code) <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.33"><b>4.5.5</b></a>, <a href="#rfc.xref.status.305.2">10.2</a>, <a href="#rfc.xref.status.305.3">C</a></li> 4785 <li>306 (Unused) (status code) <a href="#rfc.iref.34"><b>4.5.6</b></a>, <a href="#rfc.xref.status.306.1">10.2</a></li> 4786 <li>307 Temporary Redirect (status code) <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.iref.35"><b>4.5.7</b></a>, <a href="#rfc.xref.status.307.2">10.2</a>, <a href="#rfc.xref.status.307.3">C</a></li> 4794 4787 </ul> 4795 4788 </li> 4796 4789 <li><a id="rfc.index.4" href="#rfc.index.4"><b>4</b></a><ul> 4797 <li>400 Bad Request (status code) <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.36"><b>4.6.1</b></a>, <a href="#rfc.xref.status.400.2"> 8.2</a></li>4798 <li>402 Payment Required (status code) <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.37"><b>4.6.2</b></a>, <a href="#rfc.xref.status.402.2"> 8.2</a></li>4799 <li>403 Forbidden (status code) <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.38"><b>4.6.3</b></a>, <a href="#rfc.xref.status.403.2"> 8.2</a></li>4800 <li>404 Not Found (status code) <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.39"><b>4.6.4</b></a>, <a href="#rfc.xref.status.404.2"> 8.2</a></li>4801 <li>405 Method Not Allowed (status code) <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.40"><b>4.6.5</b></a>, <a href="#rfc.xref.status.405.2"> 8.2</a></li>4802 <li>406 Not Acceptable (status code) <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.41"><b>4.6.6</b></a>, <a href="#rfc.xref.status.406.2"> 8.2</a></li>4803 <li>408 Request Timeout (status code) <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.42"><b>4.6.7</b></a>, <a href="#rfc.xref.status.408.2"> 8.2</a></li>4804 <li>409 Conflict (status code) <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.43"><b>4.6.8</b></a>, <a href="#rfc.xref.status.409.2"> 8.2</a></li>4805 <li>410 Gone (status code) <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.44"><b>4.6.9</b></a>, <a href="#rfc.xref.status.410.2"> 8.2</a></li>4806 <li>411 Length Required (status code) <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.45"><b>4.6.10</b></a>, <a href="#rfc.xref.status.411.2"> 8.2</a></li>4807 <li>413 Request Representation Too Large (status code) <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.46"><b>4.6.11</b></a>, <a href="#rfc.xref.status.413.2"> 8.2</a></li>4808 <li>414 URI Too Long (status code) <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.47"><b>4.6.12</b></a>, <a href="#rfc.xref.status.414.2"> 8.2</a></li>4809 <li>415 Unsupported Media Type (status code) <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.48"><b>4.6.13</b></a>, <a href="#rfc.xref.status.415.2"> 8.2</a></li>4810 <li>417 Expectation Failed (status code) <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.49"><b>4.6.14</b></a>, <a href="#rfc.xref.status.417.2"> 8.2</a></li>4811 <li>426 Upgrade Required (status code) <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.50"><b>4.6.15</b></a>, <a href="#rfc.xref.status.426.2"> 8.2</a>, <a href="#rfc.xref.status.426.3">C</a></li>4790 <li>400 Bad Request (status code) <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.36"><b>4.6.1</b></a>, <a href="#rfc.xref.status.400.2">10.2</a></li> 4791 <li>402 Payment Required (status code) <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.37"><b>4.6.2</b></a>, <a href="#rfc.xref.status.402.2">10.2</a></li> 4792 <li>403 Forbidden (status code) <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.38"><b>4.6.3</b></a>, <a href="#rfc.xref.status.403.2">10.2</a></li> 4793 <li>404 Not Found (status code) <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.39"><b>4.6.4</b></a>, <a href="#rfc.xref.status.404.2">10.2</a></li> 4794 <li>405 Method Not Allowed (status code) <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.40"><b>4.6.5</b></a>, <a href="#rfc.xref.status.405.2">10.2</a></li> 4795 <li>406 Not Acceptable (status code) <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.41"><b>4.6.6</b></a>, <a href="#rfc.xref.status.406.2">10.2</a></li> 4796 <li>408 Request Timeout (status code) <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.42"><b>4.6.7</b></a>, <a href="#rfc.xref.status.408.2">10.2</a></li> 4797 <li>409 Conflict (status code) <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.43"><b>4.6.8</b></a>, <a href="#rfc.xref.status.409.2">10.2</a></li> 4798 <li>410 Gone (status code) <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.44"><b>4.6.9</b></a>, <a href="#rfc.xref.status.410.2">10.2</a></li> 4799 <li>411 Length Required (status code) <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.45"><b>4.6.10</b></a>, <a href="#rfc.xref.status.411.2">10.2</a></li> 4800 <li>413 Request Representation Too Large (status code) <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.46"><b>4.6.11</b></a>, <a href="#rfc.xref.status.413.2">10.2</a></li> 4801 <li>414 URI Too Long (status code) <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.47"><b>4.6.12</b></a>, <a href="#rfc.xref.status.414.2">10.2</a></li> 4802 <li>415 Unsupported Media Type (status code) <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.48"><b>4.6.13</b></a>, <a href="#rfc.xref.status.415.2">10.2</a></li> 4803 <li>417 Expectation Failed (status code) <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.49"><b>4.6.14</b></a>, <a href="#rfc.xref.status.417.2">10.2</a></li> 4804 <li>426 Upgrade Required (status code) <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.50"><b>4.6.15</b></a>, <a href="#rfc.xref.status.426.2">10.2</a>, <a href="#rfc.xref.status.426.3">C</a></li> 4812 4805 </ul> 4813 4806 </li> 4814 4807 <li><a id="rfc.index.5" href="#rfc.index.5"><b>5</b></a><ul> 4815 <li>500 Internal Server Error (status code) <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.51"><b>4.7.1</b></a>, <a href="#rfc.xref.status.500.2"> 8.2</a></li>4816 <li>501 Not Implemented (status code) <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.52"><b>4.7.2</b></a>, <a href="#rfc.xref.status.501.2"> 8.2</a></li>4817 <li>502 Bad Gateway (status code) <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.53"><b>4.7.3</b></a>, <a href="#rfc.xref.status.502.2"> 8.2</a></li>4818 <li>503 Service Unavailable (status code) <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.54"><b>4.7.4</b></a>, <a href="#rfc.xref.status.503.2"> 8.2</a></li>4819 <li>504 Gateway Timeout (status code) <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.55"><b>4.7.5</b></a>, <a href="#rfc.xref.status.504.2"> 8.2</a></li>4820 <li>505 HTTP Version Not Supported (status code) <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.56"><b>4.7.6</b></a>, <a href="#rfc.xref.status.505.2"> 8.2</a></li>4808 <li>500 Internal Server Error (status code) <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.51"><b>4.7.1</b></a>, <a href="#rfc.xref.status.500.2">10.2</a></li> 4809 <li>501 Not Implemented (status code) <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.52"><b>4.7.2</b></a>, <a href="#rfc.xref.status.501.2">10.2</a></li> 4810 <li>502 Bad Gateway (status code) <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.53"><b>4.7.3</b></a>, <a href="#rfc.xref.status.502.2">10.2</a></li> 4811 <li>503 Service Unavailable (status code) <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.54"><b>4.7.4</b></a>, <a href="#rfc.xref.status.503.2">10.2</a></li> 4812 <li>504 Gateway Timeout (status code) <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.55"><b>4.7.5</b></a>, <a href="#rfc.xref.status.504.2">10.2</a></li> 4813 <li>505 HTTP Version Not Supported (status code) <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.56"><b>4.7.6</b></a>, <a href="#rfc.xref.status.505.2">10.2</a></li> 4821 4814 </ul> 4822 4815 </li> 4823 4816 <li><a id="rfc.index.A" href="#rfc.index.A"><b>A</b></a><ul> 4824 <li>Accept header field <a href="#rfc.xref.header.accept.1">3.2</a>, <a href="#rfc.xref.header.accept.2"> 6.5</a>, <a href="#rfc.iref.a.1"><b>7.1</b></a>, <a href="#rfc.xref.header.accept.3">8.3</a>, <a href="#rfc.xref.header.accept.4">F.3.1</a></li>4825 <li>Accept-Charset header field <a href="#rfc.xref.header.accept-charset.1">3.2</a>, <a href="#rfc. iref.a.2"><b>7.2</b></a>, <a href="#rfc.xref.header.accept-charset.2">8.3</a>, <a href="#rfc.xref.header.accept-charset.3">C</a>, <a href="#rfc.xref.header.accept-charset.4">F.3.1</a></li>4826 <li>Accept-Encoding header field <a href="#rfc.xref.header.accept-encoding.1">3.2</a>, <a href="#rfc.xref.header.accept-encoding.2"> 6.4</a>, <a href="#rfc.iref.a.3"><b>7.3</b></a>, <a href="#rfc.xref.header.accept-encoding.3">8.3</a>, <a href="#rfc.xref.header.accept-encoding.4">8.4</a>, <a href="#rfc.xref.header.accept-encoding.5">F.3.1</a></li>4827 <li>Accept-Language header field <a href="#rfc.xref.header.accept-language.1">3.2</a>, <a href="#rfc. iref.a.4"><b>7.4</b></a>, <a href="#rfc.xref.header.accept-language.2">8.3</a>, <a href="#rfc.xref.header.accept-language.3">F.3.1</a></li>4828 <li>Allow header field <a href="#rfc.xref.header.allow.1">2</a>, <a href="#rfc.xref.header.allow.2">3.3</a>, <a href="#rfc.iref.a.5"><b> 7.5</b></a>, <a href="#rfc.xref.header.allow.3">8.3</a>, <a href="#rfc.xref.header.allow.4">C</a></li>4817 <li>Accept header field <a href="#rfc.xref.header.accept.1">3.2</a>, <a href="#rfc.xref.header.accept.2">5.5</a>, <a href="#rfc.xref.header.accept.3">8.1</a>, <a href="#rfc.iref.a.1"><b>9.1</b></a>, <a href="#rfc.xref.header.accept.4">10.3</a></li> 4818 <li>Accept-Charset header field <a href="#rfc.xref.header.accept-charset.1">3.2</a>, <a href="#rfc.xref.header.accept-charset.2">8.1</a>, <a href="#rfc.iref.a.2"><b>9.2</b></a>, <a href="#rfc.xref.header.accept-charset.3">10.3</a>, <a href="#rfc.xref.header.accept-charset.4">C</a></li> 4819 <li>Accept-Encoding header field <a href="#rfc.xref.header.accept-encoding.1">3.2</a>, <a href="#rfc.xref.header.accept-encoding.2">5.4</a>, <a href="#rfc.xref.header.accept-encoding.3">8.1</a>, <a href="#rfc.iref.a.3"><b>9.3</b></a>, <a href="#rfc.xref.header.accept-encoding.4">10.3</a>, <a href="#rfc.xref.header.accept-encoding.5">10.4</a></li> 4820 <li>Accept-Language header field <a href="#rfc.xref.header.accept-language.1">3.2</a>, <a href="#rfc.xref.header.accept-language.2">8.1</a>, <a href="#rfc.iref.a.4"><b>9.4</b></a>, <a href="#rfc.xref.header.accept-language.3">10.3</a></li> 4821 <li>Allow header field <a href="#rfc.xref.header.allow.1">2</a>, <a href="#rfc.xref.header.allow.2">3.3</a>, <a href="#rfc.iref.a.5"><b>9.5</b></a>, <a href="#rfc.xref.header.allow.3">10.3</a>, <a href="#rfc.xref.header.allow.4">C</a></li> 4829 4822 </ul> 4830 4823 </li> … … 4832 4825 <li>Coding Format 4833 4826 <ul> 4834 <li>compress <a href="#rfc.iref.c.4"> 6.4</a></li>4835 <li>deflate <a href="#rfc.iref.c.5"> 6.4</a></li>4836 <li>gzip <a href="#rfc.iref.c.6"> 6.4</a></li>4827 <li>compress <a href="#rfc.iref.c.4">5.4</a></li> 4828 <li>deflate <a href="#rfc.iref.c.5">5.4</a></li> 4829 <li>gzip <a href="#rfc.iref.c.6">5.4</a></li> 4837 4830 </ul> 4838 4831 </li> 4839 <li>compress (Coding Format) <a href="#rfc.iref.c.3"> 6.4</a></li>4840 <li>CONNECT method <a href="#rfc.iref.c.2"><b>2.3.8</b></a>, <a href="#rfc.xref.CONNECT.1"> 8.1</a>, <a href="#rfc.xref.CONNECT.2">C</a></li>4832 <li>compress (Coding Format) <a href="#rfc.iref.c.3">5.4</a></li> 4833 <li>CONNECT method <a href="#rfc.iref.c.2"><b>2.3.8</b></a>, <a href="#rfc.xref.CONNECT.1">10.1</a>, <a href="#rfc.xref.CONNECT.2">C</a></li> 4841 4834 <li>content negotiation <a href="#rfc.iref.c.1">1.1</a></li> 4842 <li>Content-Encoding header field <a href="#rfc.xref.header.content-encoding.1"> 6.4</a>, <a href="#rfc.iref.c.7"><b>7.6</b></a>, <a href="#rfc.xref.header.content-encoding.2">7.6</a>, <a href="#rfc.xref.header.content-encoding.3">8.3</a>, <a href="#rfc.xref.header.content-encoding.4">F.2.1</a></li>4843 <li>Content-Language header field <a href="#rfc.iref.c.8"><b> 7.7</b></a>, <a href="#rfc.xref.header.content-language.1">8.3</a>, <a href="#rfc.xref.header.content-language.2">F.2.1</a></li>4844 <li>Content-Location header field <a href="#rfc.xref.header.content-location.1">2.3.4</a>, <a href="#rfc.iref.c.9"><b> 7.8</b></a>, <a href="#rfc.xref.header.content-location.2">7.13</a>, <a href="#rfc.xref.header.content-location.3">8.3</a>, <a href="#rfc.xref.header.content-location.4">C</a>, <a href="#rfc.xref.header.content-location.5">F.2.1</a></li>4835 <li>Content-Encoding header field <a href="#rfc.xref.header.content-encoding.1">5.4</a>, <a href="#rfc.iref.c.7"><b>9.6</b></a>, <a href="#rfc.xref.header.content-encoding.2">9.6</a>, <a href="#rfc.xref.header.content-encoding.3">10.3</a>, <a href="#rfc.xref.header.content-encoding.4">F.1.1</a></li> 4836 <li>Content-Language header field <a href="#rfc.iref.c.8"><b>9.7</b></a>, <a href="#rfc.xref.header.content-language.1">10.3</a>, <a href="#rfc.xref.header.content-language.2">F.1.1</a></li> 4837 <li>Content-Location header field <a href="#rfc.xref.header.content-location.1">2.3.4</a>, <a href="#rfc.iref.c.9"><b>9.8</b></a>, <a href="#rfc.xref.header.content-location.2">9.13</a>, <a href="#rfc.xref.header.content-location.3">10.3</a>, <a href="#rfc.xref.header.content-location.4">C</a>, <a href="#rfc.xref.header.content-location.5">F.1.1</a></li> 4845 4838 <li>Content-Transfer-Encoding header field <a href="#rfc.iref.c.11">A.5</a>, <a href="#rfc.xref.no.content-transfer-encoding.1">C</a></li> 4846 <li>Content-Type header field <a href="#rfc.xref.header.content-type.1">3.1</a>, <a href="#rfc.xref.header.content-type.2">4</a>, <a href="#rfc.xref.header.content-type.3"> 6.5</a>, <a href="#rfc.iref.c.10"><b>7.9</b></a>, <a href="#rfc.xref.header.content-type.4">8.3</a>, <a href="#rfc.xref.header.content-type.5">F.2.1</a></li>4839 <li>Content-Type header field <a href="#rfc.xref.header.content-type.1">3.1</a>, <a href="#rfc.xref.header.content-type.2">4</a>, <a href="#rfc.xref.header.content-type.3">5.5</a>, <a href="#rfc.iref.c.10"><b>9.9</b></a>, <a href="#rfc.xref.header.content-type.4">10.3</a>, <a href="#rfc.xref.header.content-type.5">F.1.1</a></li> 4847 4840 </ul> 4848 4841 </li> 4849 4842 <li><a id="rfc.index.D" href="#rfc.index.D"><b>D</b></a><ul> 4850 <li>Date header field <a href="#rfc.xref.header.date.1">3.3</a>, <a href="#rfc.iref.d.3"><b> 7.10</b></a>, <a href="#rfc.xref.header.date.2">8.3</a></li>4851 <li>deflate (Coding Format) <a href="#rfc.iref.d.2"> 6.4</a></li>4852 <li>DELETE method <a href="#rfc.iref.d.1"><b>2.3.6</b></a>, <a href="#rfc.xref.DELETE.1"> 8.1</a></li>4853 <li><em>draft-reschke-http-status-308</em> <a href="#rfc.xref.draft-reschke-http-status-308.1">4.5.7</a>, <a href="#draft-reschke-http-status-308"><b>1 1.2</b></a></li>4843 <li>Date header field <a href="#rfc.xref.header.date.1">3.3</a>, <a href="#rfc.iref.d.3"><b>9.10</b></a>, <a href="#rfc.xref.header.date.2">10.3</a></li> 4844 <li>deflate (Coding Format) <a href="#rfc.iref.d.2">5.4</a></li> 4845 <li>DELETE method <a href="#rfc.iref.d.1"><b>2.3.6</b></a>, <a href="#rfc.xref.DELETE.1">10.1</a></li> 4846 <li><em>draft-reschke-http-status-308</em> <a href="#rfc.xref.draft-reschke-http-status-308.1">4.5.7</a>, <a href="#draft-reschke-http-status-308"><b>13.2</b></a></li> 4854 4847 </ul> 4855 4848 </li> 4856 4849 <li><a id="rfc.index.E" href="#rfc.index.E"><b>E</b></a><ul> 4857 <li>Expect header field <a href="#rfc.xref.header.expect.1">3.2</a>, <a href="#rfc.xref.header.expect.2">4.6.14</a>, <a href="#rfc.iref.e.1"><b> 7.11</b></a>, <a href="#rfc.xref.header.expect.3">8.3</a>, <a href="#rfc.xref.header.expect.4">C</a></li>4850 <li>Expect header field <a href="#rfc.xref.header.expect.1">3.2</a>, <a href="#rfc.xref.header.expect.2">4.6.14</a>, <a href="#rfc.iref.e.1"><b>9.11</b></a>, <a href="#rfc.xref.header.expect.3">10.3</a>, <a href="#rfc.xref.header.expect.4">C</a></li> 4858 4851 <li>Expect Values 4859 4852 <ul> 4860 <li>100-continue <a href="#rfc.iref.e.2"><b> 7.11</b></a></li>4853 <li>100-continue <a href="#rfc.iref.e.2"><b>9.11</b></a></li> 4861 4854 </ul> 4862 4855 </li> … … 4864 4857 </li> 4865 4858 <li><a id="rfc.index.F" href="#rfc.index.F"><b>F</b></a><ul> 4866 <li>From header field <a href="#rfc.xref.header.from.1">3.2</a>, <a href="#rfc.iref.f.1"><b> 7.12</b></a>, <a href="#rfc.xref.header.from.2">8.3</a></li>4859 <li>From header field <a href="#rfc.xref.header.from.1">3.2</a>, <a href="#rfc.iref.f.1"><b>9.12</b></a>, <a href="#rfc.xref.header.from.2">10.3</a></li> 4867 4860 </ul> 4868 4861 </li> 4869 4862 <li><a id="rfc.index.G" href="#rfc.index.G"><b>G</b></a><ul> 4870 <li>GET method <a href="#rfc.iref.g.2"><b>2.3.2</b></a>, <a href="#rfc.xref.GET.1"> 8.1</a></li>4863 <li>GET method <a href="#rfc.iref.g.2"><b>2.3.2</b></a>, <a href="#rfc.xref.GET.1">10.1</a></li> 4871 4864 <li><tt>Grammar</tt> 4872 4865 <ul> 4873 <li><tt>Accept</tt> <a href="#rfc.iref.g.31"><b> 7.1</b></a></li>4874 <li><tt>Accept-Charset</tt> <a href="#rfc.iref.g.35"><b> 7.2</b></a></li>4875 <li><tt>Accept-Encoding</tt> <a href="#rfc.iref.g.36"><b> 7.3</b></a></li>4876 <li><tt>accept-ext</tt> <a href="#rfc.iref.g.34"><b> 7.1</b></a></li>4877 <li><tt>Accept-Language</tt> <a href="#rfc.iref.g.38"><b> 7.4</b></a></li>4878 <li><tt>accept-params</tt> <a href="#rfc.iref.g.33"><b> 7.1</b></a></li>4879 <li><tt>Allow</tt> <a href="#rfc.iref.g.40"><b> 7.5</b></a></li>4880 <li><tt>asctime-date</tt> <a href="#rfc.iref.g.18"><b> 6.1</b></a></li>4881 <li><tt>attribute</tt> <a href="#rfc.iref.g.28"><b> 6.5</b></a></li>4882 <li><tt>charset</tt> <a href="#rfc.iref.g.21"><b> 6.3</b></a></li>4883 <li><tt>codings</tt> <a href="#rfc.iref.g.37"><b> 7.3</b></a></li>4884 <li><tt>content-coding</tt> <a href="#rfc.iref.g.22"><b> 6.4</b></a></li>4885 <li><tt>Content-Encoding</tt> <a href="#rfc.iref.g.41"><b> 7.6</b></a></li>4886 <li><tt>Content-Language</tt> <a href="#rfc.iref.g.42"><b> 7.7</b></a></li>4887 <li><tt>Content-Location</tt> <a href="#rfc.iref.g.43"><b> 7.8</b></a></li>4888 <li><tt>Content-Type</tt> <a href="#rfc.iref.g.44"><b> 7.9</b></a></li>4889 <li><tt>Date</tt> <a href="#rfc.iref.g.45"><b> 7.10</b></a></li>4890 <li><tt>date1</tt> <a href="#rfc.iref.g.5"><b> 6.1</b></a></li>4891 <li><tt>day</tt> <a href="#rfc.iref.g.12"><b> 6.1</b></a></li>4892 <li><tt>day-name</tt> <a href="#rfc.iref.g.10"><b> 6.1</b></a></li>4893 <li><tt>day-name-l</tt> <a href="#rfc.iref.g.11"><b> 6.1</b></a></li>4894 <li><tt>delta-seconds</tt> <a href="#rfc.iref.g.56"><b> 7.16</b></a></li>4895 <li><tt>Expect</tt> <a href="#rfc.iref.g.46"><b> 7.11</b></a></li>4896 <li><tt>expect-name</tt> <a href="#rfc.iref.g.50"><b> 7.11</b></a></li>4897 <li><tt>expect-param</tt> <a href="#rfc.iref.g.48"><b> 7.11</b></a></li>4898 <li><tt>expect-value</tt> <a href="#rfc.iref.g.49"><b> 7.11</b></a></li>4899 <li><tt>expectation</tt> <a href="#rfc.iref.g.47"><b> 7.11</b></a></li>4900 <li><tt>From</tt> <a href="#rfc.iref.g.51"><b> 7.12</b></a></li>4901 <li><tt>GMT</tt> <a href="#rfc.iref.g.15"><b> 6.1</b></a></li>4902 <li><tt>hour</tt> <a href="#rfc.iref.g.7"><b> 6.1</b></a></li>4903 <li><tt>HTTP-date</tt> <a href="#rfc.iref.g.3"><b> 6.1</b></a></li>4904 <li><tt>language-range</tt> <a href="#rfc.iref.g.39"><b> 7.4</b></a></li>4905 <li><tt>language-tag</tt> <a href="#rfc.iref.g.30"><b> 6.6</b></a></li>4906 <li><tt>Location</tt> <a href="#rfc.iref.g.52"><b> 7.13</b></a></li>4907 <li><tt>Max-Forwards</tt> <a href="#rfc.iref.g.53"><b> 7.14</b></a></li>4908 <li><tt>media-range</tt> <a href="#rfc.iref.g.32"><b> 7.1</b></a></li>4909 <li><tt>media-type</tt> <a href="#rfc.iref.g.24"><b> 6.5</b></a></li>4866 <li><tt>Accept</tt> <a href="#rfc.iref.g.31"><b>9.1</b></a></li> 4867 <li><tt>Accept-Charset</tt> <a href="#rfc.iref.g.35"><b>9.2</b></a></li> 4868 <li><tt>Accept-Encoding</tt> <a href="#rfc.iref.g.36"><b>9.3</b></a></li> 4869 <li><tt>accept-ext</tt> <a href="#rfc.iref.g.34"><b>9.1</b></a></li> 4870 <li><tt>Accept-Language</tt> <a href="#rfc.iref.g.38"><b>9.4</b></a></li> 4871 <li><tt>accept-params</tt> <a href="#rfc.iref.g.33"><b>9.1</b></a></li> 4872 <li><tt>Allow</tt> <a href="#rfc.iref.g.40"><b>9.5</b></a></li> 4873 <li><tt>asctime-date</tt> <a href="#rfc.iref.g.18"><b>5.1</b></a></li> 4874 <li><tt>attribute</tt> <a href="#rfc.iref.g.28"><b>5.5</b></a></li> 4875 <li><tt>charset</tt> <a href="#rfc.iref.g.21"><b>5.3</b></a></li> 4876 <li><tt>codings</tt> <a href="#rfc.iref.g.37"><b>9.3</b></a></li> 4877 <li><tt>content-coding</tt> <a href="#rfc.iref.g.22"><b>5.4</b></a></li> 4878 <li><tt>Content-Encoding</tt> <a href="#rfc.iref.g.41"><b>9.6</b></a></li> 4879 <li><tt>Content-Language</tt> <a href="#rfc.iref.g.42"><b>9.7</b></a></li> 4880 <li><tt>Content-Location</tt> <a href="#rfc.iref.g.43"><b>9.8</b></a></li> 4881 <li><tt>Content-Type</tt> <a href="#rfc.iref.g.44"><b>9.9</b></a></li> 4882 <li><tt>Date</tt> <a href="#rfc.iref.g.45"><b>9.10</b></a></li> 4883 <li><tt>date1</tt> <a href="#rfc.iref.g.5"><b>5.1</b></a></li> 4884 <li><tt>day</tt> <a href="#rfc.iref.g.12"><b>5.1</b></a></li> 4885 <li><tt>day-name</tt> <a href="#rfc.iref.g.10"><b>5.1</b></a></li> 4886 <li><tt>day-name-l</tt> <a href="#rfc.iref.g.11"><b>5.1</b></a></li> 4887 <li><tt>delta-seconds</tt> <a href="#rfc.iref.g.56"><b>9.16</b></a></li> 4888 <li><tt>Expect</tt> <a href="#rfc.iref.g.46"><b>9.11</b></a></li> 4889 <li><tt>expect-name</tt> <a href="#rfc.iref.g.50"><b>9.11</b></a></li> 4890 <li><tt>expect-param</tt> <a href="#rfc.iref.g.48"><b>9.11</b></a></li> 4891 <li><tt>expect-value</tt> <a href="#rfc.iref.g.49"><b>9.11</b></a></li> 4892 <li><tt>expectation</tt> <a href="#rfc.iref.g.47"><b>9.11</b></a></li> 4893 <li><tt>From</tt> <a href="#rfc.iref.g.51"><b>9.12</b></a></li> 4894 <li><tt>GMT</tt> <a href="#rfc.iref.g.15"><b>5.1</b></a></li> 4895 <li><tt>hour</tt> <a href="#rfc.iref.g.7"><b>5.1</b></a></li> 4896 <li><tt>HTTP-date</tt> <a href="#rfc.iref.g.3"><b>5.1</b></a></li> 4897 <li><tt>language-range</tt> <a href="#rfc.iref.g.39"><b>9.4</b></a></li> 4898 <li><tt>language-tag</tt> <a href="#rfc.iref.g.30"><b>5.6</b></a></li> 4899 <li><tt>Location</tt> <a href="#rfc.iref.g.52"><b>9.13</b></a></li> 4900 <li><tt>Max-Forwards</tt> <a href="#rfc.iref.g.53"><b>9.14</b></a></li> 4901 <li><tt>media-range</tt> <a href="#rfc.iref.g.32"><b>9.1</b></a></li> 4902 <li><tt>media-type</tt> <a href="#rfc.iref.g.24"><b>5.5</b></a></li> 4910 4903 <li><tt>method</tt> <a href="#rfc.iref.g.1"><b>2</b></a></li> 4911 4904 <li><tt>MIME-Version</tt> <a href="#rfc.iref.g.59"><b>A.1</b></a></li> 4912 <li><tt>minute</tt> <a href="#rfc.iref.g.8"><b> 6.1</b></a></li>4913 <li><tt>month</tt> <a href="#rfc.iref.g.13"><b> 6.1</b></a></li>4914 <li><tt>obs-date</tt> <a href="#rfc.iref.g.16"><b> 6.1</b></a></li>4915 <li><tt>parameter</tt> <a href="#rfc.iref.g.27"><b> 6.5</b></a></li>4916 <li><tt>product</tt> <a href="#rfc.iref.g.19"><b> 6.2</b></a></li>4917 <li><tt>product-version</tt> <a href="#rfc.iref.g.20"><b> 6.2</b></a></li>4918 <li><tt>Referer</tt> <a href="#rfc.iref.g.54"><b> 7.15</b></a></li>4919 <li><tt>Retry-After</tt> <a href="#rfc.iref.g.55"><b> 7.16</b></a></li>4920 <li><tt>rfc1123-date</tt> <a href="#rfc.iref.g.4"><b> 6.1</b></a></li>4921 <li><tt>rfc850-date</tt> <a href="#rfc.iref.g.17"><b> 6.1</b></a></li>4922 <li><tt>second</tt> <a href="#rfc.iref.g.9"><b> 6.1</b></a></li>4923 <li><tt>Server</tt> <a href="#rfc.iref.g.57"><b> 7.17</b></a></li>4924 <li><tt>subtype</tt> <a href="#rfc.iref.g.26"><b> 6.5</b></a></li>4925 <li><tt>time-of-day</tt> <a href="#rfc.iref.g.6"><b> 6.1</b></a></li>4926 <li><tt>type</tt> <a href="#rfc.iref.g.25"><b> 6.5</b></a></li>4927 <li><tt>User-Agent</tt> <a href="#rfc.iref.g.58"><b> 7.18</b></a></li>4928 <li><tt>value</tt> <a href="#rfc.iref.g.29"><b> 6.5</b></a></li>4929 <li><tt>year</tt> <a href="#rfc.iref.g.14"><b> 6.1</b></a></li>4905 <li><tt>minute</tt> <a href="#rfc.iref.g.8"><b>5.1</b></a></li> 4906 <li><tt>month</tt> <a href="#rfc.iref.g.13"><b>5.1</b></a></li> 4907 <li><tt>obs-date</tt> <a href="#rfc.iref.g.16"><b>5.1</b></a></li> 4908 <li><tt>parameter</tt> <a href="#rfc.iref.g.27"><b>5.5</b></a></li> 4909 <li><tt>product</tt> <a href="#rfc.iref.g.19"><b>5.2</b></a></li> 4910 <li><tt>product-version</tt> <a href="#rfc.iref.g.20"><b>5.2</b></a></li> 4911 <li><tt>Referer</tt> <a href="#rfc.iref.g.54"><b>9.15</b></a></li> 4912 <li><tt>Retry-After</tt> <a href="#rfc.iref.g.55"><b>9.16</b></a></li> 4913 <li><tt>rfc1123-date</tt> <a href="#rfc.iref.g.4"><b>5.1</b></a></li> 4914 <li><tt>rfc850-date</tt> <a href="#rfc.iref.g.17"><b>5.1</b></a></li> 4915 <li><tt>second</tt> <a href="#rfc.iref.g.9"><b>5.1</b></a></li> 4916 <li><tt>Server</tt> <a href="#rfc.iref.g.57"><b>9.17</b></a></li> 4917 <li><tt>subtype</tt> <a href="#rfc.iref.g.26"><b>5.5</b></a></li> 4918 <li><tt>time-of-day</tt> <a href="#rfc.iref.g.6"><b>5.1</b></a></li> 4919 <li><tt>type</tt> <a href="#rfc.iref.g.25"><b>5.5</b></a></li> 4920 <li><tt>User-Agent</tt> <a href="#rfc.iref.g.58"><b>9.18</b></a></li> 4921 <li><tt>value</tt> <a href="#rfc.iref.g.29"><b>5.5</b></a></li> 4922 <li><tt>year</tt> <a href="#rfc.iref.g.14"><b>5.1</b></a></li> 4930 4923 </ul> 4931 4924 </li> 4932 <li>gzip (Coding Format) <a href="#rfc.iref.g.23"> 6.4</a></li>4925 <li>gzip (Coding Format) <a href="#rfc.iref.g.23">5.4</a></li> 4933 4926 </ul> 4934 4927 </li> 4935 4928 <li><a id="rfc.index.H" href="#rfc.index.H"><b>H</b></a><ul> 4936 <li>HEAD method <a href="#rfc.iref.h.1"><b>2.3.3</b></a>, <a href="#rfc.xref.HEAD.1"> 8.1</a></li>4929 <li>HEAD method <a href="#rfc.iref.h.1"><b>2.3.3</b></a>, <a href="#rfc.xref.HEAD.1">10.1</a></li> 4937 4930 <li>Header Fields 4938 4931 <ul> 4939 <li>Accept <a href="#rfc.xref.header.accept.1">3.2</a>, <a href="#rfc.xref.header.accept.2"> 6.5</a>, <a href="#rfc.iref.h.2"><b>7.1</b></a>, <a href="#rfc.xref.header.accept.3">8.3</a>, <a href="#rfc.xref.header.accept.4">F.3.1</a></li>4940 <li>Accept-Charset <a href="#rfc.xref.header.accept-charset.1">3.2</a>, <a href="#rfc. iref.h.3"><b>7.2</b></a>, <a href="#rfc.xref.header.accept-charset.2">8.3</a>, <a href="#rfc.xref.header.accept-charset.3">C</a>, <a href="#rfc.xref.header.accept-charset.4">F.3.1</a></li>4941 <li>Accept-Encoding <a href="#rfc.xref.header.accept-encoding.1">3.2</a>, <a href="#rfc.xref.header.accept-encoding.2"> 6.4</a>, <a href="#rfc.iref.h.4"><b>7.3</b></a>, <a href="#rfc.xref.header.accept-encoding.3">8.3</a>, <a href="#rfc.xref.header.accept-encoding.4">8.4</a>, <a href="#rfc.xref.header.accept-encoding.5">F.3.1</a></li>4942 <li>Accept-Language <a href="#rfc.xref.header.accept-language.1">3.2</a>, <a href="#rfc. iref.h.5"><b>7.4</b></a>, <a href="#rfc.xref.header.accept-language.2">8.3</a>, <a href="#rfc.xref.header.accept-language.3">F.3.1</a></li>4943 <li>Allow <a href="#rfc.xref.header.allow.1">2</a>, <a href="#rfc.xref.header.allow.2">3.3</a>, <a href="#rfc.iref.h.6"><b> 7.5</b></a>, <a href="#rfc.xref.header.allow.3">8.3</a>, <a href="#rfc.xref.header.allow.4">C</a></li>4944 <li>Content-Encoding <a href="#rfc.xref.header.content-encoding.1"> 6.4</a>, <a href="#rfc.iref.h.7"><b>7.6</b></a>, <a href="#rfc.xref.header.content-encoding.2">7.6</a>, <a href="#rfc.xref.header.content-encoding.3">8.3</a>, <a href="#rfc.xref.header.content-encoding.4">F.2.1</a></li>4945 <li>Content-Language <a href="#rfc.iref.h.8"><b> 7.7</b></a>, <a href="#rfc.xref.header.content-language.1">8.3</a>, <a href="#rfc.xref.header.content-language.2">F.2.1</a></li>4946 <li>Content-Location <a href="#rfc.xref.header.content-location.1">2.3.4</a>, <a href="#rfc.iref.h.9"><b> 7.8</b></a>, <a href="#rfc.xref.header.content-location.2">7.13</a>, <a href="#rfc.xref.header.content-location.3">8.3</a>, <a href="#rfc.xref.header.content-location.4">C</a>, <a href="#rfc.xref.header.content-location.5">F.2.1</a></li>4932 <li>Accept <a href="#rfc.xref.header.accept.1">3.2</a>, <a href="#rfc.xref.header.accept.2">5.5</a>, <a href="#rfc.xref.header.accept.3">8.1</a>, <a href="#rfc.iref.h.2"><b>9.1</b></a>, <a href="#rfc.xref.header.accept.4">10.3</a></li> 4933 <li>Accept-Charset <a href="#rfc.xref.header.accept-charset.1">3.2</a>, <a href="#rfc.xref.header.accept-charset.2">8.1</a>, <a href="#rfc.iref.h.3"><b>9.2</b></a>, <a href="#rfc.xref.header.accept-charset.3">10.3</a>, <a href="#rfc.xref.header.accept-charset.4">C</a></li> 4934 <li>Accept-Encoding <a href="#rfc.xref.header.accept-encoding.1">3.2</a>, <a href="#rfc.xref.header.accept-encoding.2">5.4</a>, <a href="#rfc.xref.header.accept-encoding.3">8.1</a>, <a href="#rfc.iref.h.4"><b>9.3</b></a>, <a href="#rfc.xref.header.accept-encoding.4">10.3</a>, <a href="#rfc.xref.header.accept-encoding.5">10.4</a></li> 4935 <li>Accept-Language <a href="#rfc.xref.header.accept-language.1">3.2</a>, <a href="#rfc.xref.header.accept-language.2">8.1</a>, <a href="#rfc.iref.h.5"><b>9.4</b></a>, <a href="#rfc.xref.header.accept-language.3">10.3</a></li> 4936 <li>Allow <a href="#rfc.xref.header.allow.1">2</a>, <a href="#rfc.xref.header.allow.2">3.3</a>, <a href="#rfc.iref.h.6"><b>9.5</b></a>, <a href="#rfc.xref.header.allow.3">10.3</a>, <a href="#rfc.xref.header.allow.4">C</a></li> 4937 <li>Content-Encoding <a href="#rfc.xref.header.content-encoding.1">5.4</a>, <a href="#rfc.iref.h.7"><b>9.6</b></a>, <a href="#rfc.xref.header.content-encoding.2">9.6</a>, <a href="#rfc.xref.header.content-encoding.3">10.3</a>, <a href="#rfc.xref.header.content-encoding.4">F.1.1</a></li> 4938 <li>Content-Language <a href="#rfc.iref.h.8"><b>9.7</b></a>, <a href="#rfc.xref.header.content-language.1">10.3</a>, <a href="#rfc.xref.header.content-language.2">F.1.1</a></li> 4939 <li>Content-Location <a href="#rfc.xref.header.content-location.1">2.3.4</a>, <a href="#rfc.iref.h.9"><b>9.8</b></a>, <a href="#rfc.xref.header.content-location.2">9.13</a>, <a href="#rfc.xref.header.content-location.3">10.3</a>, <a href="#rfc.xref.header.content-location.4">C</a>, <a href="#rfc.xref.header.content-location.5">F.1.1</a></li> 4947 4940 <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> 4948 <li>Content-Type <a href="#rfc.xref.header.content-type.1">3.1</a>, <a href="#rfc.xref.header.content-type.2">4</a>, <a href="#rfc.xref.header.content-type.3"> 6.5</a>, <a href="#rfc.iref.h.10"><b>7.9</b></a>, <a href="#rfc.xref.header.content-type.4">8.3</a>, <a href="#rfc.xref.header.content-type.5">F.2.1</a></li>4949 <li>Date <a href="#rfc.xref.header.date.1">3.3</a>, <a href="#rfc.iref.h.11"><b> 7.10</b></a>, <a href="#rfc.xref.header.date.2">8.3</a></li>4950 <li>Expect <a href="#rfc.xref.header.expect.1">3.2</a>, <a href="#rfc.xref.header.expect.2">4.6.14</a>, <a href="#rfc.iref.h.12"><b> 7.11</b></a>, <a href="#rfc.xref.header.expect.3">8.3</a>, <a href="#rfc.xref.header.expect.4">C</a></li>4951 <li>From <a href="#rfc.xref.header.from.1">3.2</a>, <a href="#rfc.iref.h.13"><b> 7.12</b></a>, <a href="#rfc.xref.header.from.2">8.3</a></li>4952 <li>Location <a href="#rfc.xref.header.location.1">2.3.4</a>, <a href="#rfc.xref.header.location.2">3.3</a>, <a href="#rfc.xref.header.location.3">4.5</a>, <a href="#rfc.iref.h.14"><b> 7.13</b></a>, <a href="#rfc.xref.header.location.4">8.3</a>, <a href="#rfc.xref.header.location.5">C</a></li>4953 <li>Max-Forwards <a href="#rfc.xref.header.max-forwards.1">2.3.1</a>, <a href="#rfc.xref.header.max-forwards.2">2.3.7</a>, <a href="#rfc.xref.header.max-forwards.3">3.2</a>, <a href="#rfc.iref.h.15"><b> 7.14</b></a>, <a href="#rfc.xref.header.max-forwards.4">8.3</a>, <a href="#rfc.xref.header.max-forwards.5">C</a></li>4954 <li>MIME-Version <a href="#rfc.xref.mime-version.1"> 8.3</a>, <a href="#rfc.iref.h.20"><b>A.1</b></a></li>4955 <li>Referer <a href="#rfc.xref.header.referer.1">3.2</a>, <a href="#rfc.iref.h.16"><b> 7.15</b></a>, <a href="#rfc.xref.header.referer.2">8.3</a>, <a href="#rfc.xref.header.referer.3">C</a></li>4956 <li>Retry-After <a href="#rfc.xref.header.retry-after.1">3.3</a>, <a href="#rfc.xref.header.retry-after.2">4.7.4</a>, <a href="#rfc.iref.h.17"><b> 7.16</b></a>, <a href="#rfc.xref.header.retry-after.3">8.3</a></li>4957 <li>Server <a href="#rfc.xref.header.server.1">3.3</a>, <a href="#rfc.iref.h.18"><b> 7.17</b></a>, <a href="#rfc.xref.header.server.2">8.3</a>, <a href="#rfc.xref.header.server.3">9.1</a>, <a href="#rfc.xref.header.server.4">C</a></li>4958 <li>User-Agent <a href="#rfc.xref.header.user-agent.1">3.2</a>, <a href="#rfc. iref.h.19"><b>7.18</b></a>, <a href="#rfc.xref.header.user-agent.2">8.3</a>, <a href="#rfc.xref.header.user-agent.3">9.1</a>, <a href="#rfc.xref.header.user-agent.4">F.3.1</a></li>4941 <li>Content-Type <a href="#rfc.xref.header.content-type.1">3.1</a>, <a href="#rfc.xref.header.content-type.2">4</a>, <a href="#rfc.xref.header.content-type.3">5.5</a>, <a href="#rfc.iref.h.10"><b>9.9</b></a>, <a href="#rfc.xref.header.content-type.4">10.3</a>, <a href="#rfc.xref.header.content-type.5">F.1.1</a></li> 4942 <li>Date <a href="#rfc.xref.header.date.1">3.3</a>, <a href="#rfc.iref.h.11"><b>9.10</b></a>, <a href="#rfc.xref.header.date.2">10.3</a></li> 4943 <li>Expect <a href="#rfc.xref.header.expect.1">3.2</a>, <a href="#rfc.xref.header.expect.2">4.6.14</a>, <a href="#rfc.iref.h.12"><b>9.11</b></a>, <a href="#rfc.xref.header.expect.3">10.3</a>, <a href="#rfc.xref.header.expect.4">C</a></li> 4944 <li>From <a href="#rfc.xref.header.from.1">3.2</a>, <a href="#rfc.iref.h.13"><b>9.12</b></a>, <a href="#rfc.xref.header.from.2">10.3</a></li> 4945 <li>Location <a href="#rfc.xref.header.location.1">2.3.4</a>, <a href="#rfc.xref.header.location.2">3.3</a>, <a href="#rfc.xref.header.location.3">4.5</a>, <a href="#rfc.iref.h.14"><b>9.13</b></a>, <a href="#rfc.xref.header.location.4">10.3</a>, <a href="#rfc.xref.header.location.5">C</a></li> 4946 <li>Max-Forwards <a href="#rfc.xref.header.max-forwards.1">2.3.1</a>, <a href="#rfc.xref.header.max-forwards.2">2.3.7</a>, <a href="#rfc.xref.header.max-forwards.3">3.2</a>, <a href="#rfc.iref.h.15"><b>9.14</b></a>, <a href="#rfc.xref.header.max-forwards.4">10.3</a>, <a href="#rfc.xref.header.max-forwards.5">C</a></li> 4947 <li>MIME-Version <a href="#rfc.xref.mime-version.1">10.3</a>, <a href="#rfc.iref.h.20"><b>A.1</b></a></li> 4948 <li>Referer <a href="#rfc.xref.header.referer.1">3.2</a>, <a href="#rfc.iref.h.16"><b>9.15</b></a>, <a href="#rfc.xref.header.referer.2">10.3</a>, <a href="#rfc.xref.header.referer.3">C</a></li> 4949 <li>Retry-After <a href="#rfc.xref.header.retry-after.1">3.3</a>, <a href="#rfc.xref.header.retry-after.2">4.7.4</a>, <a href="#rfc.iref.h.17"><b>9.16</b></a>, <a href="#rfc.xref.header.retry-after.3">10.3</a></li> 4950 <li>Server <a href="#rfc.xref.header.server.1">3.3</a>, <a href="#rfc.iref.h.18"><b>9.17</b></a>, <a href="#rfc.xref.header.server.2">10.3</a>, <a href="#rfc.xref.header.server.3">11.1</a>, <a href="#rfc.xref.header.server.4">C</a></li> 4951 <li>User-Agent <a href="#rfc.xref.header.user-agent.1">3.2</a>, <a href="#rfc.xref.header.user-agent.2">8.1</a>, <a href="#rfc.iref.h.19"><b>9.18</b></a>, <a href="#rfc.xref.header.user-agent.3">10.3</a>, <a href="#rfc.xref.header.user-agent.4">11.1</a></li> 4959 4952 </ul> 4960 4953 </li> … … 4966 4959 </li> 4967 4960 <li><a id="rfc.index.L" href="#rfc.index.L"><b>L</b></a><ul> 4968 <li>Location header field <a href="#rfc.xref.header.location.1">2.3.4</a>, <a href="#rfc.xref.header.location.2">3.3</a>, <a href="#rfc.xref.header.location.3">4.5</a>, <a href="#rfc.iref.l.1"><b> 7.13</b></a>, <a href="#rfc.xref.header.location.4">8.3</a>, <a href="#rfc.xref.header.location.5">C</a></li>4961 <li>Location header field <a href="#rfc.xref.header.location.1">2.3.4</a>, <a href="#rfc.xref.header.location.2">3.3</a>, <a href="#rfc.xref.header.location.3">4.5</a>, <a href="#rfc.iref.l.1"><b>9.13</b></a>, <a href="#rfc.xref.header.location.4">10.3</a>, <a href="#rfc.xref.header.location.5">C</a></li> 4969 4962 </ul> 4970 4963 </li> 4971 4964 <li><a id="rfc.index.M" href="#rfc.index.M"><b>M</b></a><ul> 4972 <li>Max-Forwards header field <a href="#rfc.xref.header.max-forwards.1">2.3.1</a>, <a href="#rfc.xref.header.max-forwards.2">2.3.7</a>, <a href="#rfc.xref.header.max-forwards.3">3.2</a>, <a href="#rfc.iref.m.9"><b> 7.14</b></a>, <a href="#rfc.xref.header.max-forwards.4">8.3</a>, <a href="#rfc.xref.header.max-forwards.5">C</a></li>4965 <li>Max-Forwards header field <a href="#rfc.xref.header.max-forwards.1">2.3.1</a>, <a href="#rfc.xref.header.max-forwards.2">2.3.7</a>, <a href="#rfc.xref.header.max-forwards.3">3.2</a>, <a href="#rfc.iref.m.9"><b>9.14</b></a>, <a href="#rfc.xref.header.max-forwards.4">10.3</a>, <a href="#rfc.xref.header.max-forwards.5">C</a></li> 4973 4966 <li>Methods 4974 4967 <ul> 4975 <li>CONNECT <a href="#rfc.iref.m.8"><b>2.3.8</b></a>, <a href="#rfc.xref.CONNECT.1"> 8.1</a>, <a href="#rfc.xref.CONNECT.2">C</a></li>4976 <li>DELETE <a href="#rfc.iref.m.6"><b>2.3.6</b></a>, <a href="#rfc.xref.DELETE.1"> 8.1</a></li>4977 <li>GET <a href="#rfc.iref.m.2"><b>2.3.2</b></a>, <a href="#rfc.xref.GET.1"> 8.1</a></li>4978 <li>HEAD <a href="#rfc.iref.m.3"><b>2.3.3</b></a>, <a href="#rfc.xref.HEAD.1"> 8.1</a></li>4979 <li>OPTIONS <a href="#rfc.iref.m.1"><b>2.3.1</b></a>, <a href="#rfc.xref.OPTIONS.1"> 7.14</a>, <a href="#rfc.xref.OPTIONS.2">8.1</a></li>4980 <li>POST <a href="#rfc.iref.m.4"><b>2.3.4</b></a>, <a href="#rfc.xref.POST.1"> 8.1</a>, <a href="#rfc.xref.POST.2">C</a></li>4981 <li>PUT <a href="#rfc.iref.m.5"><b>2.3.5</b></a>, <a href="#rfc.xref.PUT.1"> 8.1</a>, <a href="#rfc.xref.PUT.2">C</a></li>4982 <li>TRACE <a href="#rfc.iref.m.7"><b>2.3.7</b></a>, <a href="#rfc.xref.TRACE.1"> 7.14</a>, <a href="#rfc.xref.TRACE.2">8.1</a>, <a href="#rfc.xref.TRACE.3">9.1</a></li>4968 <li>CONNECT <a href="#rfc.iref.m.8"><b>2.3.8</b></a>, <a href="#rfc.xref.CONNECT.1">10.1</a>, <a href="#rfc.xref.CONNECT.2">C</a></li> 4969 <li>DELETE <a href="#rfc.iref.m.6"><b>2.3.6</b></a>, <a href="#rfc.xref.DELETE.1">10.1</a></li> 4970 <li>GET <a href="#rfc.iref.m.2"><b>2.3.2</b></a>, <a href="#rfc.xref.GET.1">10.1</a></li> 4971 <li>HEAD <a href="#rfc.iref.m.3"><b>2.3.3</b></a>, <a href="#rfc.xref.HEAD.1">10.1</a></li> 4972 <li>OPTIONS <a href="#rfc.iref.m.1"><b>2.3.1</b></a>, <a href="#rfc.xref.OPTIONS.1">9.14</a>, <a href="#rfc.xref.OPTIONS.2">10.1</a></li> 4973 <li>POST <a href="#rfc.iref.m.4"><b>2.3.4</b></a>, <a href="#rfc.xref.POST.1">10.1</a>, <a href="#rfc.xref.POST.2">C</a></li> 4974 <li>PUT <a href="#rfc.iref.m.5"><b>2.3.5</b></a>, <a href="#rfc.xref.PUT.1">10.1</a>, <a href="#rfc.xref.PUT.2">C</a></li> 4975 <li>TRACE <a href="#rfc.iref.m.7"><b>2.3.7</b></a>, <a href="#rfc.xref.TRACE.1">9.14</a>, <a href="#rfc.xref.TRACE.2">10.1</a>, <a href="#rfc.xref.TRACE.3">11.1</a></li> 4983 4976 </ul> 4984 4977 </li> 4985 <li>MIME-Version header field <a href="#rfc.xref.mime-version.1"> 8.3</a>, <a href="#rfc.iref.m.10"><b>A.1</b></a></li>4978 <li>MIME-Version header field <a href="#rfc.xref.mime-version.1">10.3</a>, <a href="#rfc.iref.m.10"><b>A.1</b></a></li> 4986 4979 </ul> 4987 4980 </li> 4988 4981 <li><a id="rfc.index.O" href="#rfc.index.O"><b>O</b></a><ul> 4989 <li>OPTIONS method <a href="#rfc.iref.o.1"><b>2.3.1</b></a>, <a href="#rfc.xref.OPTIONS.1"> 7.14</a>, <a href="#rfc.xref.OPTIONS.2">8.1</a></li>4982 <li>OPTIONS method <a href="#rfc.iref.o.1"><b>2.3.1</b></a>, <a href="#rfc.xref.OPTIONS.1">9.14</a>, <a href="#rfc.xref.OPTIONS.2">10.1</a></li> 4990 4983 </ul> 4991 4984 </li> 4992 4985 <li><a id="rfc.index.P" href="#rfc.index.P"><b>P</b></a><ul> 4993 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1</a>, <a href="#rfc.xref.Part1.2">1.2</a>, <a href="#rfc.xref.Part1.3">1.3</a>, <a href="#rfc.xref.Part1.4">1.3.1</a>, <a href="#rfc.xref.Part1.5">1.3.1</a>, <a href="#rfc.xref.Part1.6">1.3.1</a>, <a href="#rfc.xref.Part1.7">1.3.1</a>, <a href="#rfc.xref.Part1.8">1.3.1</a>, <a href="#rfc.xref.Part1.9">1.3.1</a>, <a href="#rfc.xref.Part1.10">1.3.1</a>, <a href="#rfc.xref.Part1.11">1.3.1</a>, <a href="#rfc.xref.Part1.12">1.3.2</a>, <a href="#rfc.xref.Part1.13">1.3.2</a>, <a href="#rfc.xref.Part1.14">1.3.2</a>, <a href="#rfc.xref.Part1.15">1.3.2</a>, <a href="#rfc.xref.Part1.16">2</a>, <a href="#rfc.xref.Part1.17">2.2.1</a>, <a href="#rfc.xref.Part1.18">2.3.1</a>, <a href="#rfc.xref.Part1.19">2.3.7</a>, <a href="#rfc.xref.Part1.20">2.3.7</a>, <a href="#rfc.xref.Part1.21">2.3.8</a>, <a href="#rfc.xref.Part1.22">3</a>, <a href="#rfc.xref.Part1.23">3.1</a>, <a href="#rfc.xref.Part1.24">3.1</a>, <a href="#rfc.xref.Part1.25">3.1</a>, <a href="#rfc.xref.Part1.26">3.1</a>, <a href="#rfc.xref.Part1.27">3.1</a>, <a href="#rfc.xref.Part1.28">3.2</a>, <a href="#rfc.xref.Part1.29">3.2</a>, <a href="#rfc.xref.Part1.30">3.3</a>, <a href="#rfc.xref.Part1.31">4.3.1</a>, <a href="#rfc.xref.Part1.32">4.3.2</a>, <a href="#rfc.xref.Part1.33">4.4.4</a>, <a href="#rfc.xref.Part1.34">4.4.6</a>, <a href="#rfc.xref.Part1.35">4.6.15</a>, <a href="#rfc.xref.Part1.36">4.7.6</a>, <a href="#rfc.xref.Part1.37">5 </a>, <a href="#rfc.xref.Part1.38">5.1</a>, <a href="#rfc.xref.Part1.39">6.4</a>, <a href="#rfc.xref.Part1.40">6.4</a>, <a href="#rfc.xref.Part1.41">6.4</a>, <a href="#rfc.xref.Part1.42">6.4.1</a>, <a href="#rfc.xref.Part1.43">6.4.1</a>, <a href="#rfc.xref.Part1.44">7.1</a>, <a href="#rfc.xref.Part1.45">7.3</a>, <a href="#rfc.xref.Part1.46">7.8</a>, <a href="#rfc.xref.Part1.47">7.11</a>, <a href="#rfc.xref.Part1.48">7.17</a>, <a href="#rfc.xref.Part1.49">7.17</a>, <a href="#rfc.xref.Part1.50">7.18</a>, <a href="#rfc.xref.Part1.51">8.4</a>, <a href="#rfc.xref.Part1.52">8.4</a>, <a href="#rfc.xref.Part1.53">8.4</a>, <a href="#rfc.xref.Part1.54">10</a>, <a href="#Part1"><b>11.1</b></a>, <a href="#rfc.xref.Part1.55">A.6</a>, <a href="#rfc.xref.Part1.56">C</a>, <a href="#rfc.xref.Part1.57">F.1.1</a>, <a href="#rfc.xref.Part1.58">F.1.2</a>, <a href="#rfc.xref.Part1.59">F.3.1</a><ul>4986 <li><em>Part1</em> <a href="#rfc.xref.Part1.1">1</a>, <a href="#rfc.xref.Part1.2">1.2</a>, <a href="#rfc.xref.Part1.3">1.3</a>, <a href="#rfc.xref.Part1.4">1.3.1</a>, <a href="#rfc.xref.Part1.5">1.3.1</a>, <a href="#rfc.xref.Part1.6">1.3.1</a>, <a href="#rfc.xref.Part1.7">1.3.1</a>, <a href="#rfc.xref.Part1.8">1.3.1</a>, <a href="#rfc.xref.Part1.9">1.3.1</a>, <a href="#rfc.xref.Part1.10">1.3.1</a>, <a href="#rfc.xref.Part1.11">1.3.1</a>, <a href="#rfc.xref.Part1.12">1.3.2</a>, <a href="#rfc.xref.Part1.13">1.3.2</a>, <a href="#rfc.xref.Part1.14">1.3.2</a>, <a href="#rfc.xref.Part1.15">1.3.2</a>, <a href="#rfc.xref.Part1.16">2</a>, <a href="#rfc.xref.Part1.17">2.2.1</a>, <a href="#rfc.xref.Part1.18">2.3.1</a>, <a href="#rfc.xref.Part1.19">2.3.7</a>, <a href="#rfc.xref.Part1.20">2.3.7</a>, <a href="#rfc.xref.Part1.21">2.3.8</a>, <a href="#rfc.xref.Part1.22">3</a>, <a href="#rfc.xref.Part1.23">3.1</a>, <a href="#rfc.xref.Part1.24">3.1</a>, <a href="#rfc.xref.Part1.25">3.1</a>, <a href="#rfc.xref.Part1.26">3.1</a>, <a href="#rfc.xref.Part1.27">3.1</a>, <a href="#rfc.xref.Part1.28">3.2</a>, <a href="#rfc.xref.Part1.29">3.2</a>, <a href="#rfc.xref.Part1.30">3.3</a>, <a href="#rfc.xref.Part1.31">4.3.1</a>, <a href="#rfc.xref.Part1.32">4.3.2</a>, <a href="#rfc.xref.Part1.33">4.4.4</a>, <a href="#rfc.xref.Part1.34">4.4.6</a>, <a href="#rfc.xref.Part1.35">4.6.15</a>, <a href="#rfc.xref.Part1.36">4.7.6</a>, <a href="#rfc.xref.Part1.37">5.4</a>, <a href="#rfc.xref.Part1.38">5.4</a>, <a href="#rfc.xref.Part1.39">5.4</a>, <a href="#rfc.xref.Part1.40">5.4.1</a>, <a href="#rfc.xref.Part1.41">5.4.1</a>, <a href="#rfc.xref.Part1.42">6.1</a>, <a href="#rfc.xref.Part1.43">6.2</a>, <a href="#rfc.xref.Part1.44">7</a>, <a href="#rfc.xref.Part1.45">7.1</a>, <a href="#rfc.xref.Part1.46">8.1</a>, <a href="#rfc.xref.Part1.47">9.1</a>, <a href="#rfc.xref.Part1.48">9.3</a>, <a href="#rfc.xref.Part1.49">9.8</a>, <a href="#rfc.xref.Part1.50">9.11</a>, <a href="#rfc.xref.Part1.51">9.17</a>, <a href="#rfc.xref.Part1.52">9.17</a>, <a href="#rfc.xref.Part1.53">9.18</a>, <a href="#rfc.xref.Part1.54">10.4</a>, <a href="#rfc.xref.Part1.55">10.4</a>, <a href="#rfc.xref.Part1.56">10.4</a>, <a href="#rfc.xref.Part1.57">12</a>, <a href="#Part1"><b>13.1</b></a>, <a href="#rfc.xref.Part1.58">A.6</a>, <a href="#rfc.xref.Part1.59">C</a><ul> 4994 4987 <li><em>Section 1.2</em> <a href="#rfc.xref.Part1.3">1.3</a></li> 4995 4988 <li><em>Section 2</em> <a href="#rfc.xref.Part1.2">1.2</a></li> … … 4998 4991 <li><em>Section 2.7</em> <a href="#rfc.xref.Part1.12">1.3.2</a>, <a href="#rfc.xref.Part1.14">1.3.2</a>, <a href="#rfc.xref.Part1.15">1.3.2</a></li> 4999 4992 <li><em>Section 3.2.1</em> <a href="#rfc.xref.Part1.5">1.3.1</a>, <a href="#rfc.xref.Part1.6">1.3.1</a>, <a href="#rfc.xref.Part1.7">1.3.1</a></li> 5000 <li><em>Section 3.2</em> <a href="#rfc.xref.Part1.22">3</a>, <a href="#rfc.xref.Part1.25">3.1</a>, <a href="#rfc.xref.Part1. 48">7.17</a>, <a href="#rfc.xref.Part1.50">7.18</a></li>4993 <li><em>Section 3.2</em> <a href="#rfc.xref.Part1.22">3</a>, <a href="#rfc.xref.Part1.25">3.1</a>, <a href="#rfc.xref.Part1.51">9.17</a>, <a href="#rfc.xref.Part1.53">9.18</a></li> 5001 4994 <li><em>Section 3.2.4</em> <a href="#rfc.xref.Part1.8">1.3.1</a>, <a href="#rfc.xref.Part1.9">1.3.1</a>, <a href="#rfc.xref.Part1.10">1.3.1</a>, <a href="#rfc.xref.Part1.11">1.3.1</a>, <a href="#rfc.xref.Part1.13">1.3.2</a>, <a href="#rfc.xref.Part1.24">3.1</a></li> 5002 4995 <li><em>Section 3.2.5</em> <a href="#rfc.xref.Part1.23">3.1</a></li> 5003 <li><em>Section 3.3</em> <a href="#rfc.xref.Part1.17">2.2.1</a>, <a href="#rfc.xref.Part1.34">4.4.6</a>, <a href="#rfc.xref.Part1. 37">5</a>, <a href="#rfc.xref.Part1.58">F.1.2</a></li>5004 <li><em>Section 3.3.1</em> <a href="#rfc.xref.Part1.5 5">A.6</a></li>5005 <li><em>Section 3.3.2</em> <a href="#rfc.xref.Part1. 57">F.1.1</a></li>5006 <li><em>Section 4</em> <a href="#rfc.xref.Part1.4 2">6.4.1</a></li>4996 <li><em>Section 3.3</em> <a href="#rfc.xref.Part1.17">2.2.1</a>, <a href="#rfc.xref.Part1.34">4.4.6</a>, <a href="#rfc.xref.Part1.43">6.2</a>, <a href="#rfc.xref.Part1.44">7</a></li> 4997 <li><em>Section 3.3.1</em> <a href="#rfc.xref.Part1.58">A.6</a></li> 4998 <li><em>Section 3.3.2</em> <a href="#rfc.xref.Part1.42">6.1</a></li> 4999 <li><em>Section 4</em> <a href="#rfc.xref.Part1.40">5.4.1</a></li> 5007 5000 <li><em>Section 4.1</em> <a href="#rfc.xref.Part1.27">3.1</a></li> 5008 <li><em>Section 4.2.1</em> <a href="#rfc.xref.Part1.3 9">6.4</a>, <a href="#rfc.xref.Part1.51">8.4</a></li>5009 <li><em>Section 4.2</em> <a href="#rfc.xref.Part1.4 3">6.4.1</a></li>5010 <li><em>Section 4.2.2</em> <a href="#rfc.xref.Part1. 40">6.4</a>, <a href="#rfc.xref.Part1.52">8.4</a></li>5011 <li><em>Section 4.2.3</em> <a href="#rfc.xref.Part1. 41">6.4</a>, <a href="#rfc.xref.Part1.53">8.4</a></li>5001 <li><em>Section 4.2.1</em> <a href="#rfc.xref.Part1.37">5.4</a>, <a href="#rfc.xref.Part1.54">10.4</a></li> 5002 <li><em>Section 4.2</em> <a href="#rfc.xref.Part1.41">5.4.1</a></li> 5003 <li><em>Section 4.2.2</em> <a href="#rfc.xref.Part1.38">5.4</a>, <a href="#rfc.xref.Part1.55">10.4</a></li> 5004 <li><em>Section 4.2.3</em> <a href="#rfc.xref.Part1.39">5.4</a>, <a href="#rfc.xref.Part1.56">10.4</a></li> 5012 5005 <li><em>Section 4.3</em> <a href="#rfc.xref.Part1.29">3.2</a></li> 5013 <li><em>Section 4.3.1</em> <a href="#rfc.xref.Part1.4 4">7.1</a>, <a href="#rfc.xref.Part1.45">7.3</a>, <a href="#rfc.xref.Part1.59">F.3.1</a></li>5006 <li><em>Section 4.3.1</em> <a href="#rfc.xref.Part1.46">8.1</a>, <a href="#rfc.xref.Part1.47">9.1</a>, <a href="#rfc.xref.Part1.48">9.3</a></li> 5014 5007 <li><em>Section 5.3</em> <a href="#rfc.xref.Part1.18">2.3.1</a>, <a href="#rfc.xref.Part1.21">2.3.8</a></li> 5015 5008 <li><em>Section 5.4</em> <a href="#rfc.xref.Part1.28">3.2</a></li> 5016 <li><em>Section 5.5</em> <a href="#rfc.xref.Part1.16">2</a>, <a href="#rfc.xref.Part1.30">3.3</a>, <a href="#rfc.xref.Part1. 38">5.1</a>, <a href="#rfc.xref.Part1.46">7.8</a></li>5009 <li><em>Section 5.5</em> <a href="#rfc.xref.Part1.16">2</a>, <a href="#rfc.xref.Part1.30">3.3</a>, <a href="#rfc.xref.Part1.45">7.1</a>, <a href="#rfc.xref.Part1.49">9.8</a></li> 5017 5010 <li><em>Section 6.1</em> <a href="#rfc.xref.Part1.26">3.1</a></li> 5018 <li><em>Section 6.2</em> <a href="#rfc.xref.Part1.19">2.3.7</a>, <a href="#rfc.xref.Part1. 49">7.17</a>, <a href="#rfc.xref.Part1.56">C</a></li>5019 <li><em>Section 6.4.3</em> <a href="#rfc.xref.Part1.31">4.3.1</a>, <a href="#rfc.xref.Part1. 47">7.11</a></li>5011 <li><em>Section 6.2</em> <a href="#rfc.xref.Part1.19">2.3.7</a>, <a href="#rfc.xref.Part1.52">9.17</a>, <a href="#rfc.xref.Part1.59">C</a></li> 5012 <li><em>Section 6.4.3</em> <a href="#rfc.xref.Part1.31">4.3.1</a>, <a href="#rfc.xref.Part1.50">9.11</a></li> 5020 5013 <li><em>Section 6.5</em> <a href="#rfc.xref.Part1.32">4.3.2</a>, <a href="#rfc.xref.Part1.35">4.6.15</a></li> 5021 5014 <li><em>Section 7.3.1</em> <a href="#rfc.xref.Part1.20">2.3.7</a></li> 5022 <li><em>Section 9</em> <a href="#rfc.xref.Part1.5 4">10</a></li>5015 <li><em>Section 9</em> <a href="#rfc.xref.Part1.57">12</a></li> 5023 5016 </ul> 5024 5017 </li> 5025 <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">3.2</a>, <a href="#rfc.xref.Part4.4">3.2</a>, <a href="#rfc.xref.Part4.5">3.3</a>, <a href="#rfc.xref.Part4.6">4.1</a>, <a href="#rfc.xref.Part4.7">4.1</a>, <a href="#rfc.xref.Part4.8">4.1</a>, <a href="#rfc.xref.Part4.9">4.4.2</a>, <a href="#rfc.xref.Part4.10">4.5</a>, <a href="#Part4"><b>1 1.1</b></a>, <a href="#rfc.xref.Part4.11">E.2</a>, <a href="#rfc.xref.Part4.12">F.2.1</a>, <a href="#rfc.xref.Part4.13">F.2.1</a><ul>5026 <li><em>Section 2.2</em> <a href="#rfc.xref.Part4.13">F. 2.1</a></li>5027 <li><em>Section 2.3</em> <a href="#rfc.xref.Part4.5">3.3</a>, <a href="#rfc.xref.Part4.9">4.4.2</a>, <a href="#rfc.xref.Part4.12">F. 2.1</a></li>5018 <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">3.2</a>, <a href="#rfc.xref.Part4.4">3.2</a>, <a href="#rfc.xref.Part4.5">3.3</a>, <a href="#rfc.xref.Part4.6">4.1</a>, <a href="#rfc.xref.Part4.7">4.1</a>, <a href="#rfc.xref.Part4.8">4.1</a>, <a href="#rfc.xref.Part4.9">4.4.2</a>, <a href="#rfc.xref.Part4.10">4.5</a>, <a href="#Part4"><b>13.1</b></a>, <a href="#rfc.xref.Part4.11">E.2</a>, <a href="#rfc.xref.Part4.12">F.1.1</a>, <a href="#rfc.xref.Part4.13">F.1.1</a><ul> 5019 <li><em>Section 2.2</em> <a href="#rfc.xref.Part4.13">F.1.1</a></li> 5020 <li><em>Section 2.3</em> <a href="#rfc.xref.Part4.5">3.3</a>, <a href="#rfc.xref.Part4.9">4.4.2</a>, <a href="#rfc.xref.Part4.12">F.1.1</a></li> 5028 5021 <li><em>Section 3.1</em> <a href="#rfc.xref.Part4.1">3.2</a></li> 5029 5022 <li><em>Section 3.2</em> <a href="#rfc.xref.Part4.3">3.2</a></li> … … 5035 5028 </ul> 5036 5029 </li> 5037 <li><em>Part5</em> <a href="#rfc.xref.Part5.1">2.3.2</a>, <a href="#rfc.xref.Part5.2">3.2</a>, <a href="#rfc.xref.Part5.3">3.2</a>, <a href="#rfc.xref.Part5.4">3.3</a>, <a href="#rfc.xref.Part5.5">4.1</a>, <a href="#rfc.xref.Part5.6">4.1</a>, <a href="#rfc.xref.Part5.7">4.1</a>, <a href="# Part5"><b>11.1</b></a>, <a href="#rfc.xref.Part5.8">F.1.1</a><ul>5030 <li><em>Part5</em> <a href="#rfc.xref.Part5.1">2.3.2</a>, <a href="#rfc.xref.Part5.2">3.2</a>, <a href="#rfc.xref.Part5.3">3.2</a>, <a href="#rfc.xref.Part5.4">3.3</a>, <a href="#rfc.xref.Part5.5">4.1</a>, <a href="#rfc.xref.Part5.6">4.1</a>, <a href="#rfc.xref.Part5.7">4.1</a>, <a href="#rfc.xref.Part5.8">6.1</a>, <a href="#Part5"><b>13.1</b></a><ul> 5038 5031 <li><em>Section 3</em> <a href="#rfc.xref.Part5.5">4.1</a></li> 5039 5032 <li><em>Section 3.1</em> <a href="#rfc.xref.Part5.6">4.1</a></li> 5040 5033 <li><em>Section 3.2</em> <a href="#rfc.xref.Part5.7">4.1</a></li> 5041 5034 <li><em>Section 5.1</em> <a href="#rfc.xref.Part5.4">3.3</a></li> 5042 <li><em>Section 5.2</em> <a href="#rfc.xref.Part5.8"> F.1.1</a></li>5035 <li><em>Section 5.2</em> <a href="#rfc.xref.Part5.8">6.1</a></li> 5043 5036 <li><em>Section 5.3</em> <a href="#rfc.xref.Part5.2">3.2</a></li> 5044 5037 <li><em>Section 5.4</em> <a href="#rfc.xref.Part5.1">2.3.2</a>, <a href="#rfc.xref.Part5.3">3.2</a></li> 5045 5038 </ul> 5046 5039 </li> 5047 <li><em>Part6</em> <a href="#rfc.xref.Part6.1">2.2.1</a>, <a href="#rfc.xref.Part6.2">2.3.2</a>, <a href="#rfc.xref.Part6.3">2.3.3</a>, <a href="#rfc.xref.Part6.4">2.3.4</a>, <a href="#rfc.xref.Part6.5">2.3.5</a>, <a href="#rfc.xref.Part6.6">2.3.6</a>, <a href="#rfc.xref.Part6.7">3.1</a>, <a href="#rfc.xref.Part6.8">3.3</a>, <a href="#rfc.xref.Part6.9">3.3</a>, <a href="#rfc.xref.Part6.10">4.2.1</a>, <a href="#rfc.xref.Part6.11">4.4.1</a>, <a href="#rfc.xref.Part6.12">4.4.4</a>, <a href="#rfc.xref.Part6.13">4.4.4</a>, <a href="#rfc.xref.Part6.14">4.4.4</a>, <a href="#rfc.xref.Part6.15">4.5.1</a>, <a href="#rfc.xref.Part6.16">4.5.2</a>, <a href="#rfc.xref.Part6.17">4.6.9</a>, <a href="# Part6"><b>11.1</b></a>, <a href="#rfc.xref.Part6.18">F.2.1</a>, <a href="#rfc.xref.Part6.19">F.3.1</a><ul>5040 <li><em>Part6</em> <a href="#rfc.xref.Part6.1">2.2.1</a>, <a href="#rfc.xref.Part6.2">2.3.2</a>, <a href="#rfc.xref.Part6.3">2.3.3</a>, <a href="#rfc.xref.Part6.4">2.3.4</a>, <a href="#rfc.xref.Part6.5">2.3.5</a>, <a href="#rfc.xref.Part6.6">2.3.6</a>, <a href="#rfc.xref.Part6.7">3.1</a>, <a href="#rfc.xref.Part6.8">3.3</a>, <a href="#rfc.xref.Part6.9">3.3</a>, <a href="#rfc.xref.Part6.10">4.2.1</a>, <a href="#rfc.xref.Part6.11">4.4.1</a>, <a href="#rfc.xref.Part6.12">4.4.4</a>, <a href="#rfc.xref.Part6.13">4.4.4</a>, <a href="#rfc.xref.Part6.14">4.4.4</a>, <a href="#rfc.xref.Part6.15">4.5.1</a>, <a href="#rfc.xref.Part6.16">4.5.2</a>, <a href="#rfc.xref.Part6.17">4.6.9</a>, <a href="#rfc.xref.Part6.18">8.1</a>, <a href="#Part6"><b>13.1</b></a>, <a href="#rfc.xref.Part6.19">F.1.1</a><ul> 5048 5041 <li><em>Section 2.3.1</em> <a href="#rfc.xref.Part6.4">2.3.4</a></li> 5049 5042 <li><em>Section 2.3.1.1</em> <a href="#rfc.xref.Part6.11">4.4.1</a>, <a href="#rfc.xref.Part6.14">4.4.4</a>, <a href="#rfc.xref.Part6.15">4.5.1</a>, <a href="#rfc.xref.Part6.16">4.5.2</a>, <a href="#rfc.xref.Part6.17">4.6.9</a></li> … … 5052 5045 <li><em>Section 3.1</em> <a href="#rfc.xref.Part6.8">3.3</a></li> 5053 5046 <li><em>Section 3.2</em> <a href="#rfc.xref.Part6.12">4.4.4</a></li> 5054 <li><em>Section 3.3</em> <a href="#rfc.xref.Part6.1 8">F.2.1</a></li>5055 <li><em>Section 3.5</em> <a href="#rfc.xref.Part6.9">3.3</a>, <a href="#rfc.xref.Part6.1 9">F.3.1</a></li>5047 <li><em>Section 3.3</em> <a href="#rfc.xref.Part6.19">F.1.1</a></li> 5048 <li><em>Section 3.5</em> <a href="#rfc.xref.Part6.9">3.3</a>, <a href="#rfc.xref.Part6.18">8.1</a></li> 5056 5049 <li><em>Section 3.6</em> <a href="#rfc.xref.Part6.13">4.4.4</a></li> 5057 5050 </ul> 5058 5051 </li> 5059 <li><em>Part7</em> <a href="#rfc.xref.Part7.1">3.2</a>, <a href="#rfc.xref.Part7.2">3.2</a>, <a href="#rfc.xref.Part7.3">3.3</a>, <a href="#rfc.xref.Part7.4">3.3</a>, <a href="#rfc.xref.Part7.5">4.1</a>, <a href="#rfc.xref.Part7.6">4.1</a>, <a href="#rfc.xref.Part7.7">4.1</a>, <a href="#Part7"><b>1 1.1</b></a><ul>5052 <li><em>Part7</em> <a href="#rfc.xref.Part7.1">3.2</a>, <a href="#rfc.xref.Part7.2">3.2</a>, <a href="#rfc.xref.Part7.3">3.3</a>, <a href="#rfc.xref.Part7.4">3.3</a>, <a href="#rfc.xref.Part7.5">4.1</a>, <a href="#rfc.xref.Part7.6">4.1</a>, <a href="#rfc.xref.Part7.7">4.1</a>, <a href="#Part7"><b>13.1</b></a><ul> 5060 5053 <li><em>Section 3</em> <a href="#rfc.xref.Part7.5">4.1</a></li> 5061 5054 <li><em>Section 3.1</em> <a href="#rfc.xref.Part7.6">4.1</a></li> … … 5067 5060 </ul> 5068 5061 </li> 5069 <li>payload <a href="#rfc.iref.p.3"> F.1</a></li>5070 <li>POST method <a href="#rfc.iref.p.1"><b>2.3.4</b></a>, <a href="#rfc.xref.POST.1"> 8.1</a>, <a href="#rfc.xref.POST.2">C</a></li>5071 <li>PUT method <a href="#rfc.iref.p.2"><b>2.3.5</b></a>, <a href="#rfc.xref.PUT.1"> 8.1</a>, <a href="#rfc.xref.PUT.2">C</a></li>5062 <li>payload <a href="#rfc.iref.p.3">6</a></li> 5063 <li>POST method <a href="#rfc.iref.p.1"><b>2.3.4</b></a>, <a href="#rfc.xref.POST.1">10.1</a>, <a href="#rfc.xref.POST.2">C</a></li> 5064 <li>PUT method <a href="#rfc.iref.p.2"><b>2.3.5</b></a>, <a href="#rfc.xref.PUT.1">10.1</a>, <a href="#rfc.xref.PUT.2">C</a></li> 5072 5065 </ul> 5073 5066 </li> 5074 5067 <li><a id="rfc.index.R" href="#rfc.index.R"><b>R</b></a><ul> 5075 <li>Referer header field <a href="#rfc.xref.header.referer.1">3.2</a>, <a href="#rfc.iref.r.1"><b> 7.15</b></a>, <a href="#rfc.xref.header.referer.2">8.3</a>, <a href="#rfc.xref.header.referer.3">C</a></li>5076 <li>representation <a href="#rfc.iref.r.3">F. 2</a></li>5077 <li>Retry-After header field <a href="#rfc.xref.header.retry-after.1">3.3</a>, <a href="#rfc.xref.header.retry-after.2">4.7.4</a>, <a href="#rfc.iref.r.2"><b> 7.16</b></a>, <a href="#rfc.xref.header.retry-after.3">8.3</a></li>5078 <li><em>RFC1123</em> <a href="#rfc.xref.RFC1123.1"> 6.1</a>, <a href="#rfc.xref.RFC1123.2">6.1</a>, <a href="#RFC1123"><b>11.2</b></a><ul>5079 <li><em>Section 5.2.14</em> <a href="#rfc.xref.RFC1123.2"> 6.1</a></li>5068 <li>Referer header field <a href="#rfc.xref.header.referer.1">3.2</a>, <a href="#rfc.iref.r.1"><b>9.15</b></a>, <a href="#rfc.xref.header.referer.2">10.3</a>, <a href="#rfc.xref.header.referer.3">C</a></li> 5069 <li>representation <a href="#rfc.iref.r.3">F.1</a></li> 5070 <li>Retry-After header field <a href="#rfc.xref.header.retry-after.1">3.3</a>, <a href="#rfc.xref.header.retry-after.2">4.7.4</a>, <a href="#rfc.iref.r.2"><b>9.16</b></a>, <a href="#rfc.xref.header.retry-after.3">10.3</a></li> 5071 <li><em>RFC1123</em> <a href="#rfc.xref.RFC1123.1">5.1</a>, <a href="#rfc.xref.RFC1123.2">5.1</a>, <a href="#RFC1123"><b>13.2</b></a><ul> 5072 <li><em>Section 5.2.14</em> <a href="#rfc.xref.RFC1123.2">5.1</a></li> 5080 5073 </ul> 5081 5074 </li> 5082 <li><em>RFC1945</em> <a href="#rfc.xref.RFC1945.1">4.5</a>, <a href="#RFC1945"><b>1 1.2</b></a>, <a href="#rfc.xref.RFC1945.2">B</a><ul>5075 <li><em>RFC1945</em> <a href="#rfc.xref.RFC1945.1">4.5</a>, <a href="#RFC1945"><b>13.2</b></a>, <a href="#rfc.xref.RFC1945.2">B</a><ul> 5083 5076 <li><em>Section 9.3</em> <a href="#rfc.xref.RFC1945.1">4.5</a></li> 5084 5077 </ul> 5085 5078 </li> 5086 <li><em>RFC1950</em> <a href="#rfc.xref.RFC1950.1"> 8.4</a>, <a href="#RFC1950"><b>11.1</b></a></li>5087 <li><em>RFC1951</em> <a href="#rfc.xref.RFC1951.1"> 8.4</a>, <a href="#RFC1951"><b>11.1</b></a></li>5088 <li><em>RFC1952</em> <a href="#rfc.xref.RFC1952.1"> 8.4</a>, <a href="#RFC1952"><b>11.1</b></a></li>5089 <li><em>RFC2045</em> <a href="#RFC2045"><b>1 1.1</b></a>, <a href="#rfc.xref.RFC2045.1">A</a>, <a href="#rfc.xref.RFC2045.2">A.1</a></li>5090 <li><em>RFC2046</em> <a href="#rfc.xref.RFC2046.1"> 6.5</a>, <a href="#rfc.xref.RFC2046.2">6.5.2</a>, <a href="#RFC2046"><b>11.1</b></a>, <a href="#rfc.xref.RFC2046.3">A.2</a>, <a href="#rfc.xref.RFC2046.4">F.2.2</a><ul>5091 <li><em>Section 4.5.1</em> <a href="#rfc.xref.RFC2046.4">F. 2.2</a></li>5092 <li><em>Section 5.1.1</em> <a href="#rfc.xref.RFC2046.2"> 6.5.2</a></li>5079 <li><em>RFC1950</em> <a href="#rfc.xref.RFC1950.1">10.4</a>, <a href="#RFC1950"><b>13.1</b></a></li> 5080 <li><em>RFC1951</em> <a href="#rfc.xref.RFC1951.1">10.4</a>, <a href="#RFC1951"><b>13.1</b></a></li> 5081 <li><em>RFC1952</em> <a href="#rfc.xref.RFC1952.1">10.4</a>, <a href="#RFC1952"><b>13.1</b></a></li> 5082 <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> 5083 <li><em>RFC2046</em> <a href="#rfc.xref.RFC2046.1">5.5</a>, <a href="#rfc.xref.RFC2046.2">5.5.2</a>, <a href="#RFC2046"><b>13.1</b></a>, <a href="#rfc.xref.RFC2046.3">A.2</a>, <a href="#rfc.xref.RFC2046.4">F.1.2</a><ul> 5084 <li><em>Section 4.5.1</em> <a href="#rfc.xref.RFC2046.4">F.1.2</a></li> 5085 <li><em>Section 5.1.1</em> <a href="#rfc.xref.RFC2046.2">5.5.2</a></li> 5093 5086 </ul> 5094 5087 </li> 5095 <li><em>RFC2049</em> <a href="#RFC2049"><b>1 1.2</b></a>, <a href="#rfc.xref.RFC2049.1">A.2</a><ul>5088 <li><em>RFC2049</em> <a href="#RFC2049"><b>13.2</b></a>, <a href="#rfc.xref.RFC2049.1">A.2</a><ul> 5096 5089 <li><em>Section 4</em> <a href="#rfc.xref.RFC2049.1">A.2</a></li> 5097 5090 </ul> 5098 5091 </li> 5099 <li><em>RFC2068</em> <a href="#rfc.xref.RFC2068.1">4.5</a>, <a href="#rfc.xref.RFC2068.2">4.5</a>, <a href="#RFC2068"><b>1 1.2</b></a>, <a href="#rfc.xref.RFC2068.3">B</a><ul>5092 <li><em>RFC2068</em> <a href="#rfc.xref.RFC2068.1">4.5</a>, <a href="#rfc.xref.RFC2068.2">4.5</a>, <a href="#RFC2068"><b>13.2</b></a>, <a href="#rfc.xref.RFC2068.3">B</a><ul> 5100 5093 <li><em>Section 10.3</em> <a href="#rfc.xref.RFC2068.2">4.5</a></li> 5101 5094 <li><em>Section 10.3.4</em> <a href="#rfc.xref.RFC2068.1">4.5</a></li> 5102 5095 </ul> 5103 5096 </li> 5104 <li><em>RFC2076</em> <a href="#RFC2076"><b>1 1.2</b></a>, <a href="#rfc.xref.RFC2076.1">B</a></li>5105 <li><em>RFC2119</em> <a href="#rfc.xref.RFC2119.1">1.2</a>, <a href="#RFC2119"><b>1 1.1</b></a></li>5106 <li><em>RFC2277</em> <a href="#rfc.xref.RFC2277.1"> 6.3</a>, <a href="#RFC2277"><b>11.2</b></a></li>5107 <li><em>RFC2295</em> <a href="# RFC2295"><b>11.2</b></a>, <a href="#rfc.xref.RFC2295.1">F.3</a></li>5108 <li><em>RFC2388</em> <a href="#rfc.xref.RFC2388.1"> 6.5.2</a>, <a href="#RFC2388"><b>11.2</b></a></li>5109 <li><em>RFC2557</em> <a href="#rfc.xref.RFC2557.1"> 7.8</a>, <a href="#RFC2557"><b>11.2</b></a>, <a href="#rfc.xref.RFC2557.2">A.7</a><ul>5110 <li><em>Section 4</em> <a href="#rfc.xref.RFC2557.1"> 7.8</a></li>5097 <li><em>RFC2076</em> <a href="#RFC2076"><b>13.2</b></a>, <a href="#rfc.xref.RFC2076.1">B</a></li> 5098 <li><em>RFC2119</em> <a href="#rfc.xref.RFC2119.1">1.2</a>, <a href="#RFC2119"><b>13.1</b></a></li> 5099 <li><em>RFC2277</em> <a href="#rfc.xref.RFC2277.1">5.3</a>, <a href="#RFC2277"><b>13.2</b></a></li> 5100 <li><em>RFC2295</em> <a href="#rfc.xref.RFC2295.1">8</a>, <a href="#RFC2295"><b>13.2</b></a></li> 5101 <li><em>RFC2388</em> <a href="#rfc.xref.RFC2388.1">5.5.2</a>, <a href="#RFC2388"><b>13.2</b></a></li> 5102 <li><em>RFC2557</em> <a href="#rfc.xref.RFC2557.1">9.8</a>, <a href="#RFC2557"><b>13.2</b></a>, <a href="#rfc.xref.RFC2557.2">A.7</a><ul> 5103 <li><em>Section 4</em> <a href="#rfc.xref.RFC2557.1">9.8</a></li> 5111 5104 </ul> 5112 5105 </li> 5113 <li><em>RFC2616</em> <a href="#rfc.xref.RFC2616.1">1</a>, <a href="#rfc.xref.RFC2616.2">4.5</a>, <a href="#rfc.xref.RFC2616.3"> 7.4</a>, <a href="#RFC2616"><b>11.2</b></a>, <a href="#rfc.xref.RFC2616.4">E.1</a>, <a href="#rfc.xref.RFC2616.5">F.4.1</a><ul>5106 <li><em>RFC2616</em> <a href="#rfc.xref.RFC2616.1">1</a>, <a href="#rfc.xref.RFC2616.2">4.5</a>, <a href="#rfc.xref.RFC2616.3">9.4</a>, <a href="#RFC2616"><b>13.2</b></a>, <a href="#rfc.xref.RFC2616.4">E.1</a><ul> 5114 5107 <li><em>Section 10.3.8</em> <a href="#rfc.xref.RFC2616.2">4.5</a></li> 5115 <li><em>Section 14.4</em> <a href="#rfc.xref.RFC2616.3"> 7.4</a></li>5108 <li><em>Section 14.4</em> <a href="#rfc.xref.RFC2616.3">9.4</a></li> 5116 5109 </ul> 5117 5110 </li> 5118 <li><em>RFC2817</em> <a href="#rfc.xref.RFC2817.1"> 8.2</a>, <a href="#RFC2817"><b>11.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>5119 <li><em>Section 7.1</em> <a href="#rfc.xref.RFC2817.1"> 8.2</a>, <a href="#rfc.xref.RFC2817.3">C</a></li>5111 <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> 5112 <li><em>Section 7.1</em> <a href="#rfc.xref.RFC2817.1">10.2</a>, <a href="#rfc.xref.RFC2817.3">C</a></li> 5120 5113 </ul> 5121 5114 </li> 5122 <li><em>RFC3629</em> <a href="#rfc.xref.RFC3629.1"> 6.3</a>, <a href="#RFC3629"><b>11.2</b></a></li>5123 <li><em>RFC3864</em> <a href="#rfc.xref.RFC3864.1">3.1</a>, <a href="#rfc.xref.RFC3864.2">3.1</a>, <a href="#rfc.xref.RFC3864.3"> 8.3</a>, <a href="#RFC3864"><b>11.2</b></a><ul>5115 <li><em>RFC3629</em> <a href="#rfc.xref.RFC3629.1">5.3</a>, <a href="#RFC3629"><b>13.2</b></a></li> 5116 <li><em>RFC3864</em> <a href="#rfc.xref.RFC3864.1">3.1</a>, <a href="#rfc.xref.RFC3864.2">3.1</a>, <a href="#rfc.xref.RFC3864.3">10.3</a>, <a href="#RFC3864"><b>13.2</b></a><ul> 5124 5117 <li><em>Section 4.1</em> <a href="#rfc.xref.RFC3864.2">3.1</a></li> 5125 5118 </ul> 5126 5119 </li> 5127 <li><em>RFC3986</em> <a href="#rfc.xref.RFC3986.1"> 7.13</a>, <a href="#rfc.xref.RFC3986.2">7.13</a>, <a href="#RFC3986"><b>11.1</b></a><ul>5128 <li><em>Section 4.2</em> <a href="#rfc.xref.RFC3986.1"> 7.13</a></li>5129 <li><em>Section 5</em> <a href="#rfc.xref.RFC3986.2"> 7.13</a></li>5120 <li><em>RFC3986</em> <a href="#rfc.xref.RFC3986.1">9.13</a>, <a href="#rfc.xref.RFC3986.2">9.13</a>, <a href="#RFC3986"><b>13.1</b></a><ul> 5121 <li><em>Section 4.2</em> <a href="#rfc.xref.RFC3986.1">9.13</a></li> 5122 <li><em>Section 5</em> <a href="#rfc.xref.RFC3986.2">9.13</a></li> 5130 5123 </ul> 5131 5124 </li> 5132 <li><em>RFC4288</em> <a href="#rfc.xref.RFC4288.1"> 6.5</a>, <a href="#RFC4288"><b>11.2</b></a></li>5133 <li><em>RFC4647</em> <a href="#rfc.xref.RFC4647.1"> 7.4</a>, <a href="#rfc.xref.RFC4647.2">7.4</a>, <a href="#rfc.xref.RFC4647.3">7.4</a>, <a href="#rfc.xref.RFC4647.4">7.4</a>, <a href="#RFC4647"><b>11.1</b></a><ul>5134 <li><em>Section 2.1</em> <a href="#rfc.xref.RFC4647.1"> 7.4</a></li>5135 <li><em>Section 2.3</em> <a href="#rfc.xref.RFC4647.2"> 7.4</a></li>5136 <li><em>Section 3</em> <a href="#rfc.xref.RFC4647.3"> 7.4</a></li>5137 <li><em>Section 3.3.1</em> <a href="#rfc.xref.RFC4647.4"> 7.4</a></li>5125 <li><em>RFC4288</em> <a href="#rfc.xref.RFC4288.1">5.5</a>, <a href="#RFC4288"><b>13.2</b></a></li> 5126 <li><em>RFC4647</em> <a href="#rfc.xref.RFC4647.1">9.4</a>, <a href="#rfc.xref.RFC4647.2">9.4</a>, <a href="#rfc.xref.RFC4647.3">9.4</a>, <a href="#rfc.xref.RFC4647.4">9.4</a>, <a href="#RFC4647"><b>13.1</b></a><ul> 5127 <li><em>Section 2.1</em> <a href="#rfc.xref.RFC4647.1">9.4</a></li> 5128 <li><em>Section 2.3</em> <a href="#rfc.xref.RFC4647.2">9.4</a></li> 5129 <li><em>Section 3</em> <a href="#rfc.xref.RFC4647.3">9.4</a></li> 5130 <li><em>Section 3.3.1</em> <a href="#rfc.xref.RFC4647.4">9.4</a></li> 5138 5131 </ul> 5139 5132 </li> 5140 <li><em>RFC5226</em> <a href="#rfc.xref.RFC5226.1">2.2</a>, <a href="#rfc.xref.RFC5226.2">4.2</a>, <a href="#rfc.xref.RFC5226.3"> 6.4.1</a>, <a href="#RFC5226"><b>11.2</b></a><ul>5141 <li><em>Section 4.1</em> <a href="#rfc.xref.RFC5226.1">2.2</a>, <a href="#rfc.xref.RFC5226.2">4.2</a>, <a href="#rfc.xref.RFC5226.3"> 6.4.1</a></li>5133 <li><em>RFC5226</em> <a href="#rfc.xref.RFC5226.1">2.2</a>, <a href="#rfc.xref.RFC5226.2">4.2</a>, <a href="#rfc.xref.RFC5226.3">5.4.1</a>, <a href="#RFC5226"><b>13.2</b></a><ul> 5134 <li><em>Section 4.1</em> <a href="#rfc.xref.RFC5226.1">2.2</a>, <a href="#rfc.xref.RFC5226.2">4.2</a>, <a href="#rfc.xref.RFC5226.3">5.4.1</a></li> 5142 5135 </ul> 5143 5136 </li> 5144 <li><em>RFC5234</em> <a href="#rfc.xref.RFC5234.1">1.3</a>, <a href="#rfc.xref.RFC5234.2">1.3</a>, <a href="#rfc.xref.RFC5234.3">3.1</a>, <a href="#RFC5234"><b>1 1.1</b></a><ul>5137 <li><em>RFC5234</em> <a href="#rfc.xref.RFC5234.1">1.3</a>, <a href="#rfc.xref.RFC5234.2">1.3</a>, <a href="#rfc.xref.RFC5234.3">3.1</a>, <a href="#RFC5234"><b>13.1</b></a><ul> 5145 5138 <li><em>Appendix B.1</em> <a href="#rfc.xref.RFC5234.2">1.3</a></li> 5146 5139 </ul> 5147 5140 </li> 5148 <li><em>RFC5322</em> <a href="#rfc.xref.RFC5322.1"> 6.1</a>, <a href="#rfc.xref.RFC5322.2">7.10</a>, <a href="#rfc.xref.RFC5322.3">7.12</a>, <a href="#rfc.xref.RFC5322.4">7.12</a>, <a href="#RFC5322"><b>11.2</b></a>, <a href="#rfc.xref.RFC5322.5">A</a><ul>5149 <li><em>Section 3.3</em> <a href="#rfc.xref.RFC5322.1"> 6.1</a></li>5150 <li><em>Section 3.4</em> <a href="#rfc.xref.RFC5322.3"> 7.12</a>, <a href="#rfc.xref.RFC5322.4">7.12</a></li>5151 <li><em>Section 3.6.1</em> <a href="#rfc.xref.RFC5322.2"> 7.10</a></li>5141 <li><em>RFC5322</em> <a href="#rfc.xref.RFC5322.1">5.1</a>, <a href="#rfc.xref.RFC5322.2">9.10</a>, <a href="#rfc.xref.RFC5322.3">9.12</a>, <a href="#rfc.xref.RFC5322.4">9.12</a>, <a href="#RFC5322"><b>13.2</b></a>, <a href="#rfc.xref.RFC5322.5">A</a><ul> 5142 <li><em>Section 3.3</em> <a href="#rfc.xref.RFC5322.1">5.1</a></li> 5143 <li><em>Section 3.4</em> <a href="#rfc.xref.RFC5322.3">9.12</a>, <a href="#rfc.xref.RFC5322.4">9.12</a></li> 5144 <li><em>Section 3.6.1</em> <a href="#rfc.xref.RFC5322.2">9.10</a></li> 5152 5145 </ul> 5153 5146 </li> 5154 <li><em>RFC5646</em> <a href="#rfc.xref.RFC5646.1"> 6.6</a>, <a href="#rfc.xref.RFC5646.2">6.6</a>, <a href="#rfc.xref.RFC5646.3">6.6</a>, <a href="#RFC5646"><b>11.1</b></a><ul>5155 <li><em>Section 2.1</em> <a href="#rfc.xref.RFC5646.2"> 6.6</a></li>5147 <li><em>RFC5646</em> <a href="#rfc.xref.RFC5646.1">5.6</a>, <a href="#rfc.xref.RFC5646.2">5.6</a>, <a href="#rfc.xref.RFC5646.3">5.6</a>, <a href="#RFC5646"><b>13.1</b></a><ul> 5148 <li><em>Section 2.1</em> <a href="#rfc.xref.RFC5646.2">5.6</a></li> 5156 5149 </ul> 5157 5150 </li> 5158 <li><em>RFC5789</em> <a href="#rfc.xref.RFC5789.1">2.3.5</a>, <a href="#RFC5789"><b>1 1.2</b></a></li>5159 <li><em>RFC5987</em> <a href="#rfc.xref.RFC5987.1">3.1</a>, <a href="#RFC5987"><b>1 1.2</b></a></li>5160 <li><em>RFC6151</em> <a href="#RFC6151"><b>1 1.2</b></a>, <a href="#rfc.xref.RFC6151.1">C</a></li>5161 <li><em>RFC6266</em> <a href="#RFC6266"><b>1 1.2</b></a>, <a href="#rfc.xref.RFC6266.1">B</a>, <a href="#rfc.xref.RFC6266.2">C</a></li>5151 <li><em>RFC5789</em> <a href="#rfc.xref.RFC5789.1">2.3.5</a>, <a href="#RFC5789"><b>13.2</b></a></li> 5152 <li><em>RFC5987</em> <a href="#rfc.xref.RFC5987.1">3.1</a>, <a href="#RFC5987"><b>13.2</b></a></li> 5153 <li><em>RFC6151</em> <a href="#RFC6151"><b>13.2</b></a>, <a href="#rfc.xref.RFC6151.1">C</a></li> 5154 <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> 5162 5155 </ul> 5163 5156 </li> … … 5165 5158 <li>Safe Methods <a href="#rfc.iref.s.2"><b>2.1.1</b></a></li> 5166 5159 <li>selected representation <a href="#rfc.iref.s.1"><b>1.1</b></a></li> 5167 <li>Server header field <a href="#rfc.xref.header.server.1">3.3</a>, <a href="#rfc.iref.s.39"><b> 7.17</b></a>, <a href="#rfc.xref.header.server.2">8.3</a>, <a href="#rfc.xref.header.server.3">9.1</a>, <a href="#rfc.xref.header.server.4">C</a></li>5160 <li>Server header field <a href="#rfc.xref.header.server.1">3.3</a>, <a href="#rfc.iref.s.39"><b>9.17</b></a>, <a href="#rfc.xref.header.server.2">10.3</a>, <a href="#rfc.xref.header.server.3">11.1</a>, <a href="#rfc.xref.header.server.4">C</a></li> 5168 5161 <li>Status Codes 5169 5162 <ul> 5170 <li>100 Continue <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.s.3"><b>4.3.1</b></a>, <a href="#rfc.xref.status.100.2"> 8.2</a></li>5171 <li>101 Switching Protocols <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.s.4"><b>4.3.2</b></a>, <a href="#rfc.xref.status.101.2"> 8.2</a></li>5172 <li>200 OK <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.s.5"><b>4.4.1</b></a>, <a href="#rfc.xref.status.200.2"> 8.2</a></li>5173 <li>201 Created <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.s.6"><b>4.4.2</b></a>, <a href="#rfc.xref.status.201.2"> 8.2</a></li>5174 <li>202 Accepted <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.s.7"><b>4.4.3</b></a>, <a href="#rfc.xref.status.202.2"> 8.2</a></li>5175 <li>203 Non-Authoritative Information <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.s.8"><b>4.4.4</b></a>, <a href="#rfc.xref.status.203.2"> 8.2</a>, <a href="#rfc.xref.status.203.3">C</a></li>5176 <li>204 No Content <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.s.9"><b>4.4.5</b></a>, <a href="#rfc.xref.status.204.2"> 8.2</a></li>5177 <li>205 Reset Content <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.s.10"><b>4.4.6</b></a>, <a href="#rfc.xref.status.205.2"> 8.2</a></li>5178 <li>300 Multiple Choices <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.s.11"><b>4.5.1</b></a>, <a href="#rfc.xref.status.300.2"> 8.2</a></li>5179 <li>301 Moved Permanently <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.s.12"><b>4.5.2</b></a>, <a href="#rfc.xref.status.301.2"> 8.2</a>, <a href="#rfc.xref.status.301.3">C</a></li>5180 <li>302 Found <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.s.13"><b>4.5.3</b></a>, <a href="#rfc.xref.status.302.2"> 8.2</a>, <a href="#rfc.xref.status.302.3">C</a></li>5181 <li>303 See Other <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.iref.s.14"><b>4.5.4</b></a>, <a href="#rfc.xref.status.303.2"> 8.2</a></li>5182 <li>305 Use Proxy <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.s.15"><b>4.5.5</b></a>, <a href="#rfc.xref.status.305.2"> 8.2</a>, <a href="#rfc.xref.status.305.3">C</a></li>5183 <li>306 (Unused) <a href="#rfc.iref.s.16"><b>4.5.6</b></a>, <a href="#rfc.xref.status.306.1"> 8.2</a></li>5184 <li>307 Temporary Redirect <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.iref.s.17"><b>4.5.7</b></a>, <a href="#rfc.xref.status.307.2"> 8.2</a>, <a href="#rfc.xref.status.307.3">C</a></li>5185 <li>400 Bad Request <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.s.18"><b>4.6.1</b></a>, <a href="#rfc.xref.status.400.2"> 8.2</a></li>5186 <li>402 Payment Required <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.s.19"><b>4.6.2</b></a>, <a href="#rfc.xref.status.402.2"> 8.2</a></li>5187 <li>403 Forbidden <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.s.20"><b>4.6.3</b></a>, <a href="#rfc.xref.status.403.2"> 8.2</a></li>5188 <li>404 Not Found <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.s.21"><b>4.6.4</b></a>, <a href="#rfc.xref.status.404.2"> 8.2</a></li>5189 <li>405 Method Not Allowed <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.s.22"><b>4.6.5</b></a>, <a href="#rfc.xref.status.405.2"> 8.2</a></li>5190 <li>406 Not Acceptable <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.s.23"><b>4.6.6</b></a>, <a href="#rfc.xref.status.406.2"> 8.2</a></li>5191 <li>408 Request Timeout <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.s.24"><b>4.6.7</b></a>, <a href="#rfc.xref.status.408.2"> 8.2</a></li>5192 <li>409 Conflict <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.s.25"><b>4.6.8</b></a>, <a href="#rfc.xref.status.409.2"> 8.2</a></li>5193 <li>410 Gone <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.s.26"><b>4.6.9</b></a>, <a href="#rfc.xref.status.410.2"> 8.2</a></li>5194 <li>411 Length Required <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.s.27"><b>4.6.10</b></a>, <a href="#rfc.xref.status.411.2"> 8.2</a></li>5195 <li>413 Request Representation Too Large <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.s.28"><b>4.6.11</b></a>, <a href="#rfc.xref.status.413.2"> 8.2</a></li>5196 <li>414 URI Too Long <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.s.29"><b>4.6.12</b></a>, <a href="#rfc.xref.status.414.2"> 8.2</a></li>5197 <li>415 Unsupported Media Type <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.s.30"><b>4.6.13</b></a>, <a href="#rfc.xref.status.415.2"> 8.2</a></li>5198 <li>417 Expectation Failed <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.s.31"><b>4.6.14</b></a>, <a href="#rfc.xref.status.417.2"> 8.2</a></li>5199 <li>426 Upgrade Required <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.s.32"><b>4.6.15</b></a>, <a href="#rfc.xref.status.426.2"> 8.2</a>, <a href="#rfc.xref.status.426.3">C</a></li>5200 <li>500 Internal Server Error <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.s.33"><b>4.7.1</b></a>, <a href="#rfc.xref.status.500.2"> 8.2</a></li>5201 <li>501 Not Implemented <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.s.34"><b>4.7.2</b></a>, <a href="#rfc.xref.status.501.2"> 8.2</a></li>5202 <li>502 Bad Gateway <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.s.35"><b>4.7.3</b></a>, <a href="#rfc.xref.status.502.2"> 8.2</a></li>5203 <li>503 Service Unavailable <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.s.36"><b>4.7.4</b></a>, <a href="#rfc.xref.status.503.2"> 8.2</a></li>5204 <li>504 Gateway Timeout <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.s.37"><b>4.7.5</b></a>, <a href="#rfc.xref.status.504.2"> 8.2</a></li>5205 <li>505 HTTP Version Not Supported <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.s.38"><b>4.7.6</b></a>, <a href="#rfc.xref.status.505.2"> 8.2</a></li>5163 <li>100 Continue <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.s.3"><b>4.3.1</b></a>, <a href="#rfc.xref.status.100.2">10.2</a></li> 5164 <li>101 Switching Protocols <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.s.4"><b>4.3.2</b></a>, <a href="#rfc.xref.status.101.2">10.2</a></li> 5165 <li>200 OK <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.s.5"><b>4.4.1</b></a>, <a href="#rfc.xref.status.200.2">10.2</a></li> 5166 <li>201 Created <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.s.6"><b>4.4.2</b></a>, <a href="#rfc.xref.status.201.2">10.2</a></li> 5167 <li>202 Accepted <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.s.7"><b>4.4.3</b></a>, <a href="#rfc.xref.status.202.2">10.2</a></li> 5168 <li>203 Non-Authoritative Information <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.s.8"><b>4.4.4</b></a>, <a href="#rfc.xref.status.203.2">10.2</a>, <a href="#rfc.xref.status.203.3">C</a></li> 5169 <li>204 No Content <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.s.9"><b>4.4.5</b></a>, <a href="#rfc.xref.status.204.2">10.2</a></li> 5170 <li>205 Reset Content <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.s.10"><b>4.4.6</b></a>, <a href="#rfc.xref.status.205.2">10.2</a></li> 5171 <li>300 Multiple Choices <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.s.11"><b>4.5.1</b></a>, <a href="#rfc.xref.status.300.2">10.2</a></li> 5172 <li>301 Moved Permanently <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.s.12"><b>4.5.2</b></a>, <a href="#rfc.xref.status.301.2">10.2</a>, <a href="#rfc.xref.status.301.3">C</a></li> 5173 <li>302 Found <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.s.13"><b>4.5.3</b></a>, <a href="#rfc.xref.status.302.2">10.2</a>, <a href="#rfc.xref.status.302.3">C</a></li> 5174 <li>303 See Other <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.iref.s.14"><b>4.5.4</b></a>, <a href="#rfc.xref.status.303.2">10.2</a></li> 5175 <li>305 Use Proxy <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.s.15"><b>4.5.5</b></a>, <a href="#rfc.xref.status.305.2">10.2</a>, <a href="#rfc.xref.status.305.3">C</a></li> 5176 <li>306 (Unused) <a href="#rfc.iref.s.16"><b>4.5.6</b></a>, <a href="#rfc.xref.status.306.1">10.2</a></li> 5177 <li>307 Temporary Redirect <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.iref.s.17"><b>4.5.7</b></a>, <a href="#rfc.xref.status.307.2">10.2</a>, <a href="#rfc.xref.status.307.3">C</a></li> 5178 <li>400 Bad Request <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.s.18"><b>4.6.1</b></a>, <a href="#rfc.xref.status.400.2">10.2</a></li> 5179 <li>402 Payment Required <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.s.19"><b>4.6.2</b></a>, <a href="#rfc.xref.status.402.2">10.2</a></li> 5180 <li>403 Forbidden <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.s.20"><b>4.6.3</b></a>, <a href="#rfc.xref.status.403.2">10.2</a></li> 5181 <li>404 Not Found <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.s.21"><b>4.6.4</b></a>, <a href="#rfc.xref.status.404.2">10.2</a></li> 5182 <li>405 Method Not Allowed <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.s.22"><b>4.6.5</b></a>, <a href="#rfc.xref.status.405.2">10.2</a></li> 5183 <li>406 Not Acceptable <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.s.23"><b>4.6.6</b></a>, <a href="#rfc.xref.status.406.2">10.2</a></li> 5184 <li>408 Request Timeout <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.s.24"><b>4.6.7</b></a>, <a href="#rfc.xref.status.408.2">10.2</a></li> 5185 <li>409 Conflict <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.s.25"><b>4.6.8</b></a>, <a href="#rfc.xref.status.409.2">10.2</a></li> 5186 <li>410 Gone <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.s.26"><b>4.6.9</b></a>, <a href="#rfc.xref.status.410.2">10.2</a></li> 5187 <li>411 Length Required <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.s.27"><b>4.6.10</b></a>, <a href="#rfc.xref.status.411.2">10.2</a></li> 5188 <li>413 Request Representation Too Large <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.s.28"><b>4.6.11</b></a>, <a href="#rfc.xref.status.413.2">10.2</a></li> 5189 <li>414 URI Too Long <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.s.29"><b>4.6.12</b></a>, <a href="#rfc.xref.status.414.2">10.2</a></li> 5190 <li>415 Unsupported Media Type <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.s.30"><b>4.6.13</b></a>, <a href="#rfc.xref.status.415.2">10.2</a></li> 5191 <li>417 Expectation Failed <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.s.31"><b>4.6.14</b></a>, <a href="#rfc.xref.status.417.2">10.2</a></li> 5192 <li>426 Upgrade Required <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.s.32"><b>4.6.15</b></a>, <a href="#rfc.xref.status.426.2">10.2</a>, <a href="#rfc.xref.status.426.3">C</a></li> 5193 <li>500 Internal Server Error <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.s.33"><b>4.7.1</b></a>, <a href="#rfc.xref.status.500.2">10.2</a></li> 5194 <li>501 Not Implemented <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.s.34"><b>4.7.2</b></a>, <a href="#rfc.xref.status.501.2">10.2</a></li> 5195 <li>502 Bad Gateway <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.s.35"><b>4.7.3</b></a>, <a href="#rfc.xref.status.502.2">10.2</a></li> 5196 <li>503 Service Unavailable <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.s.36"><b>4.7.4</b></a>, <a href="#rfc.xref.status.503.2">10.2</a></li> 5197 <li>504 Gateway Timeout <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.s.37"><b>4.7.5</b></a>, <a href="#rfc.xref.status.504.2">10.2</a></li> 5198 <li>505 HTTP Version Not Supported <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.s.38"><b>4.7.6</b></a>, <a href="#rfc.xref.status.505.2">10.2</a></li> 5206 5199 </ul> 5207 5200 </li> … … 5209 5202 </li> 5210 5203 <li><a id="rfc.index.T" href="#rfc.index.T"><b>T</b></a><ul> 5211 <li>TRACE method <a href="#rfc.iref.t.1"><b>2.3.7</b></a>, <a href="#rfc.xref.TRACE.1"> 7.14</a>, <a href="#rfc.xref.TRACE.2">8.1</a>, <a href="#rfc.xref.TRACE.3">9.1</a></li>5204 <li>TRACE method <a href="#rfc.iref.t.1"><b>2.3.7</b></a>, <a href="#rfc.xref.TRACE.1">9.14</a>, <a href="#rfc.xref.TRACE.2">10.1</a>, <a href="#rfc.xref.TRACE.3">11.1</a></li> 5212 5205 </ul> 5213 5206 </li> 5214 5207 <li><a id="rfc.index.U" href="#rfc.index.U"><b>U</b></a><ul> 5215 <li>User-Agent header field <a href="#rfc.xref.header.user-agent.1">3.2</a>, <a href="#rfc. iref.u.1"><b>7.18</b></a>, <a href="#rfc.xref.header.user-agent.2">8.3</a>, <a href="#rfc.xref.header.user-agent.3">9.1</a>, <a href="#rfc.xref.header.user-agent.4">F.3.1</a></li>5208 <li>User-Agent header field <a href="#rfc.xref.header.user-agent.1">3.2</a>, <a href="#rfc.xref.header.user-agent.2">8.1</a>, <a href="#rfc.iref.u.1"><b>9.18</b></a>, <a href="#rfc.xref.header.user-agent.3">10.3</a>, <a href="#rfc.xref.header.user-agent.4">11.1</a></li> 5216 5209 </ul> 5217 5210 </li>
Note: See TracChangeset
for help on using the changeset viewer.