Changeset 1416 for draft-ietf-httpbis/latest/p2-semantics.html
- Timestamp:
- 26/08/11 15:05:58 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/p2-semantics.html
r1415 r1416 383 383 <link rel="Chapter" title="1 Introduction" href="#rfc.section.1"> 384 384 <link rel="Chapter" title="2 Method" href="#rfc.section.2"> 385 <link rel="Chapter" title="3 RequestHeader Fields" href="#rfc.section.3">385 <link rel="Chapter" title="3 Header Fields" href="#rfc.section.3"> 386 386 <link rel="Chapter" title="4 Status Code and Reason Phrase" href="#rfc.section.4"> 387 <link rel="Chapter" title="5 Response Header Fields" href="#rfc.section.5"> 388 <link rel="Chapter" title="6 Representation" href="#rfc.section.6"> 389 <link rel="Chapter" title="7 Method Definitions" href="#rfc.section.7"> 390 <link rel="Chapter" title="8 Status Code Definitions" href="#rfc.section.8"> 391 <link rel="Chapter" title="9 Header Field Definitions" href="#rfc.section.9"> 392 <link rel="Chapter" title="10 IANA Considerations" href="#rfc.section.10"> 393 <link rel="Chapter" title="11 Security Considerations" href="#rfc.section.11"> 394 <link rel="Chapter" title="12 Acknowledgments" href="#rfc.section.12"> 395 <link rel="Chapter" href="#rfc.section.13" title="13 References"> 387 <link rel="Chapter" title="5 Representation" href="#rfc.section.5"> 388 <link rel="Chapter" title="6 Method Definitions" href="#rfc.section.6"> 389 <link rel="Chapter" title="7 Status Code Definitions" href="#rfc.section.7"> 390 <link rel="Chapter" title="8 Header Field Definitions" href="#rfc.section.8"> 391 <link rel="Chapter" title="9 IANA Considerations" href="#rfc.section.9"> 392 <link rel="Chapter" title="10 Security Considerations" href="#rfc.section.10"> 393 <link rel="Chapter" title="11 Acknowledgments" href="#rfc.section.11"> 394 <link rel="Chapter" href="#rfc.section.12" title="12 References"> 396 395 <link rel="Appendix" title="A Changes from RFC 2616" href="#rfc.section.A"> 397 396 <link rel="Appendix" title="B Collected ABNF" href="#rfc.section.B"> … … 558 557 </ul> 559 558 </li> 560 <li>3. <a href="#request.header.fields">Request Header Fields</a></li> 559 <li>3. <a href="#header.fields">Header Fields</a><ul> 560 <li>3.1 <a href="#request.header.fields">Request Header Fields</a></li> 561 <li>3.2 <a href="#response.header.fields">Response Header Fields</a></li> 562 </ul> 563 </li> 561 564 <li>4. <a href="#status.code.and.reason.phrase">Status Code and Reason Phrase</a><ul> 562 565 <li>4.1 <a href="#overview.of.status.codes">Overview of Status Codes</a></li> … … 567 570 </ul> 568 571 </li> 569 <li>5. <a href="#response.header.fields">Response Header Fields</a></li> 570 <li>6. <a href="#representation">Representation</a><ul> 571 <li>6.1 <a href="#identifying.response.associated.with.representation">Identifying the Resource Associated with a Representation</a></li> 572 <li>5. <a href="#representation">Representation</a><ul> 573 <li>5.1 <a href="#identifying.response.associated.with.representation">Identifying the Resource Associated with a Representation</a></li> 572 574 </ul> 573 575 </li> 574 <li> 7. <a href="#method.definitions">Method Definitions</a><ul>575 <li> 7.1 <a href="#safe.and.idempotent">Safe and Idempotent Methods</a><ul>576 <li> 7.1.1 <a href="#safe.methods">Safe Methods</a></li>577 <li> 7.1.2 <a href="#idempotent.methods">Idempotent Methods</a></li>576 <li>6. <a href="#method.definitions">Method Definitions</a><ul> 577 <li>6.1 <a href="#safe.and.idempotent">Safe and Idempotent Methods</a><ul> 578 <li>6.1.1 <a href="#safe.methods">Safe Methods</a></li> 579 <li>6.1.2 <a href="#idempotent.methods">Idempotent Methods</a></li> 578 580 </ul> 579 581 </li> 580 <li> 7.2 <a href="#OPTIONS">OPTIONS</a></li>581 <li> 7.3 <a href="#GET">GET</a></li>582 <li> 7.4 <a href="#HEAD">HEAD</a></li>583 <li> 7.5 <a href="#POST">POST</a></li>584 <li> 7.6 <a href="#PUT">PUT</a></li>585 <li> 7.7 <a href="#DELETE">DELETE</a></li>586 <li> 7.8 <a href="#TRACE">TRACE</a></li>587 <li> 7.9 <a href="#CONNECT">CONNECT</a><ul>588 <li> 7.9.1 <a href="#rfc.section.7.9.1">Establishing a Tunnel with CONNECT</a></li>582 <li>6.2 <a href="#OPTIONS">OPTIONS</a></li> 583 <li>6.3 <a href="#GET">GET</a></li> 584 <li>6.4 <a href="#HEAD">HEAD</a></li> 585 <li>6.5 <a href="#POST">POST</a></li> 586 <li>6.6 <a href="#PUT">PUT</a></li> 587 <li>6.7 <a href="#DELETE">DELETE</a></li> 588 <li>6.8 <a href="#TRACE">TRACE</a></li> 589 <li>6.9 <a href="#CONNECT">CONNECT</a><ul> 590 <li>6.9.1 <a href="#rfc.section.6.9.1">Establishing a Tunnel with CONNECT</a></li> 589 591 </ul> 590 592 </li> 591 593 </ul> 592 594 </li> 593 <li> 8. <a href="#status.codes">Status Code Definitions</a><ul>594 <li> 8.1 <a href="#status.1xx">Informational 1xx</a><ul>595 <li> 8.1.1 <a href="#status.100">100 Continue</a></li>596 <li> 8.1.2 <a href="#status.101">101 Switching Protocols</a></li>595 <li>7. <a href="#status.codes">Status Code Definitions</a><ul> 596 <li>7.1 <a href="#status.1xx">Informational 1xx</a><ul> 597 <li>7.1.1 <a href="#status.100">100 Continue</a></li> 598 <li>7.1.2 <a href="#status.101">101 Switching Protocols</a></li> 597 599 </ul> 598 600 </li> 599 <li> 8.2 <a href="#status.2xx">Successful 2xx</a><ul>600 <li> 8.2.1 <a href="#status.200">200 OK</a></li>601 <li> 8.2.2 <a href="#status.201">201 Created</a></li>602 <li> 8.2.3 <a href="#status.202">202 Accepted</a></li>603 <li> 8.2.4 <a href="#status.203">203 Non-Authoritative Information</a></li>604 <li> 8.2.5 <a href="#status.204">204 No Content</a></li>605 <li> 8.2.6 <a href="#status.205">205 Reset Content</a></li>606 <li> 8.2.7 <a href="#status.206">206 Partial Content</a></li>601 <li>7.2 <a href="#status.2xx">Successful 2xx</a><ul> 602 <li>7.2.1 <a href="#status.200">200 OK</a></li> 603 <li>7.2.2 <a href="#status.201">201 Created</a></li> 604 <li>7.2.3 <a href="#status.202">202 Accepted</a></li> 605 <li>7.2.4 <a href="#status.203">203 Non-Authoritative Information</a></li> 606 <li>7.2.5 <a href="#status.204">204 No Content</a></li> 607 <li>7.2.6 <a href="#status.205">205 Reset Content</a></li> 608 <li>7.2.7 <a href="#status.206">206 Partial Content</a></li> 607 609 </ul> 608 610 </li> 609 <li> 8.3 <a href="#status.3xx">Redirection 3xx</a><ul>610 <li> 8.3.1 <a href="#status.300">300 Multiple Choices</a></li>611 <li> 8.3.2 <a href="#status.301">301 Moved Permanently</a></li>612 <li> 8.3.3 <a href="#status.302">302 Found</a></li>613 <li> 8.3.4 <a href="#status.303">303 See Other</a></li>614 <li> 8.3.5 <a href="#status.304">304 Not Modified</a></li>615 <li> 8.3.6 <a href="#status.305">305 Use Proxy</a></li>616 <li> 8.3.7 <a href="#status.306">306 (Unused)</a></li>617 <li> 8.3.8 <a href="#status.307">307 Temporary Redirect</a></li>611 <li>7.3 <a href="#status.3xx">Redirection 3xx</a><ul> 612 <li>7.3.1 <a href="#status.300">300 Multiple Choices</a></li> 613 <li>7.3.2 <a href="#status.301">301 Moved Permanently</a></li> 614 <li>7.3.3 <a href="#status.302">302 Found</a></li> 615 <li>7.3.4 <a href="#status.303">303 See Other</a></li> 616 <li>7.3.5 <a href="#status.304">304 Not Modified</a></li> 617 <li>7.3.6 <a href="#status.305">305 Use Proxy</a></li> 618 <li>7.3.7 <a href="#status.306">306 (Unused)</a></li> 619 <li>7.3.8 <a href="#status.307">307 Temporary Redirect</a></li> 618 620 </ul> 619 621 </li> 620 <li> 8.4 <a href="#status.4xx">Client Error 4xx</a><ul>621 <li> 8.4.1 <a href="#status.400">400 Bad Request</a></li>622 <li> 8.4.2 <a href="#status.401">401 Unauthorized</a></li>623 <li> 8.4.3 <a href="#status.402">402 Payment Required</a></li>624 <li> 8.4.4 <a href="#status.403">403 Forbidden</a></li>625 <li> 8.4.5 <a href="#status.404">404 Not Found</a></li>626 <li> 8.4.6 <a href="#status.405">405 Method Not Allowed</a></li>627 <li> 8.4.7 <a href="#status.406">406 Not Acceptable</a></li>628 <li> 8.4.8 <a href="#status.407">407 Proxy Authentication Required</a></li>629 <li> 8.4.9 <a href="#status.408">408 Request Timeout</a></li>630 <li> 8.4.10 <a href="#status.409">409 Conflict</a></li>631 <li> 8.4.11 <a href="#status.410">410 Gone</a></li>632 <li> 8.4.12 <a href="#status.411">411 Length Required</a></li>633 <li> 8.4.13 <a href="#status.412">412 Precondition Failed</a></li>634 <li> 8.4.14 <a href="#status.413">413 Request Representation Too Large</a></li>635 <li> 8.4.15 <a href="#status.414">414 URI Too Long</a></li>636 <li> 8.4.16 <a href="#status.415">415 Unsupported Media Type</a></li>637 <li> 8.4.17 <a href="#status.416">416 Requested Range Not Satisfiable</a></li>638 <li> 8.4.18 <a href="#status.417">417 Expectation Failed</a></li>639 <li> 8.4.19 <a href="#status.426">426 Upgrade Required</a></li>622 <li>7.4 <a href="#status.4xx">Client Error 4xx</a><ul> 623 <li>7.4.1 <a href="#status.400">400 Bad Request</a></li> 624 <li>7.4.2 <a href="#status.401">401 Unauthorized</a></li> 625 <li>7.4.3 <a href="#status.402">402 Payment Required</a></li> 626 <li>7.4.4 <a href="#status.403">403 Forbidden</a></li> 627 <li>7.4.5 <a href="#status.404">404 Not Found</a></li> 628 <li>7.4.6 <a href="#status.405">405 Method Not Allowed</a></li> 629 <li>7.4.7 <a href="#status.406">406 Not Acceptable</a></li> 630 <li>7.4.8 <a href="#status.407">407 Proxy Authentication Required</a></li> 631 <li>7.4.9 <a href="#status.408">408 Request Timeout</a></li> 632 <li>7.4.10 <a href="#status.409">409 Conflict</a></li> 633 <li>7.4.11 <a href="#status.410">410 Gone</a></li> 634 <li>7.4.12 <a href="#status.411">411 Length Required</a></li> 635 <li>7.4.13 <a href="#status.412">412 Precondition Failed</a></li> 636 <li>7.4.14 <a href="#status.413">413 Request Representation Too Large</a></li> 637 <li>7.4.15 <a href="#status.414">414 URI Too Long</a></li> 638 <li>7.4.16 <a href="#status.415">415 Unsupported Media Type</a></li> 639 <li>7.4.17 <a href="#status.416">416 Requested Range Not Satisfiable</a></li> 640 <li>7.4.18 <a href="#status.417">417 Expectation Failed</a></li> 641 <li>7.4.19 <a href="#status.426">426 Upgrade Required</a></li> 640 642 </ul> 641 643 </li> 642 <li> 8.5 <a href="#status.5xx">Server Error 5xx</a><ul>643 <li> 8.5.1 <a href="#status.500">500 Internal Server Error</a></li>644 <li> 8.5.2 <a href="#status.501">501 Not Implemented</a></li>645 <li> 8.5.3 <a href="#status.502">502 Bad Gateway</a></li>646 <li> 8.5.4 <a href="#status.503">503 Service Unavailable</a></li>647 <li> 8.5.5 <a href="#status.504">504 Gateway Timeout</a></li>648 <li> 8.5.6 <a href="#status.505">505 HTTP Version Not Supported</a></li>644 <li>7.5 <a href="#status.5xx">Server Error 5xx</a><ul> 645 <li>7.5.1 <a href="#status.500">500 Internal Server Error</a></li> 646 <li>7.5.2 <a href="#status.501">501 Not Implemented</a></li> 647 <li>7.5.3 <a href="#status.502">502 Bad Gateway</a></li> 648 <li>7.5.4 <a href="#status.503">503 Service Unavailable</a></li> 649 <li>7.5.5 <a href="#status.504">504 Gateway Timeout</a></li> 650 <li>7.5.6 <a href="#status.505">505 HTTP Version Not Supported</a></li> 649 651 </ul> 650 652 </li> 651 653 </ul> 652 654 </li> 653 <li> 9. <a href="#header.field.definitions">Header Field Definitions</a><ul>654 <li> 9.1 <a href="#header.allow">Allow</a></li>655 <li> 9.2 <a href="#header.expect">Expect</a></li>656 <li> 9.3 <a href="#header.from">From</a></li>657 <li> 9.4 <a href="#header.location">Location</a></li>658 <li> 9.5 <a href="#header.max-forwards">Max-Forwards</a></li>659 <li> 9.6 <a href="#header.referer">Referer</a></li>660 <li> 9.7 <a href="#header.retry-after">Retry-After</a></li>661 <li> 9.8 <a href="#header.server">Server</a></li>662 <li> 9.9 <a href="#header.user-agent">User-Agent</a></li>655 <li>8. <a href="#header.field.definitions">Header Field Definitions</a><ul> 656 <li>8.1 <a href="#header.allow">Allow</a></li> 657 <li>8.2 <a href="#header.expect">Expect</a></li> 658 <li>8.3 <a href="#header.from">From</a></li> 659 <li>8.4 <a href="#header.location">Location</a></li> 660 <li>8.5 <a href="#header.max-forwards">Max-Forwards</a></li> 661 <li>8.6 <a href="#header.referer">Referer</a></li> 662 <li>8.7 <a href="#header.retry-after">Retry-After</a></li> 663 <li>8.8 <a href="#header.server">Server</a></li> 664 <li>8.9 <a href="#header.user-agent">User-Agent</a></li> 663 665 </ul> 664 666 </li> 665 <li> 10. <a href="#IANA.considerations">IANA Considerations</a><ul>666 <li> 10.1 <a href="#method.registration">Method Registry</a></li>667 <li> 10.2 <a href="#status.code.registration">Status Code Registry</a></li>668 <li> 10.3 <a href="#header.field.registration">Header Field Registration</a></li>667 <li>9. <a href="#IANA.considerations">IANA Considerations</a><ul> 668 <li>9.1 <a href="#method.registration">Method Registry</a></li> 669 <li>9.2 <a href="#status.code.registration">Status Code Registry</a></li> 670 <li>9.3 <a href="#header.field.registration">Header Field Registration</a></li> 669 671 </ul> 670 672 </li> 671 <li>1 1. <a href="#security.considerations">Security Considerations</a><ul>672 <li>1 1.1 <a href="#security.sensitive">Transfer of Sensitive Information</a></li>673 <li>1 1.2 <a href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></li>674 <li>1 1.3 <a href="#location.spoofing">Location Headers and Spoofing</a></li>675 <li>1 1.4 <a href="#rfc.section.11.4">Security Considerations for CONNECT</a></li>673 <li>10. <a href="#security.considerations">Security Considerations</a><ul> 674 <li>10.1 <a href="#security.sensitive">Transfer of Sensitive Information</a></li> 675 <li>10.2 <a href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></li> 676 <li>10.3 <a href="#location.spoofing">Location Headers and Spoofing</a></li> 677 <li>10.4 <a href="#rfc.section.10.4">Security Considerations for CONNECT</a></li> 676 678 </ul> 677 679 </li> 678 <li>1 2. <a href="#acks">Acknowledgments</a></li>679 <li>1 3. <a href="#rfc.references">References</a><ul>680 <li>1 3.1 <a href="#rfc.references.1">Normative References</a></li>681 <li>1 3.2 <a href="#rfc.references.2">Informative References</a></li>680 <li>11. <a href="#acks">Acknowledgments</a></li> 681 <li>12. <a href="#rfc.references">References</a><ul> 682 <li>12.1 <a href="#rfc.references.1">Normative References</a></li> 683 <li>12.2 <a href="#rfc.references.2">Informative References</a></li> 682 684 </ul> 683 685 </li> … … 756 758 </p> 757 759 <div id="rfc.figure.u.3"></div><pre class="inline"><span id="rfc.iref.g.1"></span> <a href="#method" class="smpl">Method</a> = <a href="#core.rules" class="smpl">token</a> 758 </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.1</a>). The status code of the response always notifies the client whether a method is currently allowed on a resource, since the760 </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 8.1</a>). The status code of the response always notifies the client whether a method is currently allowed on a resource, since the 759 761 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 760 762 resource, and 501 (Not Implemented) if the method is unrecognized or not implemented by the origin server. The methods GET 761 and HEAD <em class="bcp14">MUST</em> be supported by all general-purpose servers. All other methods are <em class="bcp14">OPTIONAL</em>; however, if the above methods are implemented, they <em class="bcp14">MUST</em> be implemented with the same semantics as those specified in <a href="#method.definitions" title="Method Definitions">Section 7</a>.763 and HEAD <em class="bcp14">MUST</em> be supported by all general-purpose servers. All other methods are <em class="bcp14">OPTIONAL</em>; however, if the above methods are implemented, they <em class="bcp14">MUST</em> be implemented with the same semantics as those specified in <a href="#method.definitions" title="Method Definitions">Section 6</a>. 762 764 </p> 763 765 <h2 id="rfc.section.2.1"><a href="#rfc.section.2.1">2.1</a> <a id="overview.of.methods" href="#overview.of.methods">Overview of Methods</a></h2> 764 <p id="rfc.section.2.1.p.1">The methods listed below are defined in <a href="#method.definitions" title="Method Definitions">Section 7</a>.766 <p id="rfc.section.2.1.p.1">The methods listed below are defined in <a href="#method.definitions" title="Method Definitions">Section 6</a>. 765 767 </p> 766 768 <div id="rfc.table.u.1"> … … 775 777 <tr> 776 778 <td class="left">OPTIONS</td> 777 <td class="left"><a href="#OPTIONS" id="rfc.xref.OPTIONS.1" title="OPTIONS">Section 7.2</a></td>779 <td class="left"><a href="#OPTIONS" id="rfc.xref.OPTIONS.1" title="OPTIONS">Section 6.2</a></td> 778 780 </tr> 779 781 <tr> 780 782 <td class="left">GET</td> 781 <td class="left"><a href="#GET" id="rfc.xref.GET.1" title="GET">Section 7.3</a></td>783 <td class="left"><a href="#GET" id="rfc.xref.GET.1" title="GET">Section 6.3</a></td> 782 784 </tr> 783 785 <tr> 784 786 <td class="left">HEAD</td> 785 <td class="left"><a href="#HEAD" id="rfc.xref.HEAD.1" title="HEAD">Section 7.4</a></td>787 <td class="left"><a href="#HEAD" id="rfc.xref.HEAD.1" title="HEAD">Section 6.4</a></td> 786 788 </tr> 787 789 <tr> 788 790 <td class="left">POST</td> 789 <td class="left"><a href="#POST" id="rfc.xref.POST.1" title="POST">Section 7.5</a></td>791 <td class="left"><a href="#POST" id="rfc.xref.POST.1" title="POST">Section 6.5</a></td> 790 792 </tr> 791 793 <tr> 792 794 <td class="left">PUT</td> 793 <td class="left"><a href="#PUT" id="rfc.xref.PUT.1" title="PUT">Section 7.6</a></td>795 <td class="left"><a href="#PUT" id="rfc.xref.PUT.1" title="PUT">Section 6.6</a></td> 794 796 </tr> 795 797 <tr> 796 798 <td class="left">DELETE</td> 797 <td class="left"><a href="#DELETE" id="rfc.xref.DELETE.1" title="DELETE">Section 7.7</a></td>799 <td class="left"><a href="#DELETE" id="rfc.xref.DELETE.1" title="DELETE">Section 6.7</a></td> 798 800 </tr> 799 801 <tr> 800 802 <td class="left">TRACE</td> 801 <td class="left"><a href="#TRACE" id="rfc.xref.TRACE.1" title="TRACE">Section 7.8</a></td>803 <td class="left"><a href="#TRACE" id="rfc.xref.TRACE.1" title="TRACE">Section 6.8</a></td> 802 804 </tr> 803 805 <tr> 804 806 <td class="left">CONNECT</td> 805 <td class="left"><a href="#CONNECT" id="rfc.xref.CONNECT.1" title="CONNECT">Section 7.9</a></td>807 <td class="left"><a href="#CONNECT" id="rfc.xref.CONNECT.1" title="CONNECT">Section 6.9</a></td> 806 808 </tr> 807 809 </tbody> … … 816 818 <li>Method Name (see <a href="#method" title="Method">Section 2</a>) 817 819 </li> 818 <li>Safe ("yes" or "no", see <a href="#safe.methods" title="Safe Methods">Section 7.1.1</a>)820 <li>Safe ("yes" or "no", see <a href="#safe.methods" title="Safe Methods">Section 6.1.1</a>) 819 821 </li> 820 822 <li>Pointer to specification text</li> … … 836 838 can specify that only zero-length bodies (as opposed to absent bodies) are allowed. 837 839 </p> 838 <p id="rfc.section.2.2.1.p.4">New method definitions need to indicate whether they are safe (<a href="#safe.methods" title="Safe Methods">Section 7.1.1</a>), what semantics (if any) the request body has, and whether they are idempotent (<a href="#idempotent.methods" title="Idempotent Methods">Section 7.1.2</a>). They also need to state whether they can be cached (<a href="#Part6" id="rfc.xref.Part6.1"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>); in particular what conditions a cache may store the response, and under what conditions such a stored response may be used840 <p id="rfc.section.2.2.1.p.4">New method definitions need to indicate whether they are safe (<a href="#safe.methods" title="Safe Methods">Section 6.1.1</a>), what semantics (if any) the request body has, and whether they are idempotent (<a href="#idempotent.methods" title="Idempotent Methods">Section 6.1.2</a>). They also need to state whether they can be cached (<a href="#Part6" id="rfc.xref.Part6.1"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>); in particular what conditions a cache may store the response, and under what conditions such a stored response may be used 839 841 to satisfy a subsequent request. 840 842 </p> 841 <h1 id="rfc.section.3"><a href="#rfc.section.3">3.</a> <a id="request.header.fields" href="#request.header.fields">Request Header Fields</a></h1> 842 <p id="rfc.section.3.p.1">The request header fields allow the client to pass additional information about the request, and about the client itself, 843 <h1 id="rfc.section.3"><a href="#rfc.section.3">3.</a> <a id="header.fields" href="#header.fields">Header Fields</a></h1> 844 <h2 id="rfc.section.3.1"><a href="#rfc.section.3.1">3.1</a> <a id="request.header.fields" href="#request.header.fields">Request Header Fields</a></h2> 845 <p id="rfc.section.3.1.p.1">The request header fields allow the client to pass additional information about the request, and about the client itself, 843 846 to the server. These fields act as request modifiers, with semantics equivalent to the parameters on a programming language 844 847 method invocation. … … 875 878 <tr> 876 879 <td class="left">Expect</td> 877 <td class="left"><a href="#header.expect" id="rfc.xref.header.expect.1" title="Expect">Section 9.2</a></td>880 <td class="left"><a href="#header.expect" id="rfc.xref.header.expect.1" title="Expect">Section 8.2</a></td> 878 881 </tr> 879 882 <tr> 880 883 <td class="left">From</td> 881 <td class="left"><a href="#header.from" id="rfc.xref.header.from.1" title="From">Section 9.3</a></td>884 <td class="left"><a href="#header.from" id="rfc.xref.header.from.1" title="From">Section 8.3</a></td> 882 885 </tr> 883 886 <tr> … … 907 910 <tr> 908 911 <td class="left">Max-Forwards</td> 909 <td class="left"><a href="#header.max-forwards" id="rfc.xref.header.max-forwards.1" title="Max-Forwards">Section 9.5</a></td>912 <td class="left"><a href="#header.max-forwards" id="rfc.xref.header.max-forwards.1" title="Max-Forwards">Section 8.5</a></td> 910 913 </tr> 911 914 <tr> … … 919 922 <tr> 920 923 <td class="left">Referer</td> 921 <td class="left"><a href="#header.referer" id="rfc.xref.header.referer.1" title="Referer">Section 9.6</a></td>924 <td class="left"><a href="#header.referer" id="rfc.xref.header.referer.1" title="Referer">Section 8.6</a></td> 922 925 </tr> 923 926 <tr> … … 927 930 <tr> 928 931 <td class="left">User-Agent</td> 929 <td class="left"><a href="#header.user-agent" id="rfc.xref.header.user-agent.1" title="User-Agent">Section 9.9</a></td> 932 <td class="left"><a href="#header.user-agent" id="rfc.xref.header.user-agent.1" title="User-Agent">Section 8.9</a></td> 933 </tr> 934 </tbody> 935 </table> 936 </div> 937 <h2 id="rfc.section.3.2"><a href="#rfc.section.3.2">3.2</a> <a id="response.header.fields" href="#response.header.fields">Response Header Fields</a></h2> 938 <p id="rfc.section.3.2.p.1">The response header fields allow the server to pass additional information about the response which cannot be placed in the 939 Status-Line. These header fields give information about the server and about further access to the target resource (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.19"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 940 </p> 941 <div id="rfc.table.u.3"> 942 <table class="tt full left" cellpadding="3" cellspacing="0"> 943 <thead> 944 <tr> 945 <th>Header Field Name</th> 946 <th>Defined in...</th> 947 </tr> 948 </thead> 949 <tbody> 950 <tr> 951 <td class="left">Accept-Ranges</td> 952 <td class="left"><a href="p5-range.html#header.accept-ranges" title="Accept-Ranges">Section 5.1</a> of <a href="#Part5" id="rfc.xref.Part5.3"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a></td> 953 </tr> 954 <tr> 955 <td class="left">Age</td> 956 <td class="left"><a href="p6-cache.html#header.age" title="Age">Section 3.1</a> of <a href="#Part6" id="rfc.xref.Part6.2"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a></td> 957 </tr> 958 <tr> 959 <td class="left">Allow</td> 960 <td class="left"><a href="#header.allow" id="rfc.xref.header.allow.2" title="Allow">Section 8.1</a></td> 961 </tr> 962 <tr> 963 <td class="left">ETag</td> 964 <td class="left"><a href="p4-conditional.html#header.etag" title="ETag">Section 2.3</a> of <a href="#Part4" id="rfc.xref.Part4.5"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 965 </tr> 966 <tr> 967 <td class="left">Location</td> 968 <td class="left"><a href="#header.location" id="rfc.xref.header.location.1" title="Location">Section 8.4</a></td> 969 </tr> 970 <tr> 971 <td class="left">Proxy-Authenticate</td> 972 <td class="left"><a href="p7-auth.html#header.proxy-authenticate" title="Proxy-Authenticate">Section 4.2</a> of <a href="#Part7" id="rfc.xref.Part7.3"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a></td> 973 </tr> 974 <tr> 975 <td class="left">Retry-After</td> 976 <td class="left"><a href="#header.retry-after" id="rfc.xref.header.retry-after.1" title="Retry-After">Section 8.7</a></td> 977 </tr> 978 <tr> 979 <td class="left">Server</td> 980 <td class="left"><a href="#header.server" id="rfc.xref.header.server.1" title="Server">Section 8.8</a></td> 981 </tr> 982 <tr> 983 <td class="left">Vary</td> 984 <td class="left"><a href="p6-cache.html#header.vary" title="Vary">Section 3.5</a> of <a href="#Part6" id="rfc.xref.Part6.3"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a></td> 985 </tr> 986 <tr> 987 <td class="left">WWW-Authenticate</td> 988 <td class="left"><a href="p7-auth.html#header.www-authenticate" title="WWW-Authenticate">Section 4.4</a> of <a href="#Part7" id="rfc.xref.Part7.4"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a></td> 930 989 </tr> 931 990 </tbody> … … 946 1005 </p> 947 1006 <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> 948 <p id="rfc.section.4.1.p.1">The status codes listed below are defined in <a href="#status.codes" title="Status Code Definitions">Section 8</a> of this specification, <a href="p4-conditional.html#status.code.definitions" title="Status Code Definitions">Section 4</a> of <a href="#Part4" id="rfc.xref.Part4.5"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>, <a href="p5-range.html#status.code.definitions" title="Status Code Definitions">Section 3</a> of <a href="#Part5" id="rfc.xref.Part5.3"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a>, and <a href="p7-auth.html#status.code.definitions" title="Status Code Definitions">Section 3</a> of <a href="#Part7" id="rfc.xref.Part7.3"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a>. The reason phrases listed here are only recommendations — they can be replaced by local equivalents without affecting the1007 <p id="rfc.section.4.1.p.1">The status codes listed below are defined in <a href="#status.codes" title="Status Code Definitions">Section 7</a> of this specification, <a href="p4-conditional.html#status.code.definitions" title="Status Code Definitions">Section 4</a> of <a href="#Part4" id="rfc.xref.Part4.6"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>, <a href="p5-range.html#status.code.definitions" title="Status Code Definitions">Section 3</a> of <a href="#Part5" id="rfc.xref.Part5.4"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a>, and <a href="p7-auth.html#status.code.definitions" title="Status Code Definitions">Section 3</a> of <a href="#Part7" id="rfc.xref.Part7.5"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a>. The reason phrases listed here are only recommendations — they can be replaced by local equivalents without affecting the 949 1008 protocol. 950 1009 </p> 951 <div id="rfc.table.u. 3">1010 <div id="rfc.table.u.4"> 952 1011 <table class="tt full left" cellpadding="3" cellspacing="0"> 953 1012 <thead> … … 962 1021 <td class="left">100</td> 963 1022 <td class="left">Continue</td> 964 <td class="left"><a href="#status.100" id="rfc.xref.status.100.1" title="100 Continue">Section 8.1.1</a></td>1023 <td class="left"><a href="#status.100" id="rfc.xref.status.100.1" title="100 Continue">Section 7.1.1</a></td> 965 1024 </tr> 966 1025 <tr> 967 1026 <td class="left">101</td> 968 1027 <td class="left">Switching Protocols</td> 969 <td class="left"><a href="#status.101" id="rfc.xref.status.101.1" title="101 Switching Protocols">Section 8.1.2</a></td>1028 <td class="left"><a href="#status.101" id="rfc.xref.status.101.1" title="101 Switching Protocols">Section 7.1.2</a></td> 970 1029 </tr> 971 1030 <tr> 972 1031 <td class="left">200</td> 973 1032 <td class="left">OK</td> 974 <td class="left"><a href="#status.200" id="rfc.xref.status.200.1" title="200 OK">Section 8.2.1</a></td>1033 <td class="left"><a href="#status.200" id="rfc.xref.status.200.1" title="200 OK">Section 7.2.1</a></td> 975 1034 </tr> 976 1035 <tr> 977 1036 <td class="left">201</td> 978 1037 <td class="left">Created</td> 979 <td class="left"><a href="#status.201" id="rfc.xref.status.201.1" title="201 Created">Section 8.2.2</a></td>1038 <td class="left"><a href="#status.201" id="rfc.xref.status.201.1" title="201 Created">Section 7.2.2</a></td> 980 1039 </tr> 981 1040 <tr> 982 1041 <td class="left">202</td> 983 1042 <td class="left">Accepted</td> 984 <td class="left"><a href="#status.202" id="rfc.xref.status.202.1" title="202 Accepted">Section 8.2.3</a></td>1043 <td class="left"><a href="#status.202" id="rfc.xref.status.202.1" title="202 Accepted">Section 7.2.3</a></td> 985 1044 </tr> 986 1045 <tr> 987 1046 <td class="left">203</td> 988 1047 <td class="left">Non-Authoritative Information</td> 989 <td class="left"><a href="#status.203" id="rfc.xref.status.203.1" title="203 Non-Authoritative Information">Section 8.2.4</a></td>1048 <td class="left"><a href="#status.203" id="rfc.xref.status.203.1" title="203 Non-Authoritative Information">Section 7.2.4</a></td> 990 1049 </tr> 991 1050 <tr> 992 1051 <td class="left">204</td> 993 1052 <td class="left">No Content</td> 994 <td class="left"><a href="#status.204" id="rfc.xref.status.204.1" title="204 No Content">Section 8.2.5</a></td>1053 <td class="left"><a href="#status.204" id="rfc.xref.status.204.1" title="204 No Content">Section 7.2.5</a></td> 995 1054 </tr> 996 1055 <tr> 997 1056 <td class="left">205</td> 998 1057 <td class="left">Reset Content</td> 999 <td class="left"><a href="#status.205" id="rfc.xref.status.205.1" title="205 Reset Content">Section 8.2.6</a></td>1058 <td class="left"><a href="#status.205" id="rfc.xref.status.205.1" title="205 Reset Content">Section 7.2.6</a></td> 1000 1059 </tr> 1001 1060 <tr> 1002 1061 <td class="left">206</td> 1003 1062 <td class="left">Partial Content</td> 1004 <td class="left"><a href="p5-range.html#status.206" title="206 Partial Content">Section 3.1</a> of <a href="#Part5" id="rfc.xref.Part5. 4"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a></td>1063 <td class="left"><a href="p5-range.html#status.206" title="206 Partial Content">Section 3.1</a> of <a href="#Part5" id="rfc.xref.Part5.5"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a></td> 1005 1064 </tr> 1006 1065 <tr> 1007 1066 <td class="left">300</td> 1008 1067 <td class="left">Multiple Choices</td> 1009 <td class="left"><a href="#status.300" id="rfc.xref.status.300.1" title="300 Multiple Choices">Section 8.3.1</a></td>1068 <td class="left"><a href="#status.300" id="rfc.xref.status.300.1" title="300 Multiple Choices">Section 7.3.1</a></td> 1010 1069 </tr> 1011 1070 <tr> 1012 1071 <td class="left">301</td> 1013 1072 <td class="left">Moved Permanently</td> 1014 <td class="left"><a href="#status.301" id="rfc.xref.status.301.1" title="301 Moved Permanently">Section 8.3.2</a></td>1073 <td class="left"><a href="#status.301" id="rfc.xref.status.301.1" title="301 Moved Permanently">Section 7.3.2</a></td> 1015 1074 </tr> 1016 1075 <tr> 1017 1076 <td class="left">302</td> 1018 1077 <td class="left">Found</td> 1019 <td class="left"><a href="#status.302" id="rfc.xref.status.302.1" title="302 Found">Section 8.3.3</a></td>1078 <td class="left"><a href="#status.302" id="rfc.xref.status.302.1" title="302 Found">Section 7.3.3</a></td> 1020 1079 </tr> 1021 1080 <tr> 1022 1081 <td class="left">303</td> 1023 1082 <td class="left">See Other</td> 1024 <td class="left"><a href="#status.303" id="rfc.xref.status.303.1" title="303 See Other">Section 8.3.4</a></td>1083 <td class="left"><a href="#status.303" id="rfc.xref.status.303.1" title="303 See Other">Section 7.3.4</a></td> 1025 1084 </tr> 1026 1085 <tr> 1027 1086 <td class="left">304</td> 1028 1087 <td class="left">Not Modified</td> 1029 <td class="left"><a href="p4-conditional.html#status.304" title="304 Not Modified">Section 4.1</a> of <a href="#Part4" id="rfc.xref.Part4. 6"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>1088 <td class="left"><a href="p4-conditional.html#status.304" title="304 Not Modified">Section 4.1</a> of <a href="#Part4" id="rfc.xref.Part4.7"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 1030 1089 </tr> 1031 1090 <tr> 1032 1091 <td class="left">305</td> 1033 1092 <td class="left">Use Proxy</td> 1034 <td class="left"><a href="#status.305" id="rfc.xref.status.305.1" title="305 Use Proxy">Section 8.3.6</a></td>1093 <td class="left"><a href="#status.305" id="rfc.xref.status.305.1" title="305 Use Proxy">Section 7.3.6</a></td> 1035 1094 </tr> 1036 1095 <tr> 1037 1096 <td class="left">307</td> 1038 1097 <td class="left">Temporary Redirect</td> 1039 <td class="left"><a href="#status.307" id="rfc.xref.status.307.1" title="307 Temporary Redirect">Section 8.3.8</a></td>1098 <td class="left"><a href="#status.307" id="rfc.xref.status.307.1" title="307 Temporary Redirect">Section 7.3.8</a></td> 1040 1099 </tr> 1041 1100 <tr> 1042 1101 <td class="left">400</td> 1043 1102 <td class="left">Bad Request</td> 1044 <td class="left"><a href="#status.400" id="rfc.xref.status.400.1" title="400 Bad Request">Section 8.4.1</a></td>1103 <td class="left"><a href="#status.400" id="rfc.xref.status.400.1" title="400 Bad Request">Section 7.4.1</a></td> 1045 1104 </tr> 1046 1105 <tr> 1047 1106 <td class="left">401</td> 1048 1107 <td class="left">Unauthorized</td> 1049 <td class="left"><a href="p7-auth.html#status.401" title="401 Unauthorized">Section 3.1</a> of <a href="#Part7" id="rfc.xref.Part7. 4"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a></td>1108 <td class="left"><a href="p7-auth.html#status.401" title="401 Unauthorized">Section 3.1</a> of <a href="#Part7" id="rfc.xref.Part7.6"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a></td> 1050 1109 </tr> 1051 1110 <tr> 1052 1111 <td class="left">402</td> 1053 1112 <td class="left">Payment Required</td> 1054 <td class="left"><a href="#status.402" id="rfc.xref.status.402.1" title="402 Payment Required">Section 8.4.3</a></td>1113 <td class="left"><a href="#status.402" id="rfc.xref.status.402.1" title="402 Payment Required">Section 7.4.3</a></td> 1055 1114 </tr> 1056 1115 <tr> 1057 1116 <td class="left">403</td> 1058 1117 <td class="left">Forbidden</td> 1059 <td class="left"><a href="#status.403" id="rfc.xref.status.403.1" title="403 Forbidden">Section 8.4.4</a></td>1118 <td class="left"><a href="#status.403" id="rfc.xref.status.403.1" title="403 Forbidden">Section 7.4.4</a></td> 1060 1119 </tr> 1061 1120 <tr> 1062 1121 <td class="left">404</td> 1063 1122 <td class="left">Not Found</td> 1064 <td class="left"><a href="#status.404" id="rfc.xref.status.404.1" title="404 Not Found">Section 8.4.5</a></td>1123 <td class="left"><a href="#status.404" id="rfc.xref.status.404.1" title="404 Not Found">Section 7.4.5</a></td> 1065 1124 </tr> 1066 1125 <tr> 1067 1126 <td class="left">405</td> 1068 1127 <td class="left">Method Not Allowed</td> 1069 <td class="left"><a href="#status.405" id="rfc.xref.status.405.1" title="405 Method Not Allowed">Section 8.4.6</a></td>1128 <td class="left"><a href="#status.405" id="rfc.xref.status.405.1" title="405 Method Not Allowed">Section 7.4.6</a></td> 1070 1129 </tr> 1071 1130 <tr> 1072 1131 <td class="left">406</td> 1073 1132 <td class="left">Not Acceptable</td> 1074 <td class="left"><a href="#status.406" id="rfc.xref.status.406.1" title="406 Not Acceptable">Section 8.4.7</a></td>1133 <td class="left"><a href="#status.406" id="rfc.xref.status.406.1" title="406 Not Acceptable">Section 7.4.7</a></td> 1075 1134 </tr> 1076 1135 <tr> 1077 1136 <td class="left">407</td> 1078 1137 <td class="left">Proxy Authentication Required</td> 1079 <td class="left"><a href="p7-auth.html#status.407" title="407 Proxy Authentication Required">Section 3.2</a> of <a href="#Part7" id="rfc.xref.Part7. 5"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a></td>1138 <td class="left"><a href="p7-auth.html#status.407" title="407 Proxy Authentication Required">Section 3.2</a> of <a href="#Part7" id="rfc.xref.Part7.7"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a></td> 1080 1139 </tr> 1081 1140 <tr> 1082 1141 <td class="left">408</td> 1083 1142 <td class="left">Request Time-out</td> 1084 <td class="left"><a href="#status.408" id="rfc.xref.status.408.1" title="408 Request Timeout">Section 8.4.9</a></td>1143 <td class="left"><a href="#status.408" id="rfc.xref.status.408.1" title="408 Request Timeout">Section 7.4.9</a></td> 1085 1144 </tr> 1086 1145 <tr> 1087 1146 <td class="left">409</td> 1088 1147 <td class="left">Conflict</td> 1089 <td class="left"><a href="#status.409" id="rfc.xref.status.409.1" title="409 Conflict">Section 8.4.10</a></td>1148 <td class="left"><a href="#status.409" id="rfc.xref.status.409.1" title="409 Conflict">Section 7.4.10</a></td> 1090 1149 </tr> 1091 1150 <tr> 1092 1151 <td class="left">410</td> 1093 1152 <td class="left">Gone</td> 1094 <td class="left"><a href="#status.410" id="rfc.xref.status.410.1" title="410 Gone">Section 8.4.11</a></td>1153 <td class="left"><a href="#status.410" id="rfc.xref.status.410.1" title="410 Gone">Section 7.4.11</a></td> 1095 1154 </tr> 1096 1155 <tr> 1097 1156 <td class="left">411</td> 1098 1157 <td class="left">Length Required</td> 1099 <td class="left"><a href="#status.411" id="rfc.xref.status.411.1" title="411 Length Required">Section 8.4.12</a></td>1158 <td class="left"><a href="#status.411" id="rfc.xref.status.411.1" title="411 Length Required">Section 7.4.12</a></td> 1100 1159 </tr> 1101 1160 <tr> 1102 1161 <td class="left">412</td> 1103 1162 <td class="left">Precondition Failed</td> 1104 <td class="left"><a href="p4-conditional.html#status.412" title="412 Precondition Failed">Section 4.2</a> of <a href="#Part4" id="rfc.xref.Part4. 7"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td>1163 <td class="left"><a href="p4-conditional.html#status.412" title="412 Precondition Failed">Section 4.2</a> of <a href="#Part4" id="rfc.xref.Part4.8"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 1105 1164 </tr> 1106 1165 <tr> 1107 1166 <td class="left">413</td> 1108 1167 <td class="left">Request Representation Too Large</td> 1109 <td class="left"><a href="#status.413" id="rfc.xref.status.413.1" title="413 Request Representation Too Large">Section 8.4.14</a></td>1168 <td class="left"><a href="#status.413" id="rfc.xref.status.413.1" title="413 Request Representation Too Large">Section 7.4.14</a></td> 1110 1169 </tr> 1111 1170 <tr> 1112 1171 <td class="left">414</td> 1113 1172 <td class="left">URI Too Long</td> 1114 <td class="left"><a href="#status.414" id="rfc.xref.status.414.1" title="414 URI Too Long">Section 8.4.15</a></td>1173 <td class="left"><a href="#status.414" id="rfc.xref.status.414.1" title="414 URI Too Long">Section 7.4.15</a></td> 1115 1174 </tr> 1116 1175 <tr> 1117 1176 <td class="left">415</td> 1118 1177 <td class="left">Unsupported Media Type</td> 1119 <td class="left"><a href="#status.415" id="rfc.xref.status.415.1" title="415 Unsupported Media Type">Section 8.4.16</a></td>1178 <td class="left"><a href="#status.415" id="rfc.xref.status.415.1" title="415 Unsupported Media Type">Section 7.4.16</a></td> 1120 1179 </tr> 1121 1180 <tr> 1122 1181 <td class="left">416</td> 1123 1182 <td class="left">Requested range not satisfiable</td> 1124 <td class="left"><a href="p5-range.html#status.416" title="416 Requested Range Not Satisfiable">Section 3.2</a> of <a href="#Part5" id="rfc.xref.Part5. 5"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a></td>1183 <td class="left"><a href="p5-range.html#status.416" title="416 Requested Range Not Satisfiable">Section 3.2</a> of <a href="#Part5" id="rfc.xref.Part5.6"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a></td> 1125 1184 </tr> 1126 1185 <tr> 1127 1186 <td class="left">417</td> 1128 1187 <td class="left">Expectation Failed</td> 1129 <td class="left"><a href="#status.417" id="rfc.xref.status.417.1" title="417 Expectation Failed">Section 8.4.18</a></td>1188 <td class="left"><a href="#status.417" id="rfc.xref.status.417.1" title="417 Expectation Failed">Section 7.4.18</a></td> 1130 1189 </tr> 1131 1190 <tr> 1132 1191 <td class="left">426</td> 1133 1192 <td class="left">Upgrade Required</td> 1134 <td class="left"><a href="#status.426" id="rfc.xref.status.426.1" title="426 Upgrade Required">Section 8.4.19</a></td>1193 <td class="left"><a href="#status.426" id="rfc.xref.status.426.1" title="426 Upgrade Required">Section 7.4.19</a></td> 1135 1194 </tr> 1136 1195 <tr> 1137 1196 <td class="left">500</td> 1138 1197 <td class="left">Internal Server Error</td> 1139 <td class="left"><a href="#status.500" id="rfc.xref.status.500.1" title="500 Internal Server Error">Section 8.5.1</a></td>1198 <td class="left"><a href="#status.500" id="rfc.xref.status.500.1" title="500 Internal Server Error">Section 7.5.1</a></td> 1140 1199 </tr> 1141 1200 <tr> 1142 1201 <td class="left">501</td> 1143 1202 <td class="left">Not Implemented</td> 1144 <td class="left"><a href="#status.501" id="rfc.xref.status.501.1" title="501 Not Implemented">Section 8.5.2</a></td>1203 <td class="left"><a href="#status.501" id="rfc.xref.status.501.1" title="501 Not Implemented">Section 7.5.2</a></td> 1145 1204 </tr> 1146 1205 <tr> 1147 1206 <td class="left">502</td> 1148 1207 <td class="left">Bad Gateway</td> 1149 <td class="left"><a href="#status.502" id="rfc.xref.status.502.1" title="502 Bad Gateway">Section 8.5.3</a></td>1208 <td class="left"><a href="#status.502" id="rfc.xref.status.502.1" title="502 Bad Gateway">Section 7.5.3</a></td> 1150 1209 </tr> 1151 1210 <tr> 1152 1211 <td class="left">503</td> 1153 1212 <td class="left">Service Unavailable</td> 1154 <td class="left"><a href="#status.503" id="rfc.xref.status.503.1" title="503 Service Unavailable">Section 8.5.4</a></td>1213 <td class="left"><a href="#status.503" id="rfc.xref.status.503.1" title="503 Service Unavailable">Section 7.5.4</a></td> 1155 1214 </tr> 1156 1215 <tr> 1157 1216 <td class="left">504</td> 1158 1217 <td class="left">Gateway Time-out</td> 1159 <td class="left"><a href="#status.504" id="rfc.xref.status.504.1" title="504 Gateway Timeout">Section 8.5.5</a></td>1218 <td class="left"><a href="#status.504" id="rfc.xref.status.504.1" title="504 Gateway Timeout">Section 7.5.5</a></td> 1160 1219 </tr> 1161 1220 <tr> 1162 1221 <td class="left">505</td> 1163 1222 <td class="left">HTTP Version not supported</td> 1164 <td class="left"><a href="#status.505" id="rfc.xref.status.505.1" title="505 HTTP Version Not Supported">Section 8.5.6</a></td>1223 <td class="left"><a href="#status.505" id="rfc.xref.status.505.1" title="505 HTTP Version Not Supported">Section 7.5.6</a></td> 1165 1224 </tr> 1166 1225 </tbody> … … 1186 1245 that are required, those that modify the semantics of the response). 1187 1246 </p> 1188 <p id="rfc.section.4.2.1.p.4">New HTTP status codes are required to fall under one of the categories defined in <a href="#status.codes" title="Status Code Definitions">Section 8</a>. To allow existing parsers to properly handle them, new status codes cannot disallow a response body, although they can mandate1247 <p id="rfc.section.4.2.1.p.4">New HTTP status codes are required to fall under one of the categories defined in <a href="#status.codes" title="Status Code Definitions">Section 7</a>. To allow existing parsers to properly handle them, new status codes cannot disallow a response body, although they can mandate 1189 1248 a zero-length response body. They can require the presence of one or more particular HTTP response header(s). 1190 1249 </p> 1191 <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.2"><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 6.1</a>; by default, it is anonymous). 1192 </p> 1193 <h1 id="rfc.section.5"><a href="#rfc.section.5">5.</a> <a id="response.header.fields" href="#response.header.fields">Response Header Fields</a></h1> 1194 <p id="rfc.section.5.p.1">The response header fields allow the server to pass additional information about the response which cannot be placed in the 1195 Status-Line. These header fields give information about the server and about further access to the target resource (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.19"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 1196 </p> 1197 <div id="rfc.table.u.4"> 1198 <table class="tt full left" cellpadding="3" cellspacing="0"> 1199 <thead> 1200 <tr> 1201 <th>Header Field Name</th> 1202 <th>Defined in...</th> 1203 </tr> 1204 </thead> 1205 <tbody> 1206 <tr> 1207 <td class="left">Accept-Ranges</td> 1208 <td class="left"><a href="p5-range.html#header.accept-ranges" title="Accept-Ranges">Section 5.1</a> of <a href="#Part5" id="rfc.xref.Part5.6"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a></td> 1209 </tr> 1210 <tr> 1211 <td class="left">Age</td> 1212 <td class="left"><a href="p6-cache.html#header.age" title="Age">Section 3.1</a> of <a href="#Part6" id="rfc.xref.Part6.3"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a></td> 1213 </tr> 1214 <tr> 1215 <td class="left">Allow</td> 1216 <td class="left"><a href="#header.allow" id="rfc.xref.header.allow.2" title="Allow">Section 9.1</a></td> 1217 </tr> 1218 <tr> 1219 <td class="left">ETag</td> 1220 <td class="left"><a href="p4-conditional.html#header.etag" title="ETag">Section 2.3</a> of <a href="#Part4" id="rfc.xref.Part4.8"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a></td> 1221 </tr> 1222 <tr> 1223 <td class="left">Location</td> 1224 <td class="left"><a href="#header.location" id="rfc.xref.header.location.1" title="Location">Section 9.4</a></td> 1225 </tr> 1226 <tr> 1227 <td class="left">Proxy-Authenticate</td> 1228 <td class="left"><a href="p7-auth.html#header.proxy-authenticate" title="Proxy-Authenticate">Section 4.2</a> of <a href="#Part7" id="rfc.xref.Part7.6"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a></td> 1229 </tr> 1230 <tr> 1231 <td class="left">Retry-After</td> 1232 <td class="left"><a href="#header.retry-after" id="rfc.xref.header.retry-after.1" title="Retry-After">Section 9.7</a></td> 1233 </tr> 1234 <tr> 1235 <td class="left">Server</td> 1236 <td class="left"><a href="#header.server" id="rfc.xref.header.server.1" title="Server">Section 9.8</a></td> 1237 </tr> 1238 <tr> 1239 <td class="left">Vary</td> 1240 <td class="left"><a href="p6-cache.html#header.vary" title="Vary">Section 3.5</a> of <a href="#Part6" id="rfc.xref.Part6.4"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a></td> 1241 </tr> 1242 <tr> 1243 <td class="left">WWW-Authenticate</td> 1244 <td class="left"><a href="p7-auth.html#header.www-authenticate" title="WWW-Authenticate">Section 4.4</a> of <a href="#Part7" id="rfc.xref.Part7.7"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a></td> 1245 </tr> 1246 </tbody> 1247 </table> 1248 </div> 1249 <h1 id="rfc.section.6"><a href="#rfc.section.6">6.</a> <a id="representation" href="#representation">Representation</a></h1> 1250 <p id="rfc.section.6.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 1250 <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.4"><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). 1251 </p> 1252 <h1 id="rfc.section.5"><a href="#rfc.section.5">5.</a> <a id="representation" href="#representation">Representation</a></h1> 1253 <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 1251 1254 of metadata (representation header fields) and data (representation body). When a complete or partial representation is enclosed 1252 1255 in an HTTP message, it is referred to as the payload of the message. HTTP representations are defined in <a href="#Part3" id="rfc.xref.Part3.5"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>. 1253 1256 </p> 1254 <p id="rfc.section. 6.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.20"><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 applied1257 <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.20"><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 1255 1258 to ensure safe and proper transfer of the message. 1256 1259 </p> 1257 <h2 id="rfc.section. 6.1"><a href="#rfc.section.6.1">6.1</a> <a id="identifying.response.associated.with.representation" href="#identifying.response.associated.with.representation">Identifying the Resource Associated with a Representation</a></h2>1258 <p id="rfc.section. 6.1.p.1">It is sometimes necessary to determine an identifier for the resource associated with a representation.</p>1259 <p id="rfc.section. 6.1.p.2">An HTTP request representation, when present, is always associated with an anonymous (i.e., unidentified) resource.</p>1260 <p id="rfc.section. 6.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 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.21"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). However, this is not always the case. To determine the URI of the resource a response is associated with, the following1260 <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> 1261 <p id="rfc.section.5.1.p.1">It is sometimes necessary to determine an identifier for the resource associated with a representation.</p> 1262 <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> 1263 <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 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.21"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). However, this is not always the case. To determine the URI of the resource a response is associated with, the following 1261 1264 rules are used (with the first applicable one being selected): 1262 1265 </p> … … 1277 1280 <li>Otherwise, the response is a representation of an anonymous (i.e., unidentified) resource.</li> 1278 1281 </ol> 1279 <p id="rfc.section. 6.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 like1282 <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 1280 1283 cache invalidation.]</span> 1281 1284 </p> 1282 <h1 id="rfc.section. 7"><a href="#rfc.section.7">7.</a> <a id="method.definitions" href="#method.definitions">Method Definitions</a></h1>1283 <p id="rfc.section. 7.p.1">The set of common request methods for HTTP/1.1 is defined below. Although this set can be expanded, additional methods cannot1285 <h1 id="rfc.section.6"><a href="#rfc.section.6">6.</a> <a id="method.definitions" href="#method.definitions">Method Definitions</a></h1> 1286 <p id="rfc.section.6.p.1">The set of common request methods for HTTP/1.1 is defined below. Although this set can be expanded, additional methods cannot 1284 1287 be assumed to share the same semantics for separately extended clients and servers. 1285 1288 </p> 1286 <h2 id="rfc.section. 7.1"><a href="#rfc.section.7.1">7.1</a> <a id="safe.and.idempotent" href="#safe.and.idempotent">Safe and Idempotent Methods</a></h2>1289 <h2 id="rfc.section.6.1"><a href="#rfc.section.6.1">6.1</a> <a id="safe.and.idempotent" href="#safe.and.idempotent">Safe and Idempotent Methods</a></h2> 1287 1290 <div id="rfc.iref.s.1"></div> 1288 <h3 id="rfc.section. 7.1.1"><a href="#rfc.section.7.1.1">7.1.1</a> <a id="safe.methods" href="#safe.methods">Safe Methods</a></h3>1289 <p id="rfc.section. 7.1.1.p.1">Implementors need to be aware that the software represents the user in their interactions over the Internet, and need to allow1291 <h3 id="rfc.section.6.1.1"><a href="#rfc.section.6.1.1">6.1.1</a> <a id="safe.methods" href="#safe.methods">Safe Methods</a></h3> 1292 <p id="rfc.section.6.1.1.p.1">Implementors need to be aware that the software represents the user in their interactions over the Internet, and need to allow 1290 1293 the user to be aware of any actions they take which might have an unexpected significance to themselves or others. 1291 1294 </p> 1292 <p id="rfc.section. 7.1.1.p.2">In particular, the convention has been established that the GET, HEAD, OPTIONS, and TRACE request methods <em class="bcp14">SHOULD NOT</em> have the significance of taking an action other than retrieval. These request methods ought to be considered "<dfn id="safe">safe</dfn>". This allows user agents to represent other methods, such as POST, PUT and DELETE, in a special way, so that the user is1295 <p id="rfc.section.6.1.1.p.2">In particular, the convention has been established that the GET, HEAD, OPTIONS, and TRACE request methods <em class="bcp14">SHOULD NOT</em> have the significance of taking an action other than retrieval. These request methods ought to be considered "<dfn id="safe">safe</dfn>". This allows user agents to represent other methods, such as POST, PUT and DELETE, in a special way, so that the user is 1293 1296 made aware of the fact that a possibly unsafe action is being requested. 1294 1297 </p> 1295 <p id="rfc.section. 7.1.1.p.3">Naturally, it is not possible to ensure that the server does not generate side-effects as a result of performing a GET request;1298 <p id="rfc.section.6.1.1.p.3">Naturally, it is not possible to ensure that the server does not generate side-effects as a result of performing a GET request; 1296 1299 in fact, some dynamic resources consider that a feature. The important distinction here is that the user did not request the 1297 1300 side-effects, so therefore cannot be held accountable for them. 1298 1301 </p> 1299 1302 <div id="rfc.iref.i.1"></div> 1300 <h3 id="rfc.section. 7.1.2"><a href="#rfc.section.7.1.2">7.1.2</a> <a id="idempotent.methods" href="#idempotent.methods">Idempotent Methods</a></h3>1301 <p id="rfc.section. 7.1.2.p.1">Request methods can also have the property of "idempotence" in that, aside from error or expiration issues, the intended effect1303 <h3 id="rfc.section.6.1.2"><a href="#rfc.section.6.1.2">6.1.2</a> <a id="idempotent.methods" href="#idempotent.methods">Idempotent Methods</a></h3> 1304 <p id="rfc.section.6.1.2.p.1">Request methods can also have the property of "idempotence" in that, aside from error or expiration issues, the intended effect 1302 1305 of multiple identical requests is the same as for a single request. PUT, DELETE, and all safe request methods are idempotent. 1303 1306 It is important to note that idempotence refers only to changes requested by the client: a server is free to change its state 1304 1307 due to multiple requests for the purpose of tracking those requests, versioning of results, etc. 1305 1308 </p> 1306 <h2 id="rfc.section. 7.2"><a href="#rfc.section.7.2">7.2</a> <a id="OPTIONS" href="#OPTIONS">OPTIONS</a></h2>1309 <h2 id="rfc.section.6.2"><a href="#rfc.section.6.2">6.2</a> <a id="OPTIONS" href="#OPTIONS">OPTIONS</a></h2> 1307 1310 <div id="rfc.iref.o.1"></div> 1308 1311 <div id="rfc.iref.m.1"></div> 1309 <p id="rfc.section. 7.2.p.1">The OPTIONS method requests information about the communication options available on the request/response chain identified1312 <p id="rfc.section.6.2.p.1">The OPTIONS method requests information about the communication options available on the request/response chain identified 1310 1313 by the effective request URI. This method allows a client to determine the options and/or requirements associated with a resource, 1311 1314 or the capabilities of a server, without implying a resource action or initiating a resource retrieval. 1312 1315 </p> 1313 <p id="rfc.section. 7.2.p.2">Responses to the OPTIONS method are not cacheable.</p>1314 <p id="rfc.section. 7.2.p.3">If the OPTIONS request includes a message-body (as indicated by the presence of Content-Length or Transfer-Encoding), then1316 <p id="rfc.section.6.2.p.2">Responses to the OPTIONS method are not cacheable.</p> 1317 <p id="rfc.section.6.2.p.3">If the OPTIONS request includes a message-body (as indicated by the presence of Content-Length or Transfer-Encoding), then 1315 1318 the media type <em class="bcp14">MUST</em> be indicated by a Content-Type field. Although this specification does not define any use for such a body, future extensions 1316 1319 to HTTP might use the OPTIONS body to make more detailed queries on the server. 1317 1320 </p> 1318 <p id="rfc.section. 7.2.p.4">If the request-target is an asterisk ("*"), the OPTIONS request is intended to apply to the server in general rather than1321 <p id="rfc.section.6.2.p.4">If the request-target is an asterisk ("*"), the OPTIONS request is intended to apply to the server in general rather than 1319 1322 to a specific resource. Since a server's communication options typically depend on the resource, the "*" request is only useful 1320 1323 as a "ping" or "no-op" type of method; it does nothing beyond allowing the client to test the capabilities of the server. 1321 1324 For example, this can be used to test a proxy for HTTP/1.1 compliance (or lack thereof). 1322 1325 </p> 1323 <p id="rfc.section. 7.2.p.5">If the request-target is not an asterisk, the OPTIONS request applies only to the options that are available when communicating1326 <p id="rfc.section.6.2.p.5">If the request-target is not an asterisk, the OPTIONS request applies only to the options that are available when communicating 1324 1327 with that resource. 1325 1328 </p> 1326 <p id="rfc.section. 7.2.p.6">A 200 response <em class="bcp14">SHOULD</em> include any header fields that indicate optional features implemented by the server and applicable to that resource (e.g.,1329 <p id="rfc.section.6.2.p.6">A 200 response <em class="bcp14">SHOULD</em> include any header fields that indicate optional features implemented by the server and applicable to that resource (e.g., 1327 1330 Allow), possibly including extensions not defined by this specification. The response body, if any, <em class="bcp14">SHOULD</em> also include information about the communication options. The format for such a body is not defined by this specification, 1328 1331 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". 1329 1332 </p> 1330 <p id="rfc.section. 7.2.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.2" title="Max-Forwards">Section 9.5</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.1331 </p> 1332 <h2 id="rfc.section. 7.3"><a href="#rfc.section.7.3">7.3</a> <a id="GET" href="#GET">GET</a></h2>1333 <p id="rfc.section.6.2.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.2" title="Max-Forwards">Section 8.5</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. 1334 </p> 1335 <h2 id="rfc.section.6.3"><a href="#rfc.section.6.3">6.3</a> <a id="GET" href="#GET">GET</a></h2> 1333 1336 <div id="rfc.iref.g.5"></div> 1334 1337 <div id="rfc.iref.m.2"></div> 1335 <p id="rfc.section. 7.3.p.1">The GET method requests transfer of a current representation of the target resource.</p>1336 <p id="rfc.section. 7.3.p.2">If the target resource is a data-producing process, it is the produced data which shall be returned as the representation1338 <p id="rfc.section.6.3.p.1">The GET method requests transfer of a current representation of the target resource.</p> 1339 <p id="rfc.section.6.3.p.2">If the target resource is a data-producing process, it is the produced data which shall be returned as the representation 1337 1340 in the response and not the source text of the process, unless that text happens to be the output of the process. 1338 1341 </p> 1339 <p id="rfc.section. 7.3.p.3">The semantics of the GET method change to a "conditional GET" if the request message includes an If-Modified-Since, If-Unmodified-Since,1342 <p id="rfc.section.6.3.p.3">The semantics of the GET method change to a "conditional GET" if the request message includes an If-Modified-Since, If-Unmodified-Since, 1340 1343 If-Match, If-None-Match, or If-Range header field. A conditional GET requests that the representation be transferred only 1341 1344 under the circumstances described by the conditional header field(s). The conditional GET request is intended to reduce unnecessary … … 1343 1346 already held by the client. 1344 1347 </p> 1345 <p id="rfc.section. 7.3.p.4">The semantics of the GET method change to a "partial GET" if the request message includes a Range header field. A partial1348 <p id="rfc.section.6.3.p.4">The semantics of the GET method change to a "partial GET" if the request message includes a Range header field. A partial 1346 1349 GET requests that only part of the representation be transferred, as described in <a href="p5-range.html#header.range" title="Range">Section 5.4</a> of <a href="#Part5" id="rfc.xref.Part5.7"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a>. The partial GET request is intended to reduce unnecessary network usage by allowing partially-retrieved representations 1347 1350 to be completed without transferring data already held by the client. 1348 1351 </p> 1349 <p id="rfc.section. 7.3.p.5">Bodies on GET requests have no defined semantics. Note that sending a body on a GET request might cause some existing implementations1352 <p id="rfc.section.6.3.p.5">Bodies on GET requests have no defined semantics. Note that sending a body on a GET request might cause some existing implementations 1350 1353 to reject the request. 1351 1354 </p> 1352 <p id="rfc.section. 7.3.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.5"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>).1353 </p> 1354 <p id="rfc.section. 7.3.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.1355 </p> 1356 <h2 id="rfc.section. 7.4"><a href="#rfc.section.7.4">7.4</a> <a id="HEAD" href="#HEAD">HEAD</a></h2>1355 <p id="rfc.section.6.3.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.5"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1356 </p> 1357 <p id="rfc.section.6.3.p.7">See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 10.2</a> for security considerations when used for forms. 1358 </p> 1359 <h2 id="rfc.section.6.4"><a href="#rfc.section.6.4">6.4</a> <a id="HEAD" href="#HEAD">HEAD</a></h2> 1357 1360 <div id="rfc.iref.h.1"></div> 1358 1361 <div id="rfc.iref.m.3"></div> 1359 <p id="rfc.section. 7.4.p.1">The HEAD method is identical to GET except that the server <em class="bcp14">MUST NOT</em> return a message-body in the response. The metadata contained in the HTTP header fields in response to a HEAD request <em class="bcp14">SHOULD</em> be identical to the information sent in response to a GET request. This method can be used for obtaining metadata about the1362 <p id="rfc.section.6.4.p.1">The HEAD method is identical to GET except that the server <em class="bcp14">MUST NOT</em> return a message-body in the response. The metadata contained in the HTTP header fields in response to a HEAD request <em class="bcp14">SHOULD</em> be identical to the information sent in response to a GET request. This method can be used for obtaining metadata about the 1360 1363 representation implied by the request without transferring the representation body. This method is often used for testing 1361 1364 hypertext links for validity, accessibility, and recent modification. 1362 1365 </p> 1363 <p id="rfc.section. 7.4.p.2">The response to a HEAD request is cacheable and <em class="bcp14">MAY</em> be used to satisfy a subsequent HEAD request; see <a href="#Part6" id="rfc.xref.Part6.6"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>. It also <em class="bcp14">MAY</em> be used to update a previously cached representation from that resource; if the new field values indicate that the cached1366 <p id="rfc.section.6.4.p.2">The response to a HEAD request is cacheable and <em class="bcp14">MAY</em> be used to satisfy a subsequent HEAD request; see <a href="#Part6" id="rfc.xref.Part6.6"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>. It also <em class="bcp14">MAY</em> be used to update a previously cached representation from that resource; if the new field values indicate that the cached 1364 1367 representation differs from the current representation (as would be indicated by a change in Content-Length, ETag or Last-Modified), 1365 1368 then the cache <em class="bcp14">MUST</em> treat the cache entry as stale. 1366 1369 </p> 1367 <p id="rfc.section. 7.4.p.3">Bodies on HEAD requests have no defined semantics. Note that sending a body on a HEAD request might cause some existing implementations1370 <p id="rfc.section.6.4.p.3">Bodies on HEAD requests have no defined semantics. Note that sending a body on a HEAD request might cause some existing implementations 1368 1371 to reject the request. 1369 1372 </p> 1370 1373 <div id="rfc.iref.p.1"></div> 1371 1374 <div id="rfc.iref.m.4"></div> 1372 <h2 id="rfc.section. 7.5"><a href="#rfc.section.7.5">7.5</a> <a id="POST" href="#POST">POST</a></h2>1373 <p id="rfc.section. 7.5.p.1">The POST method requests that the origin server accept the representation enclosed in the request as data to be processed1375 <h2 id="rfc.section.6.5"><a href="#rfc.section.6.5">6.5</a> <a id="POST" href="#POST">POST</a></h2> 1376 <p id="rfc.section.6.5.p.1">The POST method requests that the origin server accept the representation enclosed in the request as data to be processed 1374 1377 by the target resource. POST is designed to allow a uniform method to cover the following functions: 1375 1378 </p> … … 1380 1383 <li>Extending a database through an append operation.</li> 1381 1384 </ul> 1382 <p id="rfc.section. 7.5.p.2">The actual function performed by the POST method is determined by the server and is usually dependent on the effective request1385 <p id="rfc.section.6.5.p.2">The actual function performed by the POST method is determined by the server and is usually dependent on the effective request 1383 1386 URI. 1384 1387 </p> 1385 <p id="rfc.section. 7.5.p.3">The action performed by the POST method might not result in a resource that can be identified by a URI. In this case, either1388 <p id="rfc.section.6.5.p.3">The action performed by the POST method might not result in a resource that can be identified by a URI. In this case, either 1386 1389 200 (OK) or 204 (No Content) is the appropriate response status code, depending on whether or not the response includes a 1387 1390 representation that describes the result. 1388 1391 </p> 1389 <p id="rfc.section. 7.5.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, and1390 a Location header field (see <a href="#header.location" id="rfc.xref.header.location.2" title="Location">Section 9.4</a>).1391 </p> 1392 <p id="rfc.section. 7.5.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.7"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). A cached POST response with a Content-Location header field (see <a href="p3-payload.html#header.content-location" title="Content-Location">Section 6.7</a> of <a href="#Part3" id="rfc.xref.Part3.6"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>) whose value is the effective Request URI <em class="bcp14">MAY</em> be used to satisfy subsequent GET and HEAD requests.1393 </p> 1394 <p id="rfc.section. 7.5.p.6">Note that POST caching is not widely implemented. However, the 303 (See Other) response can be used to direct the user agent1392 <p id="rfc.section.6.5.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 1393 a Location header field (see <a href="#header.location" id="rfc.xref.header.location.2" title="Location">Section 8.4</a>). 1394 </p> 1395 <p id="rfc.section.6.5.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.7"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). A cached POST response with a Content-Location header field (see <a href="p3-payload.html#header.content-location" title="Content-Location">Section 6.7</a> of <a href="#Part3" id="rfc.xref.Part3.6"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>) whose value is the effective Request URI <em class="bcp14">MAY</em> be used to satisfy subsequent GET and HEAD requests. 1396 </p> 1397 <p id="rfc.section.6.5.p.6">Note that POST caching is not widely implemented. However, the 303 (See Other) response can be used to direct the user agent 1395 1398 to retrieve a cacheable resource. 1396 1399 </p> 1397 1400 <div id="rfc.iref.p.2"></div> 1398 1401 <div id="rfc.iref.m.5"></div> 1399 <h2 id="rfc.section. 7.6"><a href="#rfc.section.7.6">7.6</a> <a id="PUT" href="#PUT">PUT</a></h2>1400 <p id="rfc.section. 7.6.p.1">The PUT method requests that the state of the target resource be created or replaced with the state defined by the representation1402 <h2 id="rfc.section.6.6"><a href="#rfc.section.6.6">6.6</a> <a id="PUT" href="#PUT">PUT</a></h2> 1403 <p id="rfc.section.6.6.p.1">The PUT method requests that the state of the target resource be created or replaced with the state defined by the representation 1401 1404 enclosed in the request message payload. A successful PUT of a given representation would suggest that a subsequent GET on 1402 1405 that same target resource will result in an equivalent representation being returned in a 200 (OK) response. However, there … … 1405 1408 response only implies that the user agent's intent was achieved at the time of its processing by the origin server. 1406 1409 </p> 1407 <p id="rfc.section. 7.6.p.2">If the target resource does not have a current representation and the PUT successfully creates one, then the origin server <em class="bcp14">MUST</em> inform the user agent by sending a 201 (Created) response. If the target resource does have a current representation and that1410 <p id="rfc.section.6.6.p.2">If the target resource does not have a current representation and the PUT successfully creates one, then the origin server <em class="bcp14">MUST</em> inform the user agent by sending a 201 (Created) response. If the target resource does have a current representation and that 1408 1411 representation is successfully modified in accordance with the state of the enclosed representation, then either a 200 (OK) 1409 1412 or 204 (No Content) response <em class="bcp14">SHOULD</em> be sent to indicate successful completion of the request. 1410 1413 </p> 1411 <p id="rfc.section. 7.6.p.3">Unrecognized header fields <em class="bcp14">SHOULD</em> be ignored (i.e., not saved as part of the resource state).1412 </p> 1413 <p id="rfc.section. 7.6.p.4">An origin server <em class="bcp14">SHOULD</em> verify that the PUT representation is consistent with any constraints which the server has for the target resource that cannot1414 <p id="rfc.section.6.6.p.3">Unrecognized header fields <em class="bcp14">SHOULD</em> be ignored (i.e., not saved as part of the resource state). 1415 </p> 1416 <p id="rfc.section.6.6.p.4">An origin server <em class="bcp14">SHOULD</em> verify that the PUT representation is consistent with any constraints which the server has for the target resource that cannot 1414 1417 or will not be changed by the PUT. This is particularly important when the origin server uses internal configuration information 1415 1418 related to the URI in order to set the values for representation metadata on GET responses. When a PUT representation is inconsistent … … 1419 1422 values. 1420 1423 </p> 1421 <p id="rfc.section. 7.6.p.5">For example, if the target resource is configured to always have a Content-Type of "text/html" and the representation being1424 <p id="rfc.section.6.6.p.5">For example, if the target resource is configured to always have a Content-Type of "text/html" and the representation being 1422 1425 PUT has a Content-Type of "image/jpeg", then the origin server <em class="bcp14">SHOULD</em> do one of: (a) reconfigure the target resource to reflect the new media type; (b) transform the PUT representation to a format 1423 1426 consistent with that of the resource before saving it as the new resource state; or, (c) reject the request with a 415 response … … 1425 1428 be a suitable target for the new representation. 1426 1429 </p> 1427 <p id="rfc.section. 7.6.p.6">HTTP does not define exactly how a PUT method affects the state of an origin server beyond what can be expressed by the intent1430 <p id="rfc.section.6.6.p.6">HTTP does not define exactly how a PUT method affects the state of an origin server beyond what can be expressed by the intent 1428 1431 of the user agent request and the semantics of the origin server response. It does not define what a resource might be, in 1429 1432 any sense of that word, beyond the interface provided via HTTP. It does not define how resource state is "stored", nor how … … 1432 1435 the server. 1433 1436 </p> 1434 <p id="rfc.section. 7.6.p.7">The fundamental difference between the POST and PUT methods is highlighted by the different intent for the target resource.1437 <p id="rfc.section.6.6.p.7">The fundamental difference between the POST and PUT methods is highlighted by the different intent for the target resource. 1435 1438 The target resource in a POST request is intended to handle the enclosed representation as a data-accepting process, such 1436 1439 as for a gateway to some other protocol or a document that accepts annotations. In contrast, the target resource in a PUT … … 1438 1441 and visible to intermediaries, even though the exact effect is only known by the origin server. 1439 1442 </p> 1440 <p id="rfc.section. 7.6.p.8">Proper interpretation of a PUT request presumes that the user agent knows what target resource is desired. A service that1443 <p id="rfc.section.6.6.p.8">Proper interpretation of a PUT request presumes that the user agent knows what target resource is desired. A service that 1441 1444 is intended to select a proper URI on behalf of the client, after receiving a state-changing request, <em class="bcp14">SHOULD</em> be implemented using the POST method rather than PUT. If the origin server will not make the requested PUT state change to 1442 1445 the target resource and instead wishes to have it applied to a different resource, such as when the resource has been moved 1443 1446 to a different URI, then the origin server <em class="bcp14">MUST</em> send a 301 (Moved Permanently) response; the user agent <em class="bcp14">MAY</em> then make its own decision regarding whether or not to redirect the request. 1444 1447 </p> 1445 <p id="rfc.section. 7.6.p.9">A PUT request applied to the target resource <em class="bcp14">MAY</em> have side-effects on other resources. For example, an article might have a URI for identifying "the current version" (a resource)1448 <p id="rfc.section.6.6.p.9">A PUT request applied to the target resource <em class="bcp14">MAY</em> have side-effects on other resources. For example, an article might have a URI for identifying "the current version" (a resource) 1446 1449 which is separate from the URIs identifying each particular version (different resources that at one point shared the same 1447 1450 state as the current version resource). A successful PUT request on "the current version" URI might therefore create a new … … 1449 1452 the related resources. 1450 1453 </p> 1451 <p id="rfc.section. 7.6.p.10">An origin server <em class="bcp14">SHOULD</em> reject any PUT request that contains a Content-Range header field, since it might be misinterpreted as partial content (or1454 <p id="rfc.section.6.6.p.10">An origin server <em class="bcp14">SHOULD</em> reject any PUT request that contains a Content-Range header field, since it might be misinterpreted as partial content (or 1452 1455 might be partial content that is being mistakenly PUT as a full representation). Partial content updates are possible by targeting 1453 1456 a separately identified resource with state that overlaps a portion of the larger resource, or by using a different method 1454 1457 that has been specifically defined for partial updates (for example, the PATCH method defined in <a href="#RFC5789" id="rfc.xref.RFC5789.1"><cite title="PATCH Method for HTTP">[RFC5789]</cite></a>). 1455 1458 </p> 1456 <p id="rfc.section. 7.6.p.11">Responses to the PUT method are not cacheable. If a PUT request passes through a cache that has one or more stored responses1459 <p id="rfc.section.6.6.p.11">Responses to the PUT method are not cacheable. If a PUT request passes through a cache that has one or more stored responses 1457 1460 for the effective request URI, those stored responses will be invalidated (see <a href="p6-cache.html#invalidation.after.updates.or.deletions" title="Request Methods that Invalidate">Section 2.5</a> of <a href="#Part6" id="rfc.xref.Part6.8"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1458 1461 </p> 1459 1462 <div id="rfc.iref.d.1"></div> 1460 1463 <div id="rfc.iref.m.6"></div> 1461 <h2 id="rfc.section. 7.7"><a href="#rfc.section.7.7">7.7</a> <a id="DELETE" href="#DELETE">DELETE</a></h2>1462 <p id="rfc.section. 7.7.p.1">The DELETE method requests that the origin server delete the target resource. This method <em class="bcp14">MAY</em> be overridden by human intervention (or other means) on the origin server. The client cannot be guaranteed that the operation1464 <h2 id="rfc.section.6.7"><a href="#rfc.section.6.7">6.7</a> <a id="DELETE" href="#DELETE">DELETE</a></h2> 1465 <p id="rfc.section.6.7.p.1">The DELETE method requests that the origin server delete the target resource. This method <em class="bcp14">MAY</em> be overridden by human intervention (or other means) on the origin server. The client cannot be guaranteed that the operation 1463 1466 has been carried out, even if the status code returned from the origin server indicates that the action has been completed 1464 1467 successfully. However, the server <em class="bcp14">SHOULD NOT</em> indicate success unless, at the time the response is given, it intends to delete the resource or move it to an inaccessible 1465 1468 location. 1466 1469 </p> 1467 <p id="rfc.section. 7.7.p.2">A successful response <em class="bcp14">SHOULD</em> be 200 (OK) if the response includes an representation describing the status, 202 (Accepted) if the action has not yet been1470 <p id="rfc.section.6.7.p.2">A successful response <em class="bcp14">SHOULD</em> be 200 (OK) if the response includes an representation describing the status, 202 (Accepted) if the action has not yet been 1468 1471 enacted, or 204 (No Content) if the action has been enacted but the response does not include a representation. 1469 1472 </p> 1470 <p id="rfc.section. 7.7.p.3">Bodies on DELETE requests have no defined semantics. Note that sending a body on a DELETE request might cause some existing1473 <p id="rfc.section.6.7.p.3">Bodies on DELETE requests have no defined semantics. Note that sending a body on a DELETE request might cause some existing 1471 1474 implementations to reject the request. 1472 1475 </p> 1473 <p id="rfc.section. 7.7.p.4">Responses to the DELETE method are not cacheable. If a DELETE request passes through a cache that has one or more stored responses1476 <p id="rfc.section.6.7.p.4">Responses to the DELETE method are not cacheable. If a DELETE request passes through a cache that has one or more stored responses 1474 1477 for the effective request URI, those stored responses will be invalidated (see <a href="p6-cache.html#invalidation.after.updates.or.deletions" title="Request Methods that Invalidate">Section 2.5</a> of <a href="#Part6" id="rfc.xref.Part6.9"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1475 1478 </p> 1476 <h2 id="rfc.section. 7.8"><a href="#rfc.section.7.8">7.8</a> <a id="TRACE" href="#TRACE">TRACE</a></h2>1479 <h2 id="rfc.section.6.8"><a href="#rfc.section.6.8">6.8</a> <a id="TRACE" href="#TRACE">TRACE</a></h2> 1477 1480 <div id="rfc.iref.t.1"></div> 1478 1481 <div id="rfc.iref.m.7"></div> 1479 <p id="rfc.section. 7.8.p.1">The TRACE method requests a remote, application-layer loop-back of the request message. The final recipient of the request <em class="bcp14">SHOULD</em> reflect the message received back to the client as the message-body of a 200 (OK) response. The final recipient is either1480 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.3" title="Max-Forwards">Section 9.5</a>). A TRACE request <em class="bcp14">MUST NOT</em> include a message-body.1481 </p> 1482 <p id="rfc.section. 7.8.p.2">TRACE allows the client to see what is being received at the other end of the request chain and use that data for testing1482 <p id="rfc.section.6.8.p.1">The TRACE method requests a remote, application-layer loop-back of the request message. The final recipient of the request <em class="bcp14">SHOULD</em> reflect the message received back to the client as the message-body of a 200 (OK) response. The final recipient is either 1483 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.3" title="Max-Forwards">Section 8.5</a>). A TRACE request <em class="bcp14">MUST NOT</em> include a message-body. 1484 </p> 1485 <p id="rfc.section.6.8.p.2">TRACE allows the client to see what is being received at the other end of the request chain and use that data for testing 1483 1486 or diagnostic information. The value of the Via header field (<a href="p1-messaging.html#header.via" title="Via">Section 9.9</a> of <a href="#Part1" id="rfc.xref.Part1.22"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) is of particular interest, since it acts as a trace of the request chain. Use of the Max-Forwards header field allows the 1484 1487 client to limit the length of the request chain, which is useful for testing a chain of proxies forwarding messages in an 1485 1488 infinite loop. 1486 1489 </p> 1487 <p id="rfc.section. 7.8.p.3">If the request is valid, the response <em class="bcp14">SHOULD</em> have a Content-Type of "message/http" (see <a href="p1-messaging.html#internet.media.type.message.http" title="Internet Media Type message/http">Section 10.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.23"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and contain a message-body that encloses a copy of the entire request message. Responses to the TRACE method are not cacheable.1490 <p id="rfc.section.6.8.p.3">If the request is valid, the response <em class="bcp14">SHOULD</em> have a Content-Type of "message/http" (see <a href="p1-messaging.html#internet.media.type.message.http" title="Internet Media Type message/http">Section 10.3.1</a> of <a href="#Part1" id="rfc.xref.Part1.23"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and contain a message-body that encloses a copy of the entire request message. Responses to the TRACE method are not cacheable. 1488 1491 </p> 1489 1492 <div id="rfc.iref.c.1"></div> 1490 1493 <div id="rfc.iref.m.8"></div> 1491 <h2 id="rfc.section. 7.9"><a href="#rfc.section.7.9">7.9</a> <a id="CONNECT" href="#CONNECT">CONNECT</a></h2>1492 <p id="rfc.section. 7.9.p.1">The CONNECT method requests that the proxy establish a tunnel to the request-target and then restrict its behavior to blind1494 <h2 id="rfc.section.6.9"><a href="#rfc.section.6.9">6.9</a> <a id="CONNECT" href="#CONNECT">CONNECT</a></h2> 1495 <p id="rfc.section.6.9.p.1">The CONNECT method requests that the proxy establish a tunnel to the request-target and then restrict its behavior to blind 1493 1496 forwarding of packets until the connection is closed. 1494 1497 </p> 1495 <p id="rfc.section. 7.9.p.2">When using CONNECT, the request-target <em class="bcp14">MUST</em> use the authority form (<a href="p1-messaging.html#request-target" title="request-target">Section 4.1.2</a> of <a href="#Part1" id="rfc.xref.Part1.24"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>); i.e., the request-target consists of only the host name and port number of the tunnel destination, separated by a colon.1498 <p id="rfc.section.6.9.p.2">When using CONNECT, the request-target <em class="bcp14">MUST</em> use the authority form (<a href="p1-messaging.html#request-target" title="request-target">Section 4.1.2</a> of <a href="#Part1" id="rfc.xref.Part1.24"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>); i.e., the request-target consists of only the host name and port number of the tunnel destination, separated by a colon. 1496 1499 For example, 1497 1500 </p> … … 1499 1502 Host: server.example.com:80 1500 1503 1501 </pre><p id="rfc.section. 7.9.p.4">Other HTTP mechanisms can be used normally with the CONNECT method — except end-to-end protocol Upgrade requests, since the1504 </pre><p id="rfc.section.6.9.p.4">Other HTTP mechanisms can be used normally with the CONNECT method — except end-to-end protocol Upgrade requests, since the 1502 1505 tunnel must be established first. 1503 1506 </p> 1504 <p id="rfc.section. 7.9.p.5">For example, proxy authentication might be used to establish the authority to create a tunnel:</p>1507 <p id="rfc.section.6.9.p.5">For example, proxy authentication might be used to establish the authority to create a tunnel:</p> 1505 1508 <div id="rfc.figure.u.6"></div><pre class="text2">CONNECT server.example.com:80 HTTP/1.1 1506 1509 Host: server.example.com:80 1507 1510 Proxy-Authorization: basic aGVsbG86d29ybGQ= 1508 1511 1509 </pre><p id="rfc.section. 7.9.p.7">Bodies on CONNECT requests have no defined semantics. Note that sending a body on a CONNECT request might cause some existing1512 </pre><p id="rfc.section.6.9.p.7">Bodies on CONNECT requests have no defined semantics. Note that sending a body on a CONNECT request might cause some existing 1510 1513 implementations to reject the request. 1511 1514 </p> 1512 <p id="rfc.section. 7.9.p.8">Like any other pipelined HTTP/1.1 request, data to be tunnel may be sent immediately after the blank line. The usual caveats1515 <p id="rfc.section.6.9.p.8">Like any other pipelined HTTP/1.1 request, data to be tunnel may be sent immediately after the blank line. The usual caveats 1513 1516 also apply: data may be discarded if the eventual response is negative, and the connection may be reset with no response if 1514 1517 more than one TCP segment is outstanding. 1515 1518 </p> 1516 <h3 id="rfc.section. 7.9.1"><a href="#rfc.section.7.9.1">7.9.1</a> Establishing a Tunnel with CONNECT1519 <h3 id="rfc.section.6.9.1"><a href="#rfc.section.6.9.1">6.9.1</a> Establishing a Tunnel with CONNECT 1517 1520 </h3> 1518 <p id="rfc.section. 7.9.1.p.1">Any successful (2xx) response to a CONNECT request indicates that the proxy has established a connection to the requested1521 <p id="rfc.section.6.9.1.p.1">Any successful (2xx) response to a CONNECT request indicates that the proxy has established a connection to the requested 1519 1522 host and port, and has switched to tunneling the current connection to that server connection. 1520 1523 </p> 1521 <p id="rfc.section. 7.9.1.p.2">It may be the case that the proxy itself can only reach the requested origin server through another proxy. In this case, the1524 <p id="rfc.section.6.9.1.p.2">It may be the case that the proxy itself can only reach the requested origin server through another proxy. In this case, the 1522 1525 first proxy <em class="bcp14">SHOULD</em> make a CONNECT request of that next proxy, requesting a tunnel to the authority. A proxy <em class="bcp14">MUST NOT</em> respond with any 2xx status code unless it has either a direct or tunnel connection established to the authority. 1523 1526 </p> 1524 <p id="rfc.section. 7.9.1.p.3">An origin server which receives a CONNECT request for itself <em class="bcp14">MAY</em> respond with a 2xx status code to indicate that a connection is established.1525 </p> 1526 <p id="rfc.section. 7.9.1.p.4">If at any point either one of the peers gets disconnected, any outstanding data that came from that peer will be passed to1527 <p id="rfc.section.6.9.1.p.3">An origin server which receives a CONNECT request for itself <em class="bcp14">MAY</em> respond with a 2xx status code to indicate that a connection is established. 1528 </p> 1529 <p id="rfc.section.6.9.1.p.4">If at any point either one of the peers gets disconnected, any outstanding data that came from that peer will be passed to 1527 1530 the other one, and after that also the other connection will be terminated by the proxy. If there is outstanding data to that 1528 1531 peer undelivered, that data will be discarded. 1529 1532 </p> 1530 <h1 id="rfc.section. 8"><a href="#rfc.section.8">8.</a> <a id="status.codes" href="#status.codes">Status Code Definitions</a></h1>1531 <p id="rfc.section. 8.p.1">Each Status-Code is described below, including any metadata required in the response.</p>1532 <h2 id="rfc.section. 8.1"><a href="#rfc.section.8.1">8.1</a> <a id="status.1xx" href="#status.1xx">Informational 1xx</a></h2>1533 <p id="rfc.section. 8.1.p.1">This class of status code indicates a provisional response, consisting only of the Status-Line and optional header fields,1533 <h1 id="rfc.section.7"><a href="#rfc.section.7">7.</a> <a id="status.codes" href="#status.codes">Status Code Definitions</a></h1> 1534 <p id="rfc.section.7.p.1">Each Status-Code is described below, including any metadata required in the response.</p> 1535 <h2 id="rfc.section.7.1"><a href="#rfc.section.7.1">7.1</a> <a id="status.1xx" href="#status.1xx">Informational 1xx</a></h2> 1536 <p id="rfc.section.7.1.p.1">This class of status code indicates a provisional response, consisting only of the Status-Line and optional header fields, 1534 1537 and is terminated by an empty line. There are no required header fields for this class of status code. Since HTTP/1.0 did 1535 1538 not define any 1xx status codes, servers <em class="bcp14">MUST NOT</em> send a 1xx response to an HTTP/1.0 client except under experimental conditions. 1536 1539 </p> 1537 <p id="rfc.section. 8.1.p.2">A client <em class="bcp14">MUST</em> be prepared to accept one or more 1xx status responses prior to a regular response, even if the client does not expect a 1001540 <p id="rfc.section.7.1.p.2">A client <em class="bcp14">MUST</em> be prepared to accept one or more 1xx status responses prior to a regular response, even if the client does not expect a 100 1538 1541 (Continue) status message. Unexpected 1xx status responses <em class="bcp14">MAY</em> be ignored by a user agent. 1539 1542 </p> 1540 <p id="rfc.section. 8.1.p.3">Proxies <em class="bcp14">MUST</em> forward 1xx responses, unless the connection between the proxy and its client has been closed, or unless the proxy itself1543 <p id="rfc.section.7.1.p.3">Proxies <em class="bcp14">MUST</em> forward 1xx responses, unless the connection between the proxy and its client has been closed, or unless the proxy itself 1541 1544 requested the generation of the 1xx response. (For example, if a proxy adds a "Expect: 100-continue" field when it forwards 1542 1545 a request, then it need not forward the corresponding 100 (Continue) response(s).) … … 1544 1547 <div id="rfc.iref.22"></div> 1545 1548 <div id="rfc.iref.s.2"></div> 1546 <h3 id="rfc.section. 8.1.1"><a href="#rfc.section.8.1.1">8.1.1</a> <a id="status.100" href="#status.100">100 Continue</a></h3>1547 <p id="rfc.section. 8.1.1.p.1">The client <em class="bcp14">SHOULD</em> continue with its request. This interim response is used to inform the client that the initial part of the request has been1549 <h3 id="rfc.section.7.1.1"><a href="#rfc.section.7.1.1">7.1.1</a> <a id="status.100" href="#status.100">100 Continue</a></h3> 1550 <p id="rfc.section.7.1.1.p.1">The client <em class="bcp14">SHOULD</em> continue with its request. This interim response is used to inform the client that the initial part of the request has been 1548 1551 received and has not yet been rejected by the server. The client <em class="bcp14">SHOULD</em> continue by sending the remainder of the request or, if the request has already been completed, ignore this response. The 1549 1552 server <em class="bcp14">MUST</em> send a final response after the request has been completed. See <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 7.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.25"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for detailed discussion of the use and handling of this status code. … … 1551 1554 <div id="rfc.iref.23"></div> 1552 1555 <div id="rfc.iref.s.3"></div> 1553 <h3 id="rfc.section. 8.1.2"><a href="#rfc.section.8.1.2">8.1.2</a> <a id="status.101" href="#status.101">101 Switching Protocols</a></h3>1554 <p id="rfc.section. 8.1.2.p.1">The server understands and is willing to comply with the client's request, via the Upgrade message header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 9.8</a> of <a href="#Part1" id="rfc.xref.Part1.26"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>), for a change in the application protocol being used on this connection. The server will switch protocols to those defined1556 <h3 id="rfc.section.7.1.2"><a href="#rfc.section.7.1.2">7.1.2</a> <a id="status.101" href="#status.101">101 Switching Protocols</a></h3> 1557 <p id="rfc.section.7.1.2.p.1">The server understands and is willing to comply with the client's request, via the Upgrade message header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 9.8</a> of <a href="#Part1" id="rfc.xref.Part1.26"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>), for a change in the application protocol being used on this connection. The server will switch protocols to those defined 1555 1558 by the response's Upgrade header field immediately after the empty line which terminates the 101 response. 1556 1559 </p> 1557 <p id="rfc.section. 8.1.2.p.2">The protocol <em class="bcp14">SHOULD</em> be switched only when it is advantageous to do so. For example, switching to a newer version of HTTP is advantageous over1560 <p id="rfc.section.7.1.2.p.2">The protocol <em class="bcp14">SHOULD</em> be switched only when it is advantageous to do so. For example, switching to a newer version of HTTP is advantageous over 1558 1561 older versions, and switching to a real-time, synchronous protocol might be advantageous when delivering resources that use 1559 1562 such features. 1560 1563 </p> 1561 <h2 id="rfc.section. 8.2"><a href="#rfc.section.8.2">8.2</a> <a id="status.2xx" href="#status.2xx">Successful 2xx</a></h2>1562 <p id="rfc.section. 8.2.p.1">This class of status code indicates that the client's request was successfully received, understood, and accepted.</p>1564 <h2 id="rfc.section.7.2"><a href="#rfc.section.7.2">7.2</a> <a id="status.2xx" href="#status.2xx">Successful 2xx</a></h2> 1565 <p id="rfc.section.7.2.p.1">This class of status code indicates that the client's request was successfully received, understood, and accepted.</p> 1563 1566 <div id="rfc.iref.24"></div> 1564 1567 <div id="rfc.iref.s.4"></div> 1565 <h3 id="rfc.section. 8.2.1"><a href="#rfc.section.8.2.1">8.2.1</a> <a id="status.200" href="#status.200">200 OK</a></h3>1566 <p id="rfc.section. 8.2.1.p.1">The request has succeeded. The payload returned with the response is dependent on the method used in the request, for example: </p>1568 <h3 id="rfc.section.7.2.1"><a href="#rfc.section.7.2.1">7.2.1</a> <a id="status.200" href="#status.200">200 OK</a></h3> 1569 <p id="rfc.section.7.2.1.p.1">The request has succeeded. The payload returned with the response is dependent on the method used in the request, for example: </p> 1567 1570 <dl> 1568 1571 <dt>GET</dt> … … 1575 1578 <dd>a representation containing the request message as received by the end server.</dd> 1576 1579 </dl> 1577 <p id="rfc.section. 8.2.1.p.2">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 2.3.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.10"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 200 responses.1580 <p id="rfc.section.7.2.1.p.2">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 2.3.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.10"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 200 responses. 1578 1581 </p> 1579 1582 <div id="rfc.iref.25"></div> 1580 1583 <div id="rfc.iref.s.5"></div> 1581 <h3 id="rfc.section. 8.2.2"><a href="#rfc.section.8.2.2">8.2.2</a> <a id="status.201" href="#status.201">201 Created</a></h3>1582 <p id="rfc.section. 8.2.2.p.1">The request has been fulfilled and has resulted in a new resource being created. The newly created resource can be referenced1584 <h3 id="rfc.section.7.2.2"><a href="#rfc.section.7.2.2">7.2.2</a> <a id="status.201" href="#status.201">201 Created</a></h3> 1585 <p id="rfc.section.7.2.2.p.1">The request has been fulfilled and has resulted in a new resource being created. The newly created resource can be referenced 1583 1586 by the URI(s) returned in the payload of the response, with the most specific URI for the resource given by a Location header 1584 1587 field. The response <em class="bcp14">SHOULD</em> include a payload containing a list of resource characteristics and location(s) from which the user or user agent can choose … … 1586 1589 server <em class="bcp14">MUST</em> create the resource before returning the 201 status code. If the action cannot be carried out immediately, the server <em class="bcp14">SHOULD</em> respond with 202 (Accepted) response instead. 1587 1590 </p> 1588 <p id="rfc.section. 8.2.2.p.2">A 201 response <em class="bcp14">MAY</em> contain an ETag response header field indicating the current value of the entity-tag for the representation of the resource1591 <p id="rfc.section.7.2.2.p.2">A 201 response <em class="bcp14">MAY</em> contain an ETag response header field indicating the current value of the entity-tag for the representation of the resource 1589 1592 just created (see <a href="p4-conditional.html#header.etag" title="ETag">Section 2.3</a> of <a href="#Part4" id="rfc.xref.Part4.9"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>). 1590 1593 </p> 1591 1594 <div id="rfc.iref.26"></div> 1592 1595 <div id="rfc.iref.s.6"></div> 1593 <h3 id="rfc.section. 8.2.3"><a href="#rfc.section.8.2.3">8.2.3</a> <a id="status.202" href="#status.202">202 Accepted</a></h3>1594 <p id="rfc.section. 8.2.3.p.1">The request has been accepted for processing, but the processing has not been completed. The request might or might not eventually1596 <h3 id="rfc.section.7.2.3"><a href="#rfc.section.7.2.3">7.2.3</a> <a id="status.202" href="#status.202">202 Accepted</a></h3> 1597 <p id="rfc.section.7.2.3.p.1">The request has been accepted for processing, but the processing has not been completed. The request might or might not eventually 1595 1598 be acted upon, as it might be disallowed when processing actually takes place. There is no facility for re-sending a status 1596 1599 code from an asynchronous operation such as this. 1597 1600 </p> 1598 <p id="rfc.section. 8.2.3.p.2">The 202 response is intentionally non-committal. Its purpose is to allow a server to accept a request for some other process1601 <p id="rfc.section.7.2.3.p.2">The 202 response is intentionally non-committal. Its purpose is to allow a server to accept a request for some other process 1599 1602 (perhaps a batch-oriented process that is only run once per day) without requiring that the user agent's connection to the 1600 1603 server persist until the process is completed. The representation returned with this response <em class="bcp14">SHOULD</em> include an indication of the request's current status and either a pointer to a status monitor or some estimate of when the … … 1603 1606 <div id="rfc.iref.27"></div> 1604 1607 <div id="rfc.iref.s.7"></div> 1605 <h3 id="rfc.section. 8.2.4"><a href="#rfc.section.8.2.4">8.2.4</a> <a id="status.203" href="#status.203">203 Non-Authoritative Information</a></h3>1606 <p id="rfc.section. 8.2.4.p.1">The representation in the response has been transformed or otherwise modified by a transforming proxy (<a href="p1-messaging.html#intermediaries" title="Intermediaries">Section 2.4</a> of <a href="#Part1" id="rfc.xref.Part1.27"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). Note that the behaviour of transforming intermediaries is controlled by the no-transform Cache-Control directive (<a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 3.2</a> of <a href="#Part6" id="rfc.xref.Part6.11"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>).1607 </p> 1608 <p id="rfc.section. 8.2.4.p.2">This status code is only appropriate when the response status code would have been 200 (OK) otherwise. When the status code1608 <h3 id="rfc.section.7.2.4"><a href="#rfc.section.7.2.4">7.2.4</a> <a id="status.203" href="#status.203">203 Non-Authoritative Information</a></h3> 1609 <p id="rfc.section.7.2.4.p.1">The representation in the response has been transformed or otherwise modified by a transforming proxy (<a href="p1-messaging.html#intermediaries" title="Intermediaries">Section 2.4</a> of <a href="#Part1" id="rfc.xref.Part1.27"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). Note that the behaviour of transforming intermediaries is controlled by the no-transform Cache-Control directive (<a href="p6-cache.html#header.cache-control" title="Cache-Control">Section 3.2</a> of <a href="#Part6" id="rfc.xref.Part6.11"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>). 1610 </p> 1611 <p id="rfc.section.7.2.4.p.2">This status code is only appropriate when the response status code would have been 200 (OK) otherwise. When the status code 1609 1612 before transformation would have been different, the 214 Transformation Applied warn-code (<a href="p6-cache.html#header.warning" title="Warning">Section 3.6</a> of <a href="#Part6" id="rfc.xref.Part6.12"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) is appropriate. 1610 1613 </p> 1611 <p id="rfc.section. 8.2.4.p.3">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 2.3.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.13"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 203 responses.1614 <p id="rfc.section.7.2.4.p.3">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 2.3.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.13"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 203 responses. 1612 1615 </p> 1613 1616 <div id="rfc.iref.28"></div> 1614 1617 <div id="rfc.iref.s.8"></div> 1615 <h3 id="rfc.section. 8.2.5"><a href="#rfc.section.8.2.5">8.2.5</a> <a id="status.204" href="#status.204">204 No Content</a></h3>1616 <p id="rfc.section. 8.2.5.p.1">The 204 (No Content) status code indicates that the server has successfully fulfilled the request and that there is no additional1618 <h3 id="rfc.section.7.2.5"><a href="#rfc.section.7.2.5">7.2.5</a> <a id="status.204" href="#status.204">204 No Content</a></h3> 1619 <p id="rfc.section.7.2.5.p.1">The 204 (No Content) status code indicates that the server has successfully fulfilled the request and that there is no additional 1617 1620 content to return in the response payload body. Metadata in the response header fields refer to the target resource and its 1618 1621 current representation after the requested action. 1619 1622 </p> 1620 <p id="rfc.section. 8.2.5.p.2">For example, if a 204 status code is received in response to a PUT request and the response contains an ETag header field,1623 <p id="rfc.section.7.2.5.p.2">For example, if a 204 status code is received in response to a PUT request and the response contains an ETag header field, 1621 1624 then the PUT was successful and the ETag field-value contains the entity-tag for the new representation of that target resource. 1622 1625 </p> 1623 <p id="rfc.section. 8.2.5.p.3">The 204 response allows a server to indicate that the action has been successfully applied to the target resource while implying1626 <p id="rfc.section.7.2.5.p.3">The 204 response allows a server to indicate that the action has been successfully applied to the target resource while implying 1624 1627 that the user agent <em class="bcp14">SHOULD NOT</em> traverse away from its current "document view" (if any). The server assumes that the user agent will provide some indication 1625 1628 of the success to its user, in accord with its own interface, and apply any new or updated metadata in the response to the 1626 1629 active representation. 1627 1630 </p> 1628 <p id="rfc.section. 8.2.5.p.4">For example, a 204 status code is commonly used with document editing interfaces corresponding to a "save" action, such that1631 <p id="rfc.section.7.2.5.p.4">For example, a 204 status code is commonly used with document editing interfaces corresponding to a "save" action, such that 1629 1632 the document being saved remains available to the user for editing. It is also frequently used with interfaces that expect 1630 1633 automated data transfers to be prevalent, such as within distributed version control systems. 1631 1634 </p> 1632 <p id="rfc.section. 8.2.5.p.5">The 204 response <em class="bcp14">MUST NOT</em> include a message-body, and thus is always terminated by the first empty line after the header fields.1635 <p id="rfc.section.7.2.5.p.5">The 204 response <em class="bcp14">MUST NOT</em> include a message-body, and thus is always terminated by the first empty line after the header fields. 1633 1636 </p> 1634 1637 <div id="rfc.iref.29"></div> 1635 1638 <div id="rfc.iref.s.9"></div> 1636 <h3 id="rfc.section. 8.2.6"><a href="#rfc.section.8.2.6">8.2.6</a> <a id="status.205" href="#status.205">205 Reset Content</a></h3>1637 <p id="rfc.section. 8.2.6.p.1">The server has fulfilled the request and the user agent <em class="bcp14">SHOULD</em> reset the document view which caused the request to be sent. This response is primarily intended to allow input for actions1639 <h3 id="rfc.section.7.2.6"><a href="#rfc.section.7.2.6">7.2.6</a> <a id="status.205" href="#status.205">205 Reset Content</a></h3> 1640 <p id="rfc.section.7.2.6.p.1">The server has fulfilled the request and the user agent <em class="bcp14">SHOULD</em> reset the document view which caused the request to be sent. This response is primarily intended to allow input for actions 1638 1641 to take place via user input, followed by a clearing of the form in which the input is given so that the user can easily initiate 1639 1642 another input action. 1640 1643 </p> 1641 <p id="rfc.section. 8.2.6.p.2">The message-body included with the response <em class="bcp14">MUST</em> be empty. Note that receivers still need to parse the response according to the algorithm defined in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.28"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>.1644 <p id="rfc.section.7.2.6.p.2">The message-body included with the response <em class="bcp14">MUST</em> be empty. Note that receivers still need to parse the response according to the algorithm defined in <a href="p1-messaging.html#message.body" title="Message Body">Section 3.3</a> of <a href="#Part1" id="rfc.xref.Part1.28"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>. 1642 1645 </p> 1643 1646 <div id="rfc.iref.30"></div> 1644 1647 <div id="rfc.iref.s.10"></div> 1645 <h3 id="rfc.section. 8.2.7"><a href="#rfc.section.8.2.7">8.2.7</a> <a id="status.206" href="#status.206">206 Partial Content</a></h3>1646 <p id="rfc.section. 8.2.7.p.1">The server has fulfilled the partial GET request for the resource and the enclosed payload is a partial representation as1648 <h3 id="rfc.section.7.2.7"><a href="#rfc.section.7.2.7">7.2.7</a> <a id="status.206" href="#status.206">206 Partial Content</a></h3> 1649 <p id="rfc.section.7.2.7.p.1">The server has fulfilled the partial GET request for the resource and the enclosed payload is a partial representation as 1647 1650 defined in <a href="p5-range.html#status.206" title="206 Partial Content">Section 3.1</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>. 1648 1651 </p> 1649 <p id="rfc.section. 8.2.7.p.2">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 2.3.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.14"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 206 responses.1650 </p> 1651 <h2 id="rfc.section. 8.3"><a href="#rfc.section.8.3">8.3</a> <a id="status.3xx" href="#status.3xx">Redirection 3xx</a></h2>1652 <p id="rfc.section. 8.3.p.1">This class of status code indicates that further action needs to be taken by the user agent in order to fulfill the request.1652 <p id="rfc.section.7.2.7.p.2">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 2.3.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.14"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 206 responses. 1653 </p> 1654 <h2 id="rfc.section.7.3"><a href="#rfc.section.7.3">7.3</a> <a id="status.3xx" href="#status.3xx">Redirection 3xx</a></h2> 1655 <p id="rfc.section.7.3.p.1">This class of status code indicates that further action needs to be taken by the user agent in order to fulfill the request. 1653 1656 The action required <em class="bcp14">MAY</em> be carried out by the user agent without interaction with the user if and only if the method used in the second request is 1654 known to be "safe", as defined in <a href="#safe.methods" title="Safe Methods">Section 7.1.1</a>. A client <em class="bcp14">SHOULD</em> detect infinite redirection loops, since such loops generate network traffic for each redirection.1655 </p> 1656 <div class="note" id="rfc.section. 8.3.p.2">1657 known to be "safe", as defined in <a href="#safe.methods" title="Safe Methods">Section 6.1.1</a>. A client <em class="bcp14">SHOULD</em> detect infinite redirection loops, since such loops generate network traffic for each redirection. 1658 </p> 1659 <div class="note" id="rfc.section.7.3.p.2"> 1657 1660 <p> <b>Note:</b> An earlier version of this specification recommended a maximum of five redirections (<a href="#RFC2068" id="rfc.xref.RFC2068.1"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2068]</cite></a>, <a href="http://tools.ietf.org/html/rfc2068#section-10.3">Section 10.3</a>). Content developers need to be aware that some clients might implement such a fixed limitation. 1658 1661 </p> … … 1660 1663 <div id="rfc.iref.31"></div> 1661 1664 <div id="rfc.iref.s.11"></div> 1662 <h3 id="rfc.section. 8.3.1"><a href="#rfc.section.8.3.1">8.3.1</a> <a id="status.300" href="#status.300">300 Multiple Choices</a></h3>1663 <p id="rfc.section. 8.3.1.p.1">The target resource has more than one representation, each with its own specific location, and agent-driven negotiation information1665 <h3 id="rfc.section.7.3.1"><a href="#rfc.section.7.3.1">7.3.1</a> <a id="status.300" href="#status.300">300 Multiple Choices</a></h3> 1666 <p id="rfc.section.7.3.1.p.1">The target resource has more than one representation, each with its own specific location, and agent-driven negotiation information 1664 1667 (<a href="p3-payload.html#content.negotiation" title="Content Negotiation">Section 5</a> of <a href="#Part3" id="rfc.xref.Part3.7"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>) is being provided so that the user (or user agent) can select a preferred representation by redirecting its request to that 1665 1668 location. 1666 1669 </p> 1667 <p id="rfc.section. 8.3.1.p.2">Unless it was a HEAD request, the response <em class="bcp14">SHOULD</em> include a representation containing a list of representation metadata and location(s) from which the user or user agent can1670 <p id="rfc.section.7.3.1.p.2">Unless it was a HEAD request, the response <em class="bcp14">SHOULD</em> include a representation containing a list of representation metadata and location(s) from which the user or user agent can 1668 1671 choose the one most appropriate. The data format is specified by the media type given in the Content-Type header field. Depending 1669 1672 upon the format and the capabilities of the user agent, selection of the most appropriate choice <em class="bcp14">MAY</em> be performed automatically. However, this specification does not define any standard for such automatic selection. 1670 1673 </p> 1671 <p id="rfc.section. 8.3.1.p.3">If the server has a preferred choice of representation, it <em class="bcp14">SHOULD</em> include the specific URI for that representation in the Location field; user agents <em class="bcp14">MAY</em> use the Location field value for automatic redirection.1672 </p> 1673 <p id="rfc.section. 8.3.1.p.4">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 2.3.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.15"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 300 responses.1674 <p id="rfc.section.7.3.1.p.3">If the server has a preferred choice of representation, it <em class="bcp14">SHOULD</em> include the specific URI for that representation in the Location field; user agents <em class="bcp14">MAY</em> use the Location field value for automatic redirection. 1675 </p> 1676 <p id="rfc.section.7.3.1.p.4">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 2.3.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.15"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 300 responses. 1674 1677 </p> 1675 1678 <div id="rfc.iref.32"></div> 1676 1679 <div id="rfc.iref.s.12"></div> 1677 <h3 id="rfc.section. 8.3.2"><a href="#rfc.section.8.3.2">8.3.2</a> <a id="status.301" href="#status.301">301 Moved Permanently</a></h3>1678 <p id="rfc.section. 8.3.2.p.1">The target resource has been assigned a new permanent URI and any future references to this resource <em class="bcp14">SHOULD</em> use one of the returned URIs. Clients with link editing capabilities ought to automatically re-link references to the effective1680 <h3 id="rfc.section.7.3.2"><a href="#rfc.section.7.3.2">7.3.2</a> <a id="status.301" href="#status.301">301 Moved Permanently</a></h3> 1681 <p id="rfc.section.7.3.2.p.1">The target resource has been assigned a new permanent URI and any future references to this resource <em class="bcp14">SHOULD</em> use one of the returned URIs. Clients with link editing capabilities ought to automatically re-link references to the effective 1679 1682 request URI to one or more of the new references returned by the server, where possible. 1680 1683 </p> 1681 <p id="rfc.section. 8.3.2.p.2">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 2.3.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.16"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 301 responses.1682 </p> 1683 <p id="rfc.section. 8.3.2.p.3">The new permanent URI <em class="bcp14">SHOULD</em> be given by the Location field in the response. Unless the request method was HEAD, the representation of the response <em class="bcp14">SHOULD</em> contain a short hypertext note with a hyperlink to the new URI(s).1684 </p> 1685 <p id="rfc.section. 8.3.2.p.4">If the 301 status code is received in response to a request method that is known to be "safe", as defined in <a href="#safe.methods" title="Safe Methods">Section 7.1.1</a>, then the request <em class="bcp14">MAY</em> be automatically redirected by the user agent without confirmation. Otherwise, the user agent <em class="bcp14">MUST NOT</em> automatically redirect the request unless it can be confirmed by the user, since this might change the conditions under which1684 <p id="rfc.section.7.3.2.p.2">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 2.3.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.16"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 301 responses. 1685 </p> 1686 <p id="rfc.section.7.3.2.p.3">The new permanent URI <em class="bcp14">SHOULD</em> be given by the Location field in the response. Unless the request method was HEAD, the representation of the response <em class="bcp14">SHOULD</em> contain a short hypertext note with a hyperlink to the new URI(s). 1687 </p> 1688 <p id="rfc.section.7.3.2.p.4">If the 301 status code is received in response to a request method that is known to be "safe", as defined in <a href="#safe.methods" title="Safe Methods">Section 6.1.1</a>, then the request <em class="bcp14">MAY</em> be automatically redirected by the user agent without confirmation. Otherwise, the user agent <em class="bcp14">MUST NOT</em> automatically redirect the request unless it can be confirmed by the user, since this might change the conditions under which 1686 1689 the request was issued. 1687 1690 </p> 1688 <div class="note" id="rfc.section. 8.3.2.p.5">1691 <div class="note" id="rfc.section.7.3.2.p.5"> 1689 1692 <p> <b>Note:</b> When automatically redirecting a POST request after receiving a 301 status code, some existing HTTP/1.0 user agents will erroneously 1690 1693 change it into a GET request. … … 1693 1696 <div id="rfc.iref.33"></div> 1694 1697 <div id="rfc.iref.s.13"></div> 1695 <h3 id="rfc.section. 8.3.3"><a href="#rfc.section.8.3.3">8.3.3</a> <a id="status.302" href="#status.302">302 Found</a></h3>1696 <p id="rfc.section. 8.3.3.p.1">The target resource resides temporarily under a different URI. Since the redirection might be altered on occasion, the client <em class="bcp14">SHOULD</em> continue to use the effective request URI for future requests.1697 </p> 1698 <p id="rfc.section. 8.3.3.p.2">The temporary URI <em class="bcp14">SHOULD</em> be given by the Location field in the response. Unless the request method was HEAD, the representation of the response <em class="bcp14">SHOULD</em> contain a short hypertext note with a hyperlink to the new URI(s).1699 </p> 1700 <p id="rfc.section. 8.3.3.p.3">If the 302 status code is received in response to a request method that is known to be "safe", as defined in <a href="#safe.methods" title="Safe Methods">Section 7.1.1</a>, then the request <em class="bcp14">MAY</em> be automatically redirected by the user agent without confirmation. Otherwise, the user agent <em class="bcp14">MUST NOT</em> automatically redirect the request unless it can be confirmed by the user, since this might change the conditions under which1698 <h3 id="rfc.section.7.3.3"><a href="#rfc.section.7.3.3">7.3.3</a> <a id="status.302" href="#status.302">302 Found</a></h3> 1699 <p id="rfc.section.7.3.3.p.1">The target resource resides temporarily under a different URI. Since the redirection might be altered on occasion, the client <em class="bcp14">SHOULD</em> continue to use the effective request URI for future requests. 1700 </p> 1701 <p id="rfc.section.7.3.3.p.2">The temporary URI <em class="bcp14">SHOULD</em> be given by the Location field in the response. Unless the request method was HEAD, the representation of the response <em class="bcp14">SHOULD</em> contain a short hypertext note with a hyperlink to the new URI(s). 1702 </p> 1703 <p id="rfc.section.7.3.3.p.3">If the 302 status code is received in response to a request method that is known to be "safe", as defined in <a href="#safe.methods" title="Safe Methods">Section 6.1.1</a>, then the request <em class="bcp14">MAY</em> be automatically redirected by the user agent without confirmation. Otherwise, the user agent <em class="bcp14">MUST NOT</em> automatically redirect the request unless it can be confirmed by the user, since this might change the conditions under which 1701 1704 the request was issued. 1702 1705 </p> 1703 <div class="note" id="rfc.section. 8.3.3.p.4">1706 <div class="note" id="rfc.section.7.3.3.p.4"> 1704 1707 <p> <b>Note:</b> HTTP/1.0 (<a href="#RFC1945" id="rfc.xref.RFC1945.1"><cite title="Hypertext Transfer Protocol -- HTTP/1.0">[RFC1945]</cite></a>, <a href="http://tools.ietf.org/html/rfc1945#section-9.3">Section 9.3</a>) and the first version of HTTP/1.1 (<a href="#RFC2068" id="rfc.xref.RFC2068.2"><cite title="Hypertext Transfer Protocol -- HTTP/1.1">[RFC2068]</cite></a>, <a href="http://tools.ietf.org/html/rfc2068#section-10.3.3">Section 10.3.3</a>) specify that the client is not allowed to change the method on the redirected request. However, most existing user agent 1705 1708 implementations treat 302 as if it were a 303 response, performing a GET on the Location field-value regardless of the original … … 1709 1712 <div id="rfc.iref.34"></div> 1710 1713 <div id="rfc.iref.s.14"></div> 1711 <h3 id="rfc.section. 8.3.4"><a href="#rfc.section.8.3.4">8.3.4</a> <a id="status.303" href="#status.303">303 See Other</a></h3>1712 <p id="rfc.section. 8.3.4.p.1">The server directs the user agent to a different resource, indicated by a URI in the Location header field, that provides1714 <h3 id="rfc.section.7.3.4"><a href="#rfc.section.7.3.4">7.3.4</a> <a id="status.303" href="#status.303">303 See Other</a></h3> 1715 <p id="rfc.section.7.3.4.p.1">The server directs the user agent to a different resource, indicated by a URI in the Location header field, that provides 1713 1716 an indirect response to the original request. The user agent <em class="bcp14">MAY</em> perform a GET request on the URI in the Location field in order to obtain a representation corresponding to the response, 1714 1717 be redirected again, or end with an error status. The Location URI is not a substitute reference for the effective request 1715 1718 URI. 1716 1719 </p> 1717 <p id="rfc.section. 8.3.4.p.2">The 303 status code is generally applicable to any HTTP method. It is primarily used to allow the output of a POST action1720 <p id="rfc.section.7.3.4.p.2">The 303 status code is generally applicable to any HTTP method. It is primarily used to allow the output of a POST action 1718 1721 to redirect the user agent to a selected resource, since doing so provides the information corresponding to the POST response 1719 1722 in a form that can be separately identified, bookmarked, and cached independent of the original request. 1720 1723 </p> 1721 <p id="rfc.section. 8.3.4.p.3">A 303 response to a GET request indicates that the requested resource does not have a representation of its own that can be1724 <p id="rfc.section.7.3.4.p.3">A 303 response to a GET request indicates that the requested resource does not have a representation of its own that can be 1722 1725 transferred by the server over HTTP. The Location URI indicates a resource that is descriptive of the target resource, such 1723 1726 that the follow-on representation might be useful to recipients without implying that it adequately represents the target … … 1725 1728 be a useful description are outside the scope of HTTP and thus entirely determined by the URI owner(s). 1726 1729 </p> 1727 <p id="rfc.section. 8.3.4.p.4">Except for responses to a HEAD request, the representation of a 303 response <em class="bcp14">SHOULD</em> contain a short hypertext note with a hyperlink to the Location URI.1730 <p id="rfc.section.7.3.4.p.4">Except for responses to a HEAD request, the representation of a 303 response <em class="bcp14">SHOULD</em> contain a short hypertext note with a hyperlink to the Location URI. 1728 1731 </p> 1729 1732 <div id="rfc.iref.35"></div> 1730 1733 <div id="rfc.iref.s.15"></div> 1731 <h3 id="rfc.section. 8.3.5"><a href="#rfc.section.8.3.5">8.3.5</a> <a id="status.304" href="#status.304">304 Not Modified</a></h3>1732 <p id="rfc.section. 8.3.5.p.1">The response to the request has not been modified since the conditions indicated by the client's conditional GET request,1734 <h3 id="rfc.section.7.3.5"><a href="#rfc.section.7.3.5">7.3.5</a> <a id="status.304" href="#status.304">304 Not Modified</a></h3> 1735 <p id="rfc.section.7.3.5.p.1">The response to the request has not been modified since the conditions indicated by the client's conditional GET request, 1733 1736 as defined in <a href="p4-conditional.html#status.304" title="304 Not Modified">Section 4.1</a> of <a href="#Part4" id="rfc.xref.Part4.10"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>. 1734 1737 </p> 1735 1738 <div id="rfc.iref.36"></div> 1736 1739 <div id="rfc.iref.s.16"></div> 1737 <h3 id="rfc.section. 8.3.6"><a href="#rfc.section.8.3.6">8.3.6</a> <a id="status.305" href="#status.305">305 Use Proxy</a></h3>1738 <p id="rfc.section. 8.3.6.p.1">The 305 status code was defined in a previous version of this specification (see <a href="#changes.from.rfc.2616" title="Changes from RFC 2616">Appendix A</a>), and is now deprecated.1740 <h3 id="rfc.section.7.3.6"><a href="#rfc.section.7.3.6">7.3.6</a> <a id="status.305" href="#status.305">305 Use Proxy</a></h3> 1741 <p id="rfc.section.7.3.6.p.1">The 305 status code was defined in a previous version of this specification (see <a href="#changes.from.rfc.2616" title="Changes from RFC 2616">Appendix A</a>), and is now deprecated. 1739 1742 </p> 1740 1743 <div id="rfc.iref.37"></div> 1741 1744 <div id="rfc.iref.s.17"></div> 1742 <h3 id="rfc.section. 8.3.7"><a href="#rfc.section.8.3.7">8.3.7</a> <a id="status.306" href="#status.306">306 (Unused)</a></h3>1743 <p id="rfc.section. 8.3.7.p.1">The 306 status code was used in a previous version of the specification, is no longer used, and the code is reserved.</p>1745 <h3 id="rfc.section.7.3.7"><a href="#rfc.section.7.3.7">7.3.7</a> <a id="status.306" href="#status.306">306 (Unused)</a></h3> 1746 <p id="rfc.section.7.3.7.p.1">The 306 status code was used in a previous version of the specification, is no longer used, and the code is reserved.</p> 1744 1747 <div id="rfc.iref.38"></div> 1745 1748 <div id="rfc.iref.s.18"></div> 1746 <h3 id="rfc.section. 8.3.8"><a href="#rfc.section.8.3.8">8.3.8</a> <a id="status.307" href="#status.307">307 Temporary Redirect</a></h3>1747 <p id="rfc.section. 8.3.8.p.1">The target resource resides temporarily under a different URI. Since the redirection can change over time, the client <em class="bcp14">SHOULD</em> continue to use the effective request URI for future requests.1748 </p> 1749 <p id="rfc.section. 8.3.8.p.2">The temporary URI <em class="bcp14">SHOULD</em> be given by the Location field in the response. Unless the request method was HEAD, the representation of the response <em class="bcp14">SHOULD</em> contain a short hypertext note with a hyperlink to the new URI(s), since many pre-HTTP/1.1 user agents do not understand the1749 <h3 id="rfc.section.7.3.8"><a href="#rfc.section.7.3.8">7.3.8</a> <a id="status.307" href="#status.307">307 Temporary Redirect</a></h3> 1750 <p id="rfc.section.7.3.8.p.1">The target resource resides temporarily under a different URI. Since the redirection can change over time, the client <em class="bcp14">SHOULD</em> continue to use the effective request URI for future requests. 1751 </p> 1752 <p id="rfc.section.7.3.8.p.2">The temporary URI <em class="bcp14">SHOULD</em> be given by the Location field in the response. Unless the request method was HEAD, the representation of the response <em class="bcp14">SHOULD</em> contain a short hypertext note with a hyperlink to the new URI(s), since many pre-HTTP/1.1 user agents do not understand the 1750 1753 307 status code. Therefore, the note <em class="bcp14">SHOULD</em> contain the information necessary for a user to repeat the original request on the new URI. 1751 1754 </p> 1752 <p id="rfc.section. 8.3.8.p.3">If the 307 status code is received in response to a request method that is known to be "safe", as defined in <a href="#safe.methods" title="Safe Methods">Section 7.1.1</a>, then the request <em class="bcp14">MAY</em> be automatically redirected by the user agent without confirmation. Otherwise, the user agent <em class="bcp14">MUST NOT</em> automatically redirect the request unless it can be confirmed by the user, since this might change the conditions under which1755 <p id="rfc.section.7.3.8.p.3">If the 307 status code is received in response to a request method that is known to be "safe", as defined in <a href="#safe.methods" title="Safe Methods">Section 6.1.1</a>, then the request <em class="bcp14">MAY</em> be automatically redirected by the user agent without confirmation. Otherwise, the user agent <em class="bcp14">MUST NOT</em> automatically redirect the request unless it can be confirmed by the user, since this might change the conditions under which 1753 1756 the request was issued. 1754 1757 </p> 1755 <h2 id="rfc.section. 8.4"><a href="#rfc.section.8.4">8.4</a> <a id="status.4xx" href="#status.4xx">Client Error 4xx</a></h2>1756 <p id="rfc.section. 8.4.p.1">The 4xx class of status code is intended for cases in which the client seems to have erred. Except when responding to a HEAD1758 <h2 id="rfc.section.7.4"><a href="#rfc.section.7.4">7.4</a> <a id="status.4xx" href="#status.4xx">Client Error 4xx</a></h2> 1759 <p id="rfc.section.7.4.p.1">The 4xx class of status code is intended for cases in which the client seems to have erred. Except when responding to a HEAD 1757 1760 request, the server <em class="bcp14">SHOULD</em> include a representation containing an explanation of the error situation, and whether it is a temporary or permanent condition. 1758 1761 These status codes are applicable to any request method. User agents <em class="bcp14">SHOULD</em> display any included representation to the user. 1759 1762 </p> 1760 <p id="rfc.section. 8.4.p.2">If the client is sending data, a server implementation using TCP <em class="bcp14">SHOULD</em> be careful to ensure that the client acknowledges receipt of the packet(s) containing the response, before the server closes1763 <p id="rfc.section.7.4.p.2">If the client is sending data, a server implementation using TCP <em class="bcp14">SHOULD</em> be careful to ensure that the client acknowledges receipt of the packet(s) containing the response, before the server closes 1761 1764 the input connection. If the client continues sending data to the server after the close, the server's TCP stack will send 1762 1765 a reset packet to the client, which might erase the client's unacknowledged input buffers before they can be read and interpreted … … 1765 1768 <div id="rfc.iref.39"></div> 1766 1769 <div id="rfc.iref.s.19"></div> 1767 <h3 id="rfc.section. 8.4.1"><a href="#rfc.section.8.4.1">8.4.1</a> <a id="status.400" href="#status.400">400 Bad Request</a></h3>1768 <p id="rfc.section. 8.4.1.p.1">The server cannot or will not process the request, due to a client error (e.g., malformed syntax).</p>1770 <h3 id="rfc.section.7.4.1"><a href="#rfc.section.7.4.1">7.4.1</a> <a id="status.400" href="#status.400">400 Bad Request</a></h3> 1771 <p id="rfc.section.7.4.1.p.1">The server cannot or will not process the request, due to a client error (e.g., malformed syntax).</p> 1769 1772 <div id="rfc.iref.40"></div> 1770 1773 <div id="rfc.iref.s.20"></div> 1771 <h3 id="rfc.section. 8.4.2"><a href="#rfc.section.8.4.2">8.4.2</a> <a id="status.401" href="#status.401">401 Unauthorized</a></h3>1772 <p id="rfc.section. 8.4.2.p.1">The request requires user authentication (see <a href="p7-auth.html#status.401" title="401 Unauthorized">Section 3.1</a> of <a href="#Part7" id="rfc.xref.Part7.8"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a>).1774 <h3 id="rfc.section.7.4.2"><a href="#rfc.section.7.4.2">7.4.2</a> <a id="status.401" href="#status.401">401 Unauthorized</a></h3> 1775 <p id="rfc.section.7.4.2.p.1">The request requires user authentication (see <a href="p7-auth.html#status.401" title="401 Unauthorized">Section 3.1</a> of <a href="#Part7" id="rfc.xref.Part7.8"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a>). 1773 1776 </p> 1774 1777 <div id="rfc.iref.41"></div> 1775 1778 <div id="rfc.iref.s.21"></div> 1776 <h3 id="rfc.section. 8.4.3"><a href="#rfc.section.8.4.3">8.4.3</a> <a id="status.402" href="#status.402">402 Payment Required</a></h3>1777 <p id="rfc.section. 8.4.3.p.1">This code is reserved for future use.</p>1779 <h3 id="rfc.section.7.4.3"><a href="#rfc.section.7.4.3">7.4.3</a> <a id="status.402" href="#status.402">402 Payment Required</a></h3> 1780 <p id="rfc.section.7.4.3.p.1">This code is reserved for future use.</p> 1778 1781 <div id="rfc.iref.42"></div> 1779 1782 <div id="rfc.iref.s.22"></div> 1780 <h3 id="rfc.section. 8.4.4"><a href="#rfc.section.8.4.4">8.4.4</a> <a id="status.403" href="#status.403">403 Forbidden</a></h3>1781 <p id="rfc.section. 8.4.4.p.1">The server understood the request, but refuses to authorize it. Providing different user authentication credentials might1783 <h3 id="rfc.section.7.4.4"><a href="#rfc.section.7.4.4">7.4.4</a> <a id="status.403" href="#status.403">403 Forbidden</a></h3> 1784 <p id="rfc.section.7.4.4.p.1">The server understood the request, but refuses to authorize it. Providing different user authentication credentials might 1782 1785 be successful, but any credentials that were provided in the request are insufficient. The request <em class="bcp14">SHOULD NOT</em> be repeated with the same credentials. 1783 1786 </p> 1784 <p id="rfc.section. 8.4.4.p.2">If the request method was not HEAD and the server wishes to make public why the request has not been fulfilled, it <em class="bcp14">SHOULD</em> describe the reason for the refusal in the representation. If the server does not wish to make this information available1787 <p id="rfc.section.7.4.4.p.2">If the request method was not HEAD and the server wishes to make public why the request has not been fulfilled, it <em class="bcp14">SHOULD</em> describe the reason for the refusal in the representation. If the server does not wish to make this information available 1785 1788 to the client, the status code 404 (Not Found) <em class="bcp14">MAY</em> be used instead. 1786 1789 </p> 1787 1790 <div id="rfc.iref.43"></div> 1788 1791 <div id="rfc.iref.s.23"></div> 1789 <h3 id="rfc.section. 8.4.5"><a href="#rfc.section.8.4.5">8.4.5</a> <a id="status.404" href="#status.404">404 Not Found</a></h3>1790 <p id="rfc.section. 8.4.5.p.1">The server has not found anything matching the effective request URI. No indication is given of whether the condition is temporary1792 <h3 id="rfc.section.7.4.5"><a href="#rfc.section.7.4.5">7.4.5</a> <a id="status.404" href="#status.404">404 Not Found</a></h3> 1793 <p id="rfc.section.7.4.5.p.1">The server has not found anything matching the effective request URI. No indication is given of whether the condition is temporary 1791 1794 or permanent. The 410 (Gone) status code <em class="bcp14">SHOULD</em> be used if the server knows, through some internally configurable mechanism, that an old resource is permanently unavailable 1792 1795 and has no forwarding address. This status code is commonly used when the server does not wish to reveal exactly why the request … … 1795 1798 <div id="rfc.iref.44"></div> 1796 1799 <div id="rfc.iref.s.24"></div> 1797 <h3 id="rfc.section. 8.4.6"><a href="#rfc.section.8.4.6">8.4.6</a> <a id="status.405" href="#status.405">405 Method Not Allowed</a></h3>1798 <p id="rfc.section. 8.4.6.p.1">The method specified in the Request-Line is not allowed for the target resource. The response <em class="bcp14">MUST</em> include an Allow header field containing a list of valid methods for the requested resource.1800 <h3 id="rfc.section.7.4.6"><a href="#rfc.section.7.4.6">7.4.6</a> <a id="status.405" href="#status.405">405 Method Not Allowed</a></h3> 1801 <p id="rfc.section.7.4.6.p.1">The method specified in the Request-Line is not allowed for the target resource. The response <em class="bcp14">MUST</em> include an Allow header field containing a list of valid methods for the requested resource. 1799 1802 </p> 1800 1803 <div id="rfc.iref.45"></div> 1801 1804 <div id="rfc.iref.s.25"></div> 1802 <h3 id="rfc.section. 8.4.7"><a href="#rfc.section.8.4.7">8.4.7</a> <a id="status.406" href="#status.406">406 Not Acceptable</a></h3>1803 <p id="rfc.section. 8.4.7.p.1">The resource identified by the request is only capable of generating response representations which have content characteristics1805 <h3 id="rfc.section.7.4.7"><a href="#rfc.section.7.4.7">7.4.7</a> <a id="status.406" href="#status.406">406 Not Acceptable</a></h3> 1806 <p id="rfc.section.7.4.7.p.1">The resource identified by the request is only capable of generating response representations which have content characteristics 1804 1807 not acceptable according to the Accept and Accept-* header fields sent in the request (see <a href="p3-payload.html#header.field.definitions" title="Header Field Definitions">Section 6</a> of <a href="#Part3" id="rfc.xref.Part3.8"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>). 1805 1808 </p> 1806 <p id="rfc.section. 8.4.7.p.2">Unless it was a HEAD request, the response <em class="bcp14">SHOULD</em> include a representation containing a list of available representation characteristics and location(s) from which the user1809 <p id="rfc.section.7.4.7.p.2">Unless it was a HEAD request, the response <em class="bcp14">SHOULD</em> include a representation containing a list of available representation characteristics and location(s) from which the user 1807 1810 or user agent can choose the one most appropriate. The data format is specified by the media type given in the Content-Type 1808 1811 header field. Depending upon the format and the capabilities of the user agent, selection of the most appropriate choice <em class="bcp14">MAY</em> be performed automatically. However, this specification does not define any standard for such automatic selection. 1809 1812 </p> 1810 <div class="note" id="rfc.section. 8.4.7.p.3">1813 <div class="note" id="rfc.section.7.4.7.p.3"> 1811 1814 <p> <b>Note:</b> HTTP/1.1 servers are allowed to return responses which are not acceptable according to the accept header fields sent in the 1812 1815 request. In some cases, this might even be preferable to sending a 406 response. User agents are encouraged to inspect the … … 1814 1817 </p> 1815 1818 </div> 1816 <p id="rfc.section. 8.4.7.p.4">If the response could be unacceptable, a user agent <em class="bcp14">SHOULD</em> temporarily stop receipt of more data and query the user for a decision on further actions.1819 <p id="rfc.section.7.4.7.p.4">If the response could be unacceptable, a user agent <em class="bcp14">SHOULD</em> temporarily stop receipt of more data and query the user for a decision on further actions. 1817 1820 </p> 1818 1821 <div id="rfc.iref.46"></div> 1819 1822 <div id="rfc.iref.s.26"></div> 1820 <h3 id="rfc.section. 8.4.8"><a href="#rfc.section.8.4.8">8.4.8</a> <a id="status.407" href="#status.407">407 Proxy Authentication Required</a></h3>1821 <p id="rfc.section. 8.4.8.p.1">This code is similar to 401 (Unauthorized), but indicates that the client must first authenticate itself with the proxy (see <a href="p7-auth.html#status.407" title="407 Proxy Authentication Required">Section 3.2</a> of <a href="#Part7" id="rfc.xref.Part7.9"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a>).1823 <h3 id="rfc.section.7.4.8"><a href="#rfc.section.7.4.8">7.4.8</a> <a id="status.407" href="#status.407">407 Proxy Authentication Required</a></h3> 1824 <p id="rfc.section.7.4.8.p.1">This code is similar to 401 (Unauthorized), but indicates that the client must first authenticate itself with the proxy (see <a href="p7-auth.html#status.407" title="407 Proxy Authentication Required">Section 3.2</a> of <a href="#Part7" id="rfc.xref.Part7.9"><cite title="HTTP/1.1, part 7: Authentication">[Part7]</cite></a>). 1822 1825 </p> 1823 1826 <div id="rfc.iref.47"></div> 1824 1827 <div id="rfc.iref.s.27"></div> 1825 <h3 id="rfc.section. 8.4.9"><a href="#rfc.section.8.4.9">8.4.9</a> <a id="status.408" href="#status.408">408 Request Timeout</a></h3>1826 <p id="rfc.section. 8.4.9.p.1">The client did not produce a request within the time that the server was prepared to wait. The client <em class="bcp14">MAY</em> repeat the request without modifications at any later time.1828 <h3 id="rfc.section.7.4.9"><a href="#rfc.section.7.4.9">7.4.9</a> <a id="status.408" href="#status.408">408 Request Timeout</a></h3> 1829 <p id="rfc.section.7.4.9.p.1">The client did not produce a request within the time that the server was prepared to wait. The client <em class="bcp14">MAY</em> repeat the request without modifications at any later time. 1827 1830 </p> 1828 1831 <div id="rfc.iref.48"></div> 1829 1832 <div id="rfc.iref.s.28"></div> 1830 <h3 id="rfc.section. 8.4.10"><a href="#rfc.section.8.4.10">8.4.10</a> <a id="status.409" href="#status.409">409 Conflict</a></h3>1831 <p id="rfc.section. 8.4.10.p.1">The request could not be completed due to a conflict with the current state of the resource. This code is only allowed in1833 <h3 id="rfc.section.7.4.10"><a href="#rfc.section.7.4.10">7.4.10</a> <a id="status.409" href="#status.409">409 Conflict</a></h3> 1834 <p id="rfc.section.7.4.10.p.1">The request could not be completed due to a conflict with the current state of the resource. This code is only allowed in 1832 1835 situations where it is expected that the user might be able to resolve the conflict and resubmit the request. The response 1833 1836 body <em class="bcp14">SHOULD</em> include enough information for the user to recognize the source of the conflict. Ideally, the response representation would 1834 1837 include enough information for the user or user agent to fix the problem; however, that might not be possible and is not required. 1835 1838 </p> 1836 <p id="rfc.section. 8.4.10.p.2">Conflicts are most likely to occur in response to a PUT request. For example, if versioning were being used and the representation1839 <p id="rfc.section.7.4.10.p.2">Conflicts are most likely to occur in response to a PUT request. For example, if versioning were being used and the representation 1837 1840 being PUT included changes to a resource which conflict with those made by an earlier (third-party) request, the server might 1838 1841 use the 409 response to indicate that it can't complete the request. In this case, the response representation would likely … … 1841 1844 <div id="rfc.iref.49"></div> 1842 1845 <div id="rfc.iref.s.29"></div> 1843 <h3 id="rfc.section. 8.4.11"><a href="#rfc.section.8.4.11">8.4.11</a> <a id="status.410" href="#status.410">410 Gone</a></h3>1844 <p id="rfc.section. 8.4.11.p.1">The target resource is no longer available at the server and no forwarding address is known. This condition is expected to1846 <h3 id="rfc.section.7.4.11"><a href="#rfc.section.7.4.11">7.4.11</a> <a id="status.410" href="#status.410">410 Gone</a></h3> 1847 <p id="rfc.section.7.4.11.p.1">The target resource is no longer available at the server and no forwarding address is known. This condition is expected to 1845 1848 be considered permanent. Clients with link editing capabilities <em class="bcp14">SHOULD</em> delete references to the effective request URI after user approval. If the server does not know, or has no facility to determine, 1846 1849 whether or not the condition is permanent, the status code 404 (Not Found) <em class="bcp14">SHOULD</em> be used instead. 1847 1850 </p> 1848 <p id="rfc.section. 8.4.11.p.2">The 410 response is primarily intended to assist the task of web maintenance by notifying the recipient that the resource1851 <p id="rfc.section.7.4.11.p.2">The 410 response is primarily intended to assist the task of web maintenance by notifying the recipient that the resource 1849 1852 is intentionally unavailable and that the server owners desire that remote links to that resource be removed. Such an event 1850 1853 is common for limited-time, promotional services and for resources belonging to individuals no longer working at the server's … … 1852 1855 — that is left to the discretion of the server owner. 1853 1856 </p> 1854 <p id="rfc.section. 8.4.11.p.3">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 2.3.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.17"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 410 responses.1857 <p id="rfc.section.7.4.11.p.3">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 2.3.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.17"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 410 responses. 1855 1858 </p> 1856 1859 <div id="rfc.iref.50"></div> 1857 1860 <div id="rfc.iref.s.30"></div> 1858 <h3 id="rfc.section. 8.4.12"><a href="#rfc.section.8.4.12">8.4.12</a> <a id="status.411" href="#status.411">411 Length Required</a></h3>1859 <p id="rfc.section. 8.4.12.p.1">The server refuses to accept the request without a defined Content-Length. The client <em class="bcp14">MAY</em> repeat the request if it adds a valid Content-Length header field containing the length of the message-body in the request1861 <h3 id="rfc.section.7.4.12"><a href="#rfc.section.7.4.12">7.4.12</a> <a id="status.411" href="#status.411">411 Length Required</a></h3> 1862 <p id="rfc.section.7.4.12.p.1">The server refuses to accept the request without a defined Content-Length. The client <em class="bcp14">MAY</em> repeat the request if it adds a valid Content-Length header field containing the length of the message-body in the request 1860 1863 message. 1861 1864 </p> 1862 1865 <div id="rfc.iref.51"></div> 1863 1866 <div id="rfc.iref.s.31"></div> 1864 <h3 id="rfc.section. 8.4.13"><a href="#rfc.section.8.4.13">8.4.13</a> <a id="status.412" href="#status.412">412 Precondition Failed</a></h3>1865 <p id="rfc.section. 8.4.13.p.1">The precondition given in one or more of the header fields evaluated to false when it was tested on the server, as defined1867 <h3 id="rfc.section.7.4.13"><a href="#rfc.section.7.4.13">7.4.13</a> <a id="status.412" href="#status.412">412 Precondition Failed</a></h3> 1868 <p id="rfc.section.7.4.13.p.1">The precondition given in one or more of the header fields evaluated to false when it was tested on the server, as defined 1866 1869 in <a href="p4-conditional.html#status.412" title="412 Precondition Failed">Section 4.2</a> of <a href="#Part4" id="rfc.xref.Part4.11"><cite title="HTTP/1.1, part 4: Conditional Requests">[Part4]</cite></a>. 1867 1870 </p> 1868 1871 <div id="rfc.iref.52"></div> 1869 1872 <div id="rfc.iref.s.32"></div> 1870 <h3 id="rfc.section. 8.4.14"><a href="#rfc.section.8.4.14">8.4.14</a> <a id="status.413" href="#status.413">413 Request Representation Too Large</a></h3>1871 <p id="rfc.section. 8.4.14.p.1">The server is refusing to process a request because the request representation is larger than the server is willing or able1873 <h3 id="rfc.section.7.4.14"><a href="#rfc.section.7.4.14">7.4.14</a> <a id="status.413" href="#status.413">413 Request Representation Too Large</a></h3> 1874 <p id="rfc.section.7.4.14.p.1">The server is refusing to process a request because the request representation is larger than the server is willing or able 1872 1875 to process. The server <em class="bcp14">MAY</em> close the connection to prevent the client from continuing the request. 1873 1876 </p> 1874 <p id="rfc.section. 8.4.14.p.2">If the condition is temporary, the server <em class="bcp14">SHOULD</em> include a Retry-After header field to indicate that it is temporary and after what time the client <em class="bcp14">MAY</em> try again.1877 <p id="rfc.section.7.4.14.p.2">If the condition is temporary, the server <em class="bcp14">SHOULD</em> include a Retry-After header field to indicate that it is temporary and after what time the client <em class="bcp14">MAY</em> try again. 1875 1878 </p> 1876 1879 <div id="rfc.iref.53"></div> 1877 1880 <div id="rfc.iref.s.33"></div> 1878 <h3 id="rfc.section. 8.4.15"><a href="#rfc.section.8.4.15">8.4.15</a> <a id="status.414" href="#status.414">414 URI Too Long</a></h3>1879 <p id="rfc.section. 8.4.15.p.1">The server is refusing to service the request because the effective request URI is longer than the server is willing to interpret.1881 <h3 id="rfc.section.7.4.15"><a href="#rfc.section.7.4.15">7.4.15</a> <a id="status.414" href="#status.414">414 URI Too Long</a></h3> 1882 <p id="rfc.section.7.4.15.p.1">The server is refusing to service the request because the effective request URI is longer than the server is willing to interpret. 1880 1883 This rare condition is only likely to occur when a client has improperly converted a POST request to a GET request with long 1881 1884 query information, when the client has descended into a URI "black hole" of redirection (e.g., a redirected URI prefix that … … 1885 1888 <div id="rfc.iref.54"></div> 1886 1889 <div id="rfc.iref.s.34"></div> 1887 <h3 id="rfc.section. 8.4.16"><a href="#rfc.section.8.4.16">8.4.16</a> <a id="status.415" href="#status.415">415 Unsupported Media Type</a></h3>1888 <p id="rfc.section. 8.4.16.p.1">The server is refusing to service the request because the request payload is in a format not supported by this request method1890 <h3 id="rfc.section.7.4.16"><a href="#rfc.section.7.4.16">7.4.16</a> <a id="status.415" href="#status.415">415 Unsupported Media Type</a></h3> 1891 <p id="rfc.section.7.4.16.p.1">The server is refusing to service the request because the request payload is in a format not supported by this request method 1889 1892 on the target resource. 1890 1893 </p> 1891 1894 <div id="rfc.iref.55"></div> 1892 1895 <div id="rfc.iref.s.35"></div> 1893 <h3 id="rfc.section. 8.4.17"><a href="#rfc.section.8.4.17">8.4.17</a> <a id="status.416" href="#status.416">416 Requested Range Not Satisfiable</a></h3>1894 <p id="rfc.section. 8.4.17.p.1">The request included a Range header field (<a href="p5-range.html#header.range" title="Range">Section 5.4</a> of <a href="#Part5" id="rfc.xref.Part5.9"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a>) and none of the range-specifier values in this field overlap the current extent of the selected resource. See <a href="p5-range.html#status.416" title="416 Requested Range Not Satisfiable">Section 3.2</a> of <a href="#Part5" id="rfc.xref.Part5.10"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a>.1896 <h3 id="rfc.section.7.4.17"><a href="#rfc.section.7.4.17">7.4.17</a> <a id="status.416" href="#status.416">416 Requested Range Not Satisfiable</a></h3> 1897 <p id="rfc.section.7.4.17.p.1">The request included a Range header field (<a href="p5-range.html#header.range" title="Range">Section 5.4</a> of <a href="#Part5" id="rfc.xref.Part5.9"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a>) and none of the range-specifier values in this field overlap the current extent of the selected resource. See <a href="p5-range.html#status.416" title="416 Requested Range Not Satisfiable">Section 3.2</a> of <a href="#Part5" id="rfc.xref.Part5.10"><cite title="HTTP/1.1, part 5: Range Requests and Partial Responses">[Part5]</cite></a>. 1895 1898 </p> 1896 1899 <div id="rfc.iref.56"></div> 1897 1900 <div id="rfc.iref.s.36"></div> 1898 <h3 id="rfc.section. 8.4.18"><a href="#rfc.section.8.4.18">8.4.18</a> <a id="status.417" href="#status.417">417 Expectation Failed</a></h3>1899 <p id="rfc.section. 8.4.18.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.2</a>) could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could1901 <h3 id="rfc.section.7.4.18"><a href="#rfc.section.7.4.18">7.4.18</a> <a id="status.417" href="#status.417">417 Expectation Failed</a></h3> 1902 <p id="rfc.section.7.4.18.p.1">The expectation given in an Expect header field (see <a href="#header.expect" id="rfc.xref.header.expect.2" title="Expect">Section 8.2</a>) could not be met by this server, or, if the server is a proxy, the server has unambiguous evidence that the request could 1900 1903 not be met by the next-hop server. 1901 1904 </p> 1902 1905 <div id="rfc.iref.57"></div> 1903 1906 <div id="rfc.iref.s.37"></div> 1904 <h3 id="rfc.section. 8.4.19"><a href="#rfc.section.8.4.19">8.4.19</a> <a id="status.426" href="#status.426">426 Upgrade Required</a></h3>1905 <p id="rfc.section. 8.4.19.p.1">The request can not be completed without a prior protocol upgrade. This response <em class="bcp14">MUST</em> include an Upgrade header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 9.8</a> of <a href="#Part1" id="rfc.xref.Part1.29"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) specifying the required protocols.1907 <h3 id="rfc.section.7.4.19"><a href="#rfc.section.7.4.19">7.4.19</a> <a id="status.426" href="#status.426">426 Upgrade Required</a></h3> 1908 <p id="rfc.section.7.4.19.p.1">The request can not be completed without a prior protocol upgrade. This response <em class="bcp14">MUST</em> include an Upgrade header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 9.8</a> of <a href="#Part1" id="rfc.xref.Part1.29"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) specifying the required protocols. 1906 1909 </p> 1907 1910 <div id="rfc.figure.u.7"></div> … … 1910 1913 Connection: Upgrade 1911 1914 1912 </pre><p id="rfc.section. 8.4.19.p.3">The server <em class="bcp14">SHOULD</em> include a message body in the 426 response which indicates in human readable form the reason for the error and describes any1915 </pre><p id="rfc.section.7.4.19.p.3">The server <em class="bcp14">SHOULD</em> include a message body in the 426 response which indicates in human readable form the reason for the error and describes any 1913 1916 alternative courses which may be available to the user. 1914 1917 </p> 1915 <h2 id="rfc.section. 8.5"><a href="#rfc.section.8.5">8.5</a> <a id="status.5xx" href="#status.5xx">Server Error 5xx</a></h2>1916 <p id="rfc.section. 8.5.p.1">Response status codes beginning with the digit "5" indicate cases in which the server is aware that it has erred or is incapable1918 <h2 id="rfc.section.7.5"><a href="#rfc.section.7.5">7.5</a> <a id="status.5xx" href="#status.5xx">Server Error 5xx</a></h2> 1919 <p id="rfc.section.7.5.p.1">Response status codes beginning with the digit "5" indicate cases in which the server is aware that it has erred or is incapable 1917 1920 of performing the request. Except when responding to a HEAD request, the server <em class="bcp14">SHOULD</em> include a representation containing an explanation of the error situation, and whether it is a temporary or permanent condition. 1918 1921 User agents <em class="bcp14">SHOULD</em> display any included representation to the user. These response codes are applicable to any request method. … … 1920 1923 <div id="rfc.iref.58"></div> 1921 1924 <div id="rfc.iref.s.38"></div> 1922 <h3 id="rfc.section. 8.5.1"><a href="#rfc.section.8.5.1">8.5.1</a> <a id="status.500" href="#status.500">500 Internal Server Error</a></h3>1923 <p id="rfc.section. 8.5.1.p.1">The server encountered an unexpected condition which prevented it from fulfilling the request.</p>1925 <h3 id="rfc.section.7.5.1"><a href="#rfc.section.7.5.1">7.5.1</a> <a id="status.500" href="#status.500">500 Internal Server Error</a></h3> 1926 <p id="rfc.section.7.5.1.p.1">The server encountered an unexpected condition which prevented it from fulfilling the request.</p> 1924 1927 <div id="rfc.iref.59"></div> 1925 1928 <div id="rfc.iref.s.39"></div> 1926 <h3 id="rfc.section. 8.5.2"><a href="#rfc.section.8.5.2">8.5.2</a> <a id="status.501" href="#status.501">501 Not Implemented</a></h3>1927 <p id="rfc.section. 8.5.2.p.1">The server does not support the functionality required to fulfill the request. This is the appropriate response when the server1929 <h3 id="rfc.section.7.5.2"><a href="#rfc.section.7.5.2">7.5.2</a> <a id="status.501" href="#status.501">501 Not Implemented</a></h3> 1930 <p id="rfc.section.7.5.2.p.1">The server does not support the functionality required to fulfill the request. This is the appropriate response when the server 1928 1931 does not recognize the request method and is not capable of supporting it for any resource. 1929 1932 </p> 1930 1933 <div id="rfc.iref.60"></div> 1931 1934 <div id="rfc.iref.s.40"></div> 1932 <h3 id="rfc.section. 8.5.3"><a href="#rfc.section.8.5.3">8.5.3</a> <a id="status.502" href="#status.502">502 Bad Gateway</a></h3>1933 <p id="rfc.section. 8.5.3.p.1">The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting1935 <h3 id="rfc.section.7.5.3"><a href="#rfc.section.7.5.3">7.5.3</a> <a id="status.502" href="#status.502">502 Bad Gateway</a></h3> 1936 <p id="rfc.section.7.5.3.p.1">The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting 1934 1937 to fulfill the request. 1935 1938 </p> 1936 1939 <div id="rfc.iref.61"></div> 1937 1940 <div id="rfc.iref.s.41"></div> 1938 <h3 id="rfc.section. 8.5.4"><a href="#rfc.section.8.5.4">8.5.4</a> <a id="status.503" href="#status.503">503 Service Unavailable</a></h3>1939 <p id="rfc.section. 8.5.4.p.1">The server is currently unable or unwilling to handle the request due to reasons such as temporary overloading, maintenance1941 <h3 id="rfc.section.7.5.4"><a href="#rfc.section.7.5.4">7.5.4</a> <a id="status.503" href="#status.503">503 Service Unavailable</a></h3> 1942 <p id="rfc.section.7.5.4.p.1">The server is currently unable or unwilling to handle the request due to reasons such as temporary overloading, maintenance 1940 1943 of the server, or rate limiting of the client. 1941 1944 </p> 1942 <p id="rfc.section. 8.5.4.p.2">The implication is that this is a temporary condition which will be alleviated after some delay. If known, the length of the1943 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.7</a>). If no Retry-After is given, the client <em class="bcp14">SHOULD</em> handle the response as it would for a 500 response.1944 </p> 1945 <div class="note" id="rfc.section. 8.5.4.p.3">1945 <p id="rfc.section.7.5.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 1946 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 8.7</a>). If no Retry-After is given, the client <em class="bcp14">SHOULD</em> handle the response as it would for a 500 response. 1947 </p> 1948 <div class="note" id="rfc.section.7.5.4.p.3"> 1946 1949 <p> <b>Note:</b> The existence of the 503 status code does not imply that a server must use it when becoming overloaded. Some servers might 1947 1950 wish to simply refuse the connection. … … 1950 1953 <div id="rfc.iref.62"></div> 1951 1954 <div id="rfc.iref.s.42"></div> 1952 <h3 id="rfc.section. 8.5.5"><a href="#rfc.section.8.5.5">8.5.5</a> <a id="status.504" href="#status.504">504 Gateway Timeout</a></h3>1953 <p id="rfc.section. 8.5.5.p.1">The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server specified by the1955 <h3 id="rfc.section.7.5.5"><a href="#rfc.section.7.5.5">7.5.5</a> <a id="status.504" href="#status.504">504 Gateway Timeout</a></h3> 1956 <p id="rfc.section.7.5.5.p.1">The server, while acting as a gateway or proxy, did not receive a timely response from the upstream server specified by the 1954 1957 URI (e.g., HTTP, FTP, LDAP) or some other auxiliary server (e.g., DNS) it needed to access in attempting to complete the request. 1955 1958 </p> 1956 <div class="note" id="rfc.section. 8.5.5.p.2">1959 <div class="note" id="rfc.section.7.5.5.p.2"> 1957 1960 <p> <b>Note</b> to implementors: some deployed proxies are known to return 400 or 500 when DNS lookups time out. 1958 1961 </p> … … 1960 1963 <div id="rfc.iref.63"></div> 1961 1964 <div id="rfc.iref.s.43"></div> 1962 <h3 id="rfc.section. 8.5.6"><a href="#rfc.section.8.5.6">8.5.6</a> <a id="status.505" href="#status.505">505 HTTP Version Not Supported</a></h3>1963 <p id="rfc.section. 8.5.6.p.1">The server does not support, or refuses to support, the protocol version that was used in the request message. The server1965 <h3 id="rfc.section.7.5.6"><a href="#rfc.section.7.5.6">7.5.6</a> <a id="status.505" href="#status.505">505 HTTP Version Not Supported</a></h3> 1966 <p id="rfc.section.7.5.6.p.1">The server does not support, or refuses to support, the protocol version that was used in the request message. The server 1964 1967 is indicating that it is unable or unwilling to complete the request using the same major version as the client, as described 1965 1968 in <a href="p1-messaging.html#http.version" title="Protocol Versioning">Section 2.6</a> of <a href="#Part1" id="rfc.xref.Part1.30"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>, 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. 1966 1969 </p> 1967 <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>1968 <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.</p>1970 <h1 id="rfc.section.8"><a href="#rfc.section.8">8.</a> <a id="header.field.definitions" href="#header.field.definitions">Header Field Definitions</a></h1> 1971 <p id="rfc.section.8.p.1">This section defines the syntax and semantics of HTTP/1.1 header fields related to request and response semantics.</p> 1969 1972 <div id="rfc.iref.a.1"></div> 1970 1973 <div id="rfc.iref.h.2"></div> 1971 <h2 id="rfc.section. 9.1"><a href="#rfc.section.9.1">9.1</a> <a id="header.allow" href="#header.allow">Allow</a></h2>1972 <p id="rfc.section. 9.1.p.1">The "Allow" header field lists the set of methods advertised as supported by the target resource. The purpose of this field1974 <h2 id="rfc.section.8.1"><a href="#rfc.section.8.1">8.1</a> <a id="header.allow" href="#header.allow">Allow</a></h2> 1975 <p id="rfc.section.8.1.p.1">The "Allow" header field lists the set of methods advertised as supported by the target resource. The purpose of this field 1973 1976 is strictly to inform the recipient of valid request methods associated with the resource. 1974 1977 </p> 1975 1978 <div id="rfc.figure.u.8"></div><pre class="inline"><span id="rfc.iref.g.6"></span> <a href="#header.allow" class="smpl">Allow</a> = #<a href="#method" class="smpl">Method</a> 1976 </pre><p id="rfc.section. 9.1.p.3">Example of use:</p>1979 </pre><p id="rfc.section.8.1.p.3">Example of use:</p> 1977 1980 <div id="rfc.figure.u.9"></div><pre class="text"> Allow: GET, HEAD, PUT 1978 </pre><p id="rfc.section. 9.1.p.5">The actual set of allowed methods is defined by the origin server at the time of each request.</p>1979 <p id="rfc.section. 9.1.p.6">A proxy <em class="bcp14">MUST NOT</em> modify the Allow header field — it does not need to understand all the methods specified in order to handle them according1981 </pre><p id="rfc.section.8.1.p.5">The actual set of allowed methods is defined by the origin server at the time of each request.</p> 1982 <p id="rfc.section.8.1.p.6">A proxy <em class="bcp14">MUST NOT</em> modify the Allow header field — it does not need to understand all the methods specified in order to handle them according 1980 1983 to the generic message handling rules. 1981 1984 </p> 1982 1985 <div id="rfc.iref.e.1"></div> 1983 1986 <div id="rfc.iref.h.3"></div> 1984 <h2 id="rfc.section. 9.2"><a href="#rfc.section.9.2">9.2</a> <a id="header.expect" href="#header.expect">Expect</a></h2>1985 <p id="rfc.section. 9.2.p.1">The "Expect" header field is used to indicate that particular server behaviors are required by the client.</p>1987 <h2 id="rfc.section.8.2"><a href="#rfc.section.8.2">8.2</a> <a id="header.expect" href="#header.expect">Expect</a></h2> 1988 <p id="rfc.section.8.2.p.1">The "Expect" header field is used to indicate that particular server behaviors are required by the client.</p> 1986 1989 <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g.7"></span><span id="rfc.iref.g.8"></span><span id="rfc.iref.g.9"></span><span id="rfc.iref.g.10"></span> <a href="#header.expect" class="smpl">Expect</a> = 1#<a href="#header.expect" class="smpl">expectation</a> 1987 1990 … … 1990 1993 *<a href="#header.expect" class="smpl">expect-params</a> ] 1991 1994 <a href="#header.expect" class="smpl">expect-params</a> = ";" <a href="#core.rules" class="smpl">token</a> [ "=" ( <a href="#core.rules" class="smpl">token</a> / <a href="#core.rules" class="smpl">quoted-string</a> ) ] 1992 </pre><p id="rfc.section. 9.2.p.3">A server that does not understand or is unable to comply with any of the expectation values in the Expect field of a request <em class="bcp14">MUST</em> respond with appropriate error status code. The server <em class="bcp14">MUST</em> respond with a 417 (Expectation Failed) status code if any of the expectations cannot be met or, if there are other problems1995 </pre><p id="rfc.section.8.2.p.3">A server that does not understand or is unable to comply with any of the expectation values in the Expect field of a request <em class="bcp14">MUST</em> respond with appropriate error status code. The server <em class="bcp14">MUST</em> respond with a 417 (Expectation Failed) status code if any of the expectations cannot be met or, if there are other problems 1993 1996 with the request, some other 4xx status code. 1994 1997 </p> 1995 <p id="rfc.section. 9.2.p.4">This header field is defined with extensible syntax to allow for future extensions. If a server receives a request containing1998 <p id="rfc.section.8.2.p.4">This header field is defined with extensible syntax to allow for future extensions. If a server receives a request containing 1996 1999 an Expect field that includes an expectation-extension that it does not support, it <em class="bcp14">MUST</em> respond with a 417 (Expectation Failed) status code. 1997 2000 </p> 1998 <p id="rfc.section. 9.2.p.5">Comparison of expectation values is case-insensitive for unquoted tokens (including the 100-continue token), and is case-sensitive2001 <p id="rfc.section.8.2.p.5">Comparison of expectation values is case-insensitive for unquoted tokens (including the 100-continue token), and is case-sensitive 1999 2002 for quoted-string expectation-extensions. 2000 2003 </p> 2001 <p id="rfc.section. 9.2.p.6">The Expect mechanism is hop-by-hop: that is, an HTTP/1.1 proxy <em class="bcp14">MUST</em> return a 417 (Expectation Failed) status code if it receives a request with an expectation that it cannot meet. However, the2004 <p id="rfc.section.8.2.p.6">The Expect mechanism is hop-by-hop: that is, an HTTP/1.1 proxy <em class="bcp14">MUST</em> return a 417 (Expectation Failed) status code if it receives a request with an expectation that it cannot meet. However, the 2002 2005 Expect header field itself is end-to-end; it <em class="bcp14">MUST</em> be forwarded if the request is forwarded. 2003 2006 </p> 2004 <p id="rfc.section. 9.2.p.7">Many older HTTP/1.0 and HTTP/1.1 applications do not understand the Expect header field.</p>2005 <p id="rfc.section. 9.2.p.8">See <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 7.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.31"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for the use of the 100 (Continue) status code.2007 <p id="rfc.section.8.2.p.7">Many older HTTP/1.0 and HTTP/1.1 applications do not understand the Expect header field.</p> 2008 <p id="rfc.section.8.2.p.8">See <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 7.2.3</a> of <a href="#Part1" id="rfc.xref.Part1.31"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a> for the use of the 100 (Continue) status code. 2006 2009 </p> 2007 2010 <div id="rfc.iref.f.1"></div> 2008 2011 <div id="rfc.iref.h.4"></div> 2009 <h2 id="rfc.section. 9.3"><a href="#rfc.section.9.3">9.3</a> <a id="header.from" href="#header.from">From</a></h2>2010 <p id="rfc.section. 9.3.p.1">The "From" header field, if given, <em class="bcp14">SHOULD</em> contain an Internet e-mail address for the human user who controls the requesting user agent. The address <em class="bcp14">SHOULD</em> be machine-usable, as defined by "mailbox" in <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.1"><cite title="Internet Message Format">[RFC5322]</cite></a>:2012 <h2 id="rfc.section.8.3"><a href="#rfc.section.8.3">8.3</a> <a id="header.from" href="#header.from">From</a></h2> 2013 <p id="rfc.section.8.3.p.1">The "From" header field, if given, <em class="bcp14">SHOULD</em> contain an Internet e-mail address for the human user who controls the requesting user agent. The address <em class="bcp14">SHOULD</em> be machine-usable, as defined by "mailbox" in <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.1"><cite title="Internet Message Format">[RFC5322]</cite></a>: 2011 2014 </p> 2012 2015 <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.11"></span> <a href="#header.from" class="smpl">From</a> = <a href="#header.from" class="smpl">mailbox</a> 2013 2016 2014 2017 <a href="#header.from" class="smpl">mailbox</a> = <mailbox, defined in <a href="#RFC5322" id="rfc.xref.RFC5322.2"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a>> 2015 </pre><p id="rfc.section. 9.3.p.3">An example is:</p>2018 </pre><p id="rfc.section.8.3.p.3">An example is:</p> 2016 2019 <div id="rfc.figure.u.12"></div><pre class="text"> From: webmaster@example.org 2017 </pre><p id="rfc.section. 9.3.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 performed2020 </pre><p id="rfc.section.8.3.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 2018 2021 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 2019 2022 end. 2020 2023 </p> 2021 <p id="rfc.section. 9.3.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 original2024 <p id="rfc.section.8.3.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 2022 2025 issuer's address <em class="bcp14">SHOULD</em> be used. 2023 2026 </p> 2024 <p id="rfc.section. 9.3.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's2027 <p id="rfc.section.8.3.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 2025 2028 security policy. It is strongly recommended that the user be able to disable, enable, and modify the value of this field at 2026 2029 any time prior to a request. … … 2028 2031 <div id="rfc.iref.l.1"></div> 2029 2032 <div id="rfc.iref.h.5"></div> 2030 <h2 id="rfc.section. 9.4"><a href="#rfc.section.9.4">9.4</a> <a id="header.location" href="#header.location">Location</a></h2>2031 <p id="rfc.section. 9.4.p.1">The "Location" header field is used to identify a newly created resource, or to redirect the recipient to a different location2033 <h2 id="rfc.section.8.4"><a href="#rfc.section.8.4">8.4</a> <a id="header.location" href="#header.location">Location</a></h2> 2034 <p id="rfc.section.8.4.p.1">The "Location" header field is used to identify a newly created resource, or to redirect the recipient to a different location 2032 2035 for completion of the request. 2033 2036 </p> 2034 <p id="rfc.section. 9.4.p.2">For 201 (Created) responses, the Location is the URI of the new resource which was created by the request. For 3xx responses,2037 <p id="rfc.section.8.4.p.2">For 201 (Created) responses, the Location is the URI of the new resource which was created by the request. For 3xx responses, 2035 2038 the location <em class="bcp14">SHOULD</em> indicate the server's preferred URI for automatic redirection to the resource. 2036 2039 </p> 2037 <p id="rfc.section. 9.4.p.3">The field value consists of a single URI-reference. When it has the form of a relative reference (<a href="#RFC3986" id="rfc.xref.RFC3986.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>).2040 <p id="rfc.section.8.4.p.3">The field value consists of a single URI-reference. When it has the form of a relative reference (<a href="#RFC3986" id="rfc.xref.RFC3986.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>). 2038 2041 </p> 2039 2042 <div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.12"></span> <a href="#header.location" class="smpl">Location</a> = <a href="#abnf.dependencies" class="smpl">URI-reference</a> … … 2041 2044 <p>Examples are:</p> <pre class="text"> Location: http://www.example.org/pub/WWW/People.html#tim 2042 2045 </pre><div id="rfc.figure.u.15"></div><pre class="text"> Location: /index.html 2043 </pre><p id="rfc.section. 9.4.p.7">There are circumstances in which a fragment identifier in a Location URI would not be appropriate. For instance, when it appears2046 </pre><p id="rfc.section.8.4.p.7">There are circumstances in which a fragment identifier in a Location URI would not be appropriate. For instance, when it appears 2044 2047 in a 201 Created response, where the Location header field specifies the URI for the entire created resource. 2045 2048 </p> 2046 <div class="note" id="rfc.section. 9.4.p.8">2049 <div class="note" id="rfc.section.8.4.p.8"> 2047 2050 <p> <b>Note:</b> This specification does not define precedence rules for the case where the original URI, as navigated to by the user agent, 2048 2051 and the Location header field value both contain fragment identifiers. Thus be aware that including fragment identifiers might … … 2050 2053 </p> 2051 2054 </div> 2052 <div class="note" id="rfc.section. 9.4.p.9">2055 <div class="note" id="rfc.section.8.4.p.9"> 2053 2056 <p> <b>Note:</b> The Content-Location header field (<a href="p3-payload.html#header.content-location" title="Content-Location">Section 6.7</a> of <a href="#Part3" id="rfc.xref.Part3.9"><cite title="HTTP/1.1, part 3: Message Payload and Content Negotiation">[Part3]</cite></a>) differs from Location in that the Content-Location identifies the most specific resource corresponding to the enclosed representation. 2054 2057 It is therefore possible for a response to contain header fields for both Location and Content-Location. … … 2057 2060 <div id="rfc.iref.m.9"></div> 2058 2061 <div id="rfc.iref.h.6"></div> 2059 <h2 id="rfc.section. 9.5"><a href="#rfc.section.9.5">9.5</a> <a id="header.max-forwards" href="#header.max-forwards">Max-Forwards</a></h2>2060 <p id="rfc.section. 9.5.p.1">The "Max-Forwards" header field provides a mechanism with the TRACE (<a href="#TRACE" id="rfc.xref.TRACE.2" title="TRACE">Section 7.8</a>) and OPTIONS (<a href="#OPTIONS" id="rfc.xref.OPTIONS.2" title="OPTIONS">Section 7.2</a>) methods to limit the number of times that the request is forwarded by proxies. This can be useful when the client is attempting2062 <h2 id="rfc.section.8.5"><a href="#rfc.section.8.5">8.5</a> <a id="header.max-forwards" href="#header.max-forwards">Max-Forwards</a></h2> 2063 <p id="rfc.section.8.5.p.1">The "Max-Forwards" header field provides a mechanism with the TRACE (<a href="#TRACE" id="rfc.xref.TRACE.2" title="TRACE">Section 6.8</a>) and OPTIONS (<a href="#OPTIONS" id="rfc.xref.OPTIONS.2" title="OPTIONS">Section 6.2</a>) methods to limit the number of times that the request is forwarded by proxies. This can be useful when the client is attempting 2061 2064 to trace a request which appears to be failing or looping in mid-chain. 2062 2065 </p> 2063 2066 <div id="rfc.figure.u.16"></div><pre class="inline"><span id="rfc.iref.g.13"></span> <a href="#header.max-forwards" class="smpl">Max-Forwards</a> = 1*<a href="#notation" class="smpl">DIGIT</a> 2064 </pre><p id="rfc.section. 9.5.p.3">The Max-Forwards value is a decimal integer indicating the remaining number of times this request message can be forwarded.</p>2065 <p id="rfc.section. 9.5.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).2066 </p> 2067 <p id="rfc.section. 9.5.p.5">The Max-Forwards header field <em class="bcp14">MAY</em> be ignored for all other request methods.2067 </pre><p id="rfc.section.8.5.p.3">The Max-Forwards value is a decimal integer indicating the remaining number of times this request message can be forwarded.</p> 2068 <p id="rfc.section.8.5.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). 2069 </p> 2070 <p id="rfc.section.8.5.p.5">The Max-Forwards header field <em class="bcp14">MAY</em> be ignored for all other request methods. 2068 2071 </p> 2069 2072 <div id="rfc.iref.r.1"></div> 2070 2073 <div id="rfc.iref.h.7"></div> 2071 <h2 id="rfc.section. 9.6"><a href="#rfc.section.9.6">9.6</a> <a id="header.referer" href="#header.referer">Referer</a></h2>2072 <p id="rfc.section. 9.6.p.1">The "Referer" [sic] header field allows the client to specify the URI of the resource from which the effective request URI2074 <h2 id="rfc.section.8.6"><a href="#rfc.section.8.6">8.6</a> <a id="header.referer" href="#header.referer">Referer</a></h2> 2075 <p id="rfc.section.8.6.p.1">The "Referer" [sic] header field allows the client to specify the URI of the resource from which the effective request URI 2073 2076 was obtained (the "referrer", although the header field is misspelled.). 2074 2077 </p> 2075 <p id="rfc.section. 9.6.p.2">The Referer header field allows servers to generate lists of back-links to resources for interest, logging, optimized caching,2078 <p id="rfc.section.8.6.p.2">The Referer header field allows servers to generate lists of back-links to resources for interest, logging, optimized caching, 2076 2079 etc. It also allows obsolete or mistyped links to be traced for maintenance. Some servers use Referer as a means of controlling 2077 2080 where they allow links from (so-called "deep linking"), but legitimate requests do not always contain a Referer header field. 2078 2081 </p> 2079 <p id="rfc.section. 9.6.p.3">If the effective request URI was obtained from a source that does not have its own URI (e.g., input from the user keyboard),2082 <p id="rfc.section.8.6.p.3">If the effective request URI was obtained from a source that does not have its own URI (e.g., input from the user keyboard), 2080 2083 the Referer 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 2081 2084 non-HTTP URIs (e.g., FTP). 2082 2085 </p> 2083 2086 <div id="rfc.figure.u.17"></div><pre class="inline"><span id="rfc.iref.g.14"></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> 2084 </pre><p id="rfc.section. 9.6.p.5">Example:</p>2087 </pre><p id="rfc.section.8.6.p.5">Example:</p> 2085 2088 <div id="rfc.figure.u.18"></div><pre class="text"> Referer: http://www.example.org/hypertext/Overview.html 2086 </pre><p id="rfc.section. 9.6.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.2089 </pre><p id="rfc.section.8.6.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 10.2</a> for security considerations. 2087 2090 </p> 2088 2091 <div id="rfc.iref.r.2"></div> 2089 2092 <div id="rfc.iref.h.8"></div> 2090 <h2 id="rfc.section. 9.7"><a href="#rfc.section.9.7">9.7</a> <a id="header.retry-after" href="#header.retry-after">Retry-After</a></h2>2091 <p id="rfc.section. 9.7.p.1">The header "Retry-After" field can be used with a 503 (Service Unavailable) response to indicate how long the service is expected2093 <h2 id="rfc.section.8.7"><a href="#rfc.section.8.7">8.7</a> <a id="header.retry-after" href="#header.retry-after">Retry-After</a></h2> 2094 <p id="rfc.section.8.7.p.1">The header "Retry-After" field can be used with a 503 (Service Unavailable) response to indicate how long the service is expected 2092 2095 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 wait before issuing 2093 2096 the redirected request. 2094 2097 </p> 2095 <p id="rfc.section. 9.7.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>2098 <p id="rfc.section.8.7.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> 2096 2099 <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g.15"></span> <a href="#header.retry-after" class="smpl">Retry-After</a> = <a href="#abnf.dependencies" class="smpl">HTTP-date</a> / <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> 2097 2100 </pre><div id="rule.delta-seconds"> 2098 <p id="rfc.section. 9.7.p.4"> Time spans are non-negative decimal integers, representing time in seconds.</p>2101 <p id="rfc.section.8.7.p.4"> Time spans are non-negative decimal integers, representing time in seconds.</p> 2099 2102 </div> 2100 2103 <div id="rfc.figure.u.20"></div><pre class="inline"><span id="rfc.iref.g.16"></span> <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> = 1*<a href="#notation" class="smpl">DIGIT</a> 2101 </pre><p id="rfc.section. 9.7.p.6">Two examples of its use are</p>2104 </pre><p id="rfc.section.8.7.p.6">Two examples of its use are</p> 2102 2105 <div id="rfc.figure.u.21"></div><pre class="text"> Retry-After: Fri, 31 Dec 1999 23:59:59 GMT 2103 2106 Retry-After: 120 2104 </pre><p id="rfc.section. 9.7.p.8">In the latter example, the delay is 2 minutes.</p>2107 </pre><p id="rfc.section.8.7.p.8">In the latter example, the delay is 2 minutes.</p> 2105 2108 <div id="rfc.iref.s.44"></div> 2106 2109 <div id="rfc.iref.h.9"></div> 2107 <h2 id="rfc.section. 9.8"><a href="#rfc.section.9.8">9.8</a> <a id="header.server" href="#header.server">Server</a></h2>2108 <p id="rfc.section. 9.8.p.1">The "Server" header field contains information about the software used by the origin server to handle the request.</p>2109 <p id="rfc.section. 9.8.p.2">The field can contain multiple product tokens (<a href="p1-messaging.html#product.tokens" title="Product Tokens">Section 6.3</a> of <a href="#Part1" id="rfc.xref.Part1.32"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.33"><cite title="HTTP/1.1, part 1: 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 for2110 <h2 id="rfc.section.8.8"><a href="#rfc.section.8.8">8.8</a> <a id="header.server" href="#header.server">Server</a></h2> 2111 <p id="rfc.section.8.8.p.1">The "Server" header field contains information about the software used by the origin server to handle the request.</p> 2112 <p id="rfc.section.8.8.p.2">The field can contain multiple product tokens (<a href="p1-messaging.html#product.tokens" title="Product Tokens">Section 6.3</a> of <a href="#Part1" id="rfc.xref.Part1.32"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a> of <a href="#Part1" id="rfc.xref.Part1.33"><cite title="HTTP/1.1, part 1: 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 2110 2113 identifying the application. 2111 2114 </p> 2112 2115 <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.17"></span> <a href="#header.server" class="smpl">Server</a> = <a href="#abnf.dependencies" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#abnf.dependencies" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) ) 2113 </pre><p id="rfc.section. 9.8.p.4">Example:</p>2116 </pre><p id="rfc.section.8.8.p.4">Example:</p> 2114 2117 <div id="rfc.figure.u.23"></div><pre class="text"> Server: CERN/3.0 libwww/2.17 2115 </pre><p id="rfc.section. 9.8.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 9.9</a> of <a href="#Part1" id="rfc.xref.Part1.34"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>).2116 </p> 2117 <div class="note" id="rfc.section. 9.8.p.7">2118 </pre><p id="rfc.section.8.8.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 9.9</a> of <a href="#Part1" id="rfc.xref.Part1.34"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 2119 </p> 2120 <div class="note" id="rfc.section.8.8.p.7"> 2118 2121 <p> <b>Note:</b> Revealing the specific software version of the server might allow the server machine to become more vulnerable to attacks 2119 2122 against software that is known to contain security holes. Server implementors are encouraged to make this field a configurable … … 2123 2126 <div id="rfc.iref.u.1"></div> 2124 2127 <div id="rfc.iref.h.10"></div> 2125 <h2 id="rfc.section. 9.9"><a href="#rfc.section.9.9">9.9</a> <a id="header.user-agent" href="#header.user-agent">User-Agent</a></h2>2126 <p id="rfc.section. 9.9.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.2127 </p> 2128 <p id="rfc.section. 9.9.p.2">Typically, it is used for statistical purposes, the tracing of protocol violations, and tailoring responses to avoid particular2128 <h2 id="rfc.section.8.9"><a href="#rfc.section.8.9">8.9</a> <a id="header.user-agent" href="#header.user-agent">User-Agent</a></h2> 2129 <p id="rfc.section.8.9.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. 2130 </p> 2131 <p id="rfc.section.8.9.p.2">Typically, it is used for statistical purposes, the tracing of protocol violations, and tailoring responses to avoid particular 2129 2132 user agent limitations. 2130 2133 </p> 2131 <p id="rfc.section. 9.9.p.3">The field can contain multiple product tokens (<a href="p1-messaging.html#product.tokens" title="Product Tokens">Section 6.3</a> of <a href="#Part1" id="rfc.xref.Part1.35"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</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>) identifying the agent and its significant subproducts. By convention, the product tokens are listed in order of their significance2134 <p id="rfc.section.8.9.p.3">The field can contain multiple product tokens (<a href="p1-messaging.html#product.tokens" title="Product Tokens">Section 6.3</a> of <a href="#Part1" id="rfc.xref.Part1.35"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) and comments (<a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</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>) identifying the agent and its significant subproducts. By convention, the product tokens are listed in order of their significance 2132 2135 for identifying the application. 2133 2136 </p> 2134 <p id="rfc.section. 9.9.p.4">Because this field is usually sent on every request a user agent makes, implementations are encouraged not to include needlessly2137 <p id="rfc.section.8.9.p.4">Because this field is usually sent on every request a user agent makes, implementations are encouraged not to include needlessly 2135 2138 fine-grained detail, and to limit (or even prohibit) the addition of subproducts by third parties. Overly long and detailed 2136 2139 User-Agent field values make requests larger and can also be used to identify ("fingerprint") the user against their wishes. 2137 2140 </p> 2138 <p id="rfc.section. 9.9.p.5">Likewise, implementations are encouraged not to use the product tokens of other implementations in order to declare compatibility2141 <p id="rfc.section.8.9.p.5">Likewise, implementations are encouraged not to use the product tokens of other implementations in order to declare compatibility 2139 2142 with them, as this circumvents the purpose of the field. Finally, they are encouraged not to use comments to identify products; 2140 2143 doing so makes the field value more difficult to parse. 2141 2144 </p> 2142 2145 <div id="rfc.figure.u.24"></div><pre class="inline"><span id="rfc.iref.g.18"></span> <a href="#header.user-agent" class="smpl">User-Agent</a> = <a href="#abnf.dependencies" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#abnf.dependencies" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) ) 2143 </pre><p id="rfc.section. 9.9.p.7">Example:</p>2146 </pre><p id="rfc.section.8.9.p.7">Example:</p> 2144 2147 <div id="rfc.figure.u.25"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b3 2145 </pre><h1 id="rfc.section. 10"><a href="#rfc.section.10">10.</a> <a id="IANA.considerations" href="#IANA.considerations">IANA Considerations</a></h1>2146 <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>2147 <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.2148 </p> 2149 <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:2148 </pre><h1 id="rfc.section.9"><a href="#rfc.section.9">9.</a> <a id="IANA.considerations" href="#IANA.considerations">IANA Considerations</a></h1> 2149 <h2 id="rfc.section.9.1"><a href="#rfc.section.9.1">9.1</a> <a id="method.registration" href="#method.registration">Method Registry</a></h2> 2150 <p id="rfc.section.9.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. 2151 </p> 2152 <p id="rfc.section.9.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: 2150 2153 </p> 2151 2154 <div id="rfc.table.1"> … … 2163 2166 <td class="left">CONNECT</td> 2164 2167 <td class="left">no</td> 2165 <td class="left"> <a href="#CONNECT" id="rfc.xref.CONNECT.2" title="CONNECT">Section 7.9</a>2168 <td class="left"> <a href="#CONNECT" id="rfc.xref.CONNECT.2" title="CONNECT">Section 6.9</a> 2166 2169 </td> 2167 2170 </tr> … … 2169 2172 <td class="left">DELETE</td> 2170 2173 <td class="left">no</td> 2171 <td class="left"> <a href="#DELETE" id="rfc.xref.DELETE.2" title="DELETE">Section 7.7</a>2174 <td class="left"> <a href="#DELETE" id="rfc.xref.DELETE.2" title="DELETE">Section 6.7</a> 2172 2175 </td> 2173 2176 </tr> … … 2175 2178 <td class="left">GET</td> 2176 2179 <td class="left">yes</td> 2177 <td class="left"> <a href="#GET" id="rfc.xref.GET.2" title="GET">Section 7.3</a>2180 <td class="left"> <a href="#GET" id="rfc.xref.GET.2" title="GET">Section 6.3</a> 2178 2181 </td> 2179 2182 </tr> … … 2181 2184 <td class="left">HEAD</td> 2182 2185 <td class="left">yes</td> 2183 <td class="left"> <a href="#HEAD" id="rfc.xref.HEAD.2" title="HEAD">Section 7.4</a>2186 <td class="left"> <a href="#HEAD" id="rfc.xref.HEAD.2" title="HEAD">Section 6.4</a> 2184 2187 </td> 2185 2188 </tr> … … 2187 2190 <td class="left">OPTIONS</td> 2188 2191 <td class="left">yes</td> 2189 <td class="left"> <a href="#OPTIONS" id="rfc.xref.OPTIONS.3" title="OPTIONS">Section 7.2</a>2192 <td class="left"> <a href="#OPTIONS" id="rfc.xref.OPTIONS.3" title="OPTIONS">Section 6.2</a> 2190 2193 </td> 2191 2194 </tr> … … 2193 2196 <td class="left">POST</td> 2194 2197 <td class="left">no</td> 2195 <td class="left"> <a href="#POST" id="rfc.xref.POST.2" title="POST">Section 7.5</a>2198 <td class="left"> <a href="#POST" id="rfc.xref.POST.2" title="POST">Section 6.5</a> 2196 2199 </td> 2197 2200 </tr> … … 2199 2202 <td class="left">PUT</td> 2200 2203 <td class="left">no</td> 2201 <td class="left"> <a href="#PUT" id="rfc.xref.PUT.2" title="PUT">Section 7.6</a>2204 <td class="left"> <a href="#PUT" id="rfc.xref.PUT.2" title="PUT">Section 6.6</a> 2202 2205 </td> 2203 2206 </tr> … … 2205 2208 <td class="left">TRACE</td> 2206 2209 <td class="left">yes</td> 2207 <td class="left"> <a href="#TRACE" id="rfc.xref.TRACE.3" title="TRACE">Section 7.8</a>2210 <td class="left"> <a href="#TRACE" id="rfc.xref.TRACE.3" title="TRACE">Section 6.8</a> 2208 2211 </td> 2209 2212 </tr> … … 2211 2214 </table> 2212 2215 </div> 2213 <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>2214 <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.2215 </p> 2216 <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:2216 <h2 id="rfc.section.9.2"><a href="#rfc.section.9.2">9.2</a> <a id="status.code.registration" href="#status.code.registration">Status Code Registry</a></h2> 2217 <p id="rfc.section.9.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. 2218 </p> 2219 <p id="rfc.section.9.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: 2217 2220 </p> 2218 2221 <div id="rfc.table.2"> … … 2230 2233 <td class="left">100</td> 2231 2234 <td class="left">Continue</td> 2232 <td class="left"> <a href="#status.100" id="rfc.xref.status.100.2" title="100 Continue">Section 8.1.1</a>2235 <td class="left"> <a href="#status.100" id="rfc.xref.status.100.2" title="100 Continue">Section 7.1.1</a> 2233 2236 </td> 2234 2237 </tr> … … 2236 2239 <td class="left">101</td> 2237 2240 <td class="left">Switching Protocols</td> 2238 <td class="left"> <a href="#status.101" id="rfc.xref.status.101.2" title="101 Switching Protocols">Section 8.1.2</a>2241 <td class="left"> <a href="#status.101" id="rfc.xref.status.101.2" title="101 Switching Protocols">Section 7.1.2</a> 2239 2242 </td> 2240 2243 </tr> … … 2242 2245 <td class="left">200</td> 2243 2246 <td class="left">OK</td> 2244 <td class="left"> <a href="#status.200" id="rfc.xref.status.200.2" title="200 OK">Section 8.2.1</a>2247 <td class="left"> <a href="#status.200" id="rfc.xref.status.200.2" title="200 OK">Section 7.2.1</a> 2245 2248 </td> 2246 2249 </tr> … … 2248 2251 <td class="left">201</td> 2249 2252 <td class="left">Created</td> 2250 <td class="left"> <a href="#status.201" id="rfc.xref.status.201.2" title="201 Created">Section 8.2.2</a>2253 <td class="left"> <a href="#status.201" id="rfc.xref.status.201.2" title="201 Created">Section 7.2.2</a> 2251 2254 </td> 2252 2255 </tr> … … 2254 2257 <td class="left">202</td> 2255 2258 <td class="left">Accepted</td> 2256 <td class="left"> <a href="#status.202" id="rfc.xref.status.202.2" title="202 Accepted">Section 8.2.3</a>2259 <td class="left"> <a href="#status.202" id="rfc.xref.status.202.2" title="202 Accepted">Section 7.2.3</a> 2257 2260 </td> 2258 2261 </tr> … … 2260 2263 <td class="left">203</td> 2261 2264 <td class="left">Non-Authoritative Information</td> 2262 <td class="left"> <a href="#status.203" id="rfc.xref.status.203.2" title="203 Non-Authoritative Information">Section 8.2.4</a>2265 <td class="left"> <a href="#status.203" id="rfc.xref.status.203.2" title="203 Non-Authoritative Information">Section 7.2.4</a> 2263 2266 </td> 2264 2267 </tr> … … 2266 2269 <td class="left">204</td> 2267 2270 <td class="left">No Content</td> 2268 <td class="left"> <a href="#status.204" id="rfc.xref.status.204.2" title="204 No Content">Section 8.2.5</a>2271 <td class="left"> <a href="#status.204" id="rfc.xref.status.204.2" title="204 No Content">Section 7.2.5</a> 2269 2272 </td> 2270 2273 </tr> … … 2272 2275 <td class="left">205</td> 2273 2276 <td class="left">Reset Content</td> 2274 <td class="left"> <a href="#status.205" id="rfc.xref.status.205.2" title="205 Reset Content">Section 8.2.6</a>2277 <td class="left"> <a href="#status.205" id="rfc.xref.status.205.2" title="205 Reset Content">Section 7.2.6</a> 2275 2278 </td> 2276 2279 </tr> … … 2278 2281 <td class="left">300</td> 2279 2282 <td class="left">Multiple Choices</td> 2280 <td class="left"> <a href="#status.300" id="rfc.xref.status.300.2" title="300 Multiple Choices">Section 8.3.1</a>2283 <td class="left"> <a href="#status.300" id="rfc.xref.status.300.2" title="300 Multiple Choices">Section 7.3.1</a> 2281 2284 </td> 2282 2285 </tr> … … 2284 2287 <td class="left">301</td> 2285 2288 <td class="left">Moved Permanently</td> 2286 <td class="left"> <a href="#status.301" id="rfc.xref.status.301.2" title="301 Moved Permanently">Section 8.3.2</a>2289 <td class="left"> <a href="#status.301" id="rfc.xref.status.301.2" title="301 Moved Permanently">Section 7.3.2</a> 2287 2290 </td> 2288 2291 </tr> … … 2290 2293 <td class="left">302</td> 2291 2294 <td class="left">Found</td> 2292 <td class="left"> <a href="#status.302" id="rfc.xref.status.302.2" title="302 Found">Section 8.3.3</a>2295 <td class="left"> <a href="#status.302" id="rfc.xref.status.302.2" title="302 Found">Section 7.3.3</a> 2293 2296 </td> 2294 2297 </tr> … … 2296 2299 <td class="left">303</td> 2297 2300 <td class="left">See Other</td> 2298 <td class="left"> <a href="#status.303" id="rfc.xref.status.303.3" title="303 See Other">Section 8.3.4</a>2301 <td class="left"> <a href="#status.303" id="rfc.xref.status.303.3" title="303 See Other">Section 7.3.4</a> 2299 2302 </td> 2300 2303 </tr> … … 2302 2305 <td class="left">305</td> 2303 2306 <td class="left">Use Proxy</td> 2304 <td class="left"> <a href="#status.305" id="rfc.xref.status.305.2" title="305 Use Proxy">Section 8.3.6</a>2307 <td class="left"> <a href="#status.305" id="rfc.xref.status.305.2" title="305 Use Proxy">Section 7.3.6</a> 2305 2308 </td> 2306 2309 </tr> … … 2308 2311 <td class="left">306</td> 2309 2312 <td class="left">(Unused)</td> 2310 <td class="left"> <a href="#status.306" id="rfc.xref.status.306.1" title="306 (Unused)">Section 8.3.7</a>2313 <td class="left"> <a href="#status.306" id="rfc.xref.status.306.1" title="306 (Unused)">Section 7.3.7</a> 2311 2314 </td> 2312 2315 </tr> … … 2314 2317 <td class="left">307</td> 2315 2318 <td class="left">Temporary Redirect</td> 2316 <td class="left"> <a href="#status.307" id="rfc.xref.status.307.3" title="307 Temporary Redirect">Section 8.3.8</a>2319 <td class="left"> <a href="#status.307" id="rfc.xref.status.307.3" title="307 Temporary Redirect">Section 7.3.8</a> 2317 2320 </td> 2318 2321 </tr> … … 2320 2323 <td class="left">400</td> 2321 2324 <td class="left">Bad Request</td> 2322 <td class="left"> <a href="#status.400" id="rfc.xref.status.400.2" title="400 Bad Request">Section 8.4.1</a>2325 <td class="left"> <a href="#status.400" id="rfc.xref.status.400.2" title="400 Bad Request">Section 7.4.1</a> 2323 2326 </td> 2324 2327 </tr> … … 2326 2329 <td class="left">402</td> 2327 2330 <td class="left">Payment Required</td> 2328 <td class="left"> <a href="#status.402" id="rfc.xref.status.402.2" title="402 Payment Required">Section 8.4.3</a>2331 <td class="left"> <a href="#status.402" id="rfc.xref.status.402.2" title="402 Payment Required">Section 7.4.3</a> 2329 2332 </td> 2330 2333 </tr> … … 2332 2335 <td class="left">403</td> 2333 2336 <td class="left">Forbidden</td> 2334 <td class="left"> <a href="#status.403" id="rfc.xref.status.403.2" title="403 Forbidden">Section 8.4.4</a>2337 <td class="left"> <a href="#status.403" id="rfc.xref.status.403.2" title="403 Forbidden">Section 7.4.4</a> 2335 2338 </td> 2336 2339 </tr> … … 2338 2341 <td class="left">404</td> 2339 2342 <td class="left">Not Found</td> 2340 <td class="left"> <a href="#status.404" id="rfc.xref.status.404.2" title="404 Not Found">Section 8.4.5</a>2343 <td class="left"> <a href="#status.404" id="rfc.xref.status.404.2" title="404 Not Found">Section 7.4.5</a> 2341 2344 </td> 2342 2345 </tr> … … 2344 2347 <td class="left">405</td> 2345 2348 <td class="left">Method Not Allowed</td> 2346 <td class="left"> <a href="#status.405" id="rfc.xref.status.405.2" title="405 Method Not Allowed">Section 8.4.6</a>2349 <td class="left"> <a href="#status.405" id="rfc.xref.status.405.2" title="405 Method Not Allowed">Section 7.4.6</a> 2347 2350 </td> 2348 2351 </tr> … … 2350 2353 <td class="left">406</td> 2351 2354 <td class="left">Not Acceptable</td> 2352 <td class="left"> <a href="#status.406" id="rfc.xref.status.406.2" title="406 Not Acceptable">Section 8.4.7</a>2355 <td class="left"> <a href="#status.406" id="rfc.xref.status.406.2" title="406 Not Acceptable">Section 7.4.7</a> 2353 2356 </td> 2354 2357 </tr> … … 2356 2359 <td class="left">407</td> 2357 2360 <td class="left">Proxy Authentication Required</td> 2358 <td class="left"> <a href="#status.407" id="rfc.xref.status.407.1" title="407 Proxy Authentication Required">Section 8.4.8</a>2361 <td class="left"> <a href="#status.407" id="rfc.xref.status.407.1" title="407 Proxy Authentication Required">Section 7.4.8</a> 2359 2362 </td> 2360 2363 </tr> … … 2362 2365 <td class="left">408</td> 2363 2366 <td class="left">Request Timeout</td> 2364 <td class="left"> <a href="#status.408" id="rfc.xref.status.408.2" title="408 Request Timeout">Section 8.4.9</a>2367 <td class="left"> <a href="#status.408" id="rfc.xref.status.408.2" title="408 Request Timeout">Section 7.4.9</a> 2365 2368 </td> 2366 2369 </tr> … … 2368 2371 <td class="left">409</td> 2369 2372 <td class="left">Conflict</td> 2370 <td class="left"> <a href="#status.409" id="rfc.xref.status.409.2" title="409 Conflict">Section 8.4.10</a>2373 <td class="left"> <a href="#status.409" id="rfc.xref.status.409.2" title="409 Conflict">Section 7.4.10</a> 2371 2374 </td> 2372 2375 </tr> … … 2374 2377 <td class="left">410</td> 2375 2378 <td class="left">Gone</td> 2376 <td class="left"> <a href="#status.410" id="rfc.xref.status.410.2" title="410 Gone">Section 8.4.11</a>2379 <td class="left"> <a href="#status.410" id="rfc.xref.status.410.2" title="410 Gone">Section 7.4.11</a> 2377 2380 </td> 2378 2381 </tr> … … 2380 2383 <td class="left">411</td> 2381 2384 <td class="left">Length Required</td> 2382 <td class="left"> <a href="#status.411" id="rfc.xref.status.411.2" title="411 Length Required">Section 8.4.12</a>2385 <td class="left"> <a href="#status.411" id="rfc.xref.status.411.2" title="411 Length Required">Section 7.4.12</a> 2383 2386 </td> 2384 2387 </tr> … … 2386 2389 <td class="left">413</td> 2387 2390 <td class="left">Request Representation Too Large</td> 2388 <td class="left"> <a href="#status.413" id="rfc.xref.status.413.2" title="413 Request Representation Too Large">Section 8.4.14</a>2391 <td class="left"> <a href="#status.413" id="rfc.xref.status.413.2" title="413 Request Representation Too Large">Section 7.4.14</a> 2389 2392 </td> 2390 2393 </tr> … … 2392 2395 <td class="left">414</td> 2393 2396 <td class="left">URI Too Long</td> 2394 <td class="left"> <a href="#status.414" id="rfc.xref.status.414.2" title="414 URI Too Long">Section 8.4.15</a>2397 <td class="left"> <a href="#status.414" id="rfc.xref.status.414.2" title="414 URI Too Long">Section 7.4.15</a> 2395 2398 </td> 2396 2399 </tr> … … 2398 2401 <td class="left">415</td> 2399 2402 <td class="left">Unsupported Media Type</td> 2400 <td class="left"> <a href="#status.415" id="rfc.xref.status.415.2" title="415 Unsupported Media Type">Section 8.4.16</a>2403 <td class="left"> <a href="#status.415" id="rfc.xref.status.415.2" title="415 Unsupported Media Type">Section 7.4.16</a> 2401 2404 </td> 2402 2405 </tr> … … 2404 2407 <td class="left">417</td> 2405 2408 <td class="left">Expectation Failed</td> 2406 <td class="left"> <a href="#status.417" id="rfc.xref.status.417.2" title="417 Expectation Failed">Section 8.4.18</a>2409 <td class="left"> <a href="#status.417" id="rfc.xref.status.417.2" title="417 Expectation Failed">Section 7.4.18</a> 2407 2410 </td> 2408 2411 </tr> … … 2410 2413 <td class="left">426</td> 2411 2414 <td class="left">Upgrade Required</td> 2412 <td class="left"> <a href="#status.426" id="rfc.xref.status.426.2" title="426 Upgrade Required">Section 8.4.19</a>2415 <td class="left"> <a href="#status.426" id="rfc.xref.status.426.2" title="426 Upgrade Required">Section 7.4.19</a> 2413 2416 </td> 2414 2417 </tr> … … 2416 2419 <td class="left">500</td> 2417 2420 <td class="left">Internal Server Error</td> 2418 <td class="left"> <a href="#status.500" id="rfc.xref.status.500.2" title="500 Internal Server Error">Section 8.5.1</a>2421 <td class="left"> <a href="#status.500" id="rfc.xref.status.500.2" title="500 Internal Server Error">Section 7.5.1</a> 2419 2422 </td> 2420 2423 </tr> … … 2422 2425 <td class="left">501</td> 2423 2426 <td class="left">Not Implemented</td> 2424 <td class="left"> <a href="#status.501" id="rfc.xref.status.501.2" title="501 Not Implemented">Section 8.5.2</a>2427 <td class="left"> <a href="#status.501" id="rfc.xref.status.501.2" title="501 Not Implemented">Section 7.5.2</a> 2425 2428 </td> 2426 2429 </tr> … … 2428 2431 <td class="left">502</td> 2429 2432 <td class="left">Bad Gateway</td> 2430 <td class="left"> <a href="#status.502" id="rfc.xref.status.502.2" title="502 Bad Gateway">Section 8.5.3</a>2433 <td class="left"> <a href="#status.502" id="rfc.xref.status.502.2" title="502 Bad Gateway">Section 7.5.3</a> 2431 2434 </td> 2432 2435 </tr> … … 2434 2437 <td class="left">503</td> 2435 2438 <td class="left">Service Unavailable</td> 2436 <td class="left"> <a href="#status.503" id="rfc.xref.status.503.2" title="503 Service Unavailable">Section 8.5.4</a>2439 <td class="left"> <a href="#status.503" id="rfc.xref.status.503.2" title="503 Service Unavailable">Section 7.5.4</a> 2437 2440 </td> 2438 2441 </tr> … … 2440 2443 <td class="left">504</td> 2441 2444 <td class="left">Gateway Timeout</td> 2442 <td class="left"> <a href="#status.504" id="rfc.xref.status.504.2" title="504 Gateway Timeout">Section 8.5.5</a>2445 <td class="left"> <a href="#status.504" id="rfc.xref.status.504.2" title="504 Gateway Timeout">Section 7.5.5</a> 2443 2446 </td> 2444 2447 </tr> … … 2446 2449 <td class="left">505</td> 2447 2450 <td class="left">HTTP Version Not Supported</td> 2448 <td class="left"> <a href="#status.505" id="rfc.xref.status.505.2" title="505 HTTP Version Not Supported">Section 8.5.6</a>2451 <td class="left"> <a href="#status.505" id="rfc.xref.status.505.2" title="505 HTTP Version Not Supported">Section 7.5.6</a> 2449 2452 </td> 2450 2453 </tr> … … 2452 2455 </table> 2453 2456 </div> 2454 <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>2455 <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.1"><cite title="Registration Procedures for Message Header Fields">[RFC3864]</cite></a>):2457 <h2 id="rfc.section.9.3"><a href="#rfc.section.9.3">9.3</a> <a id="header.field.registration" href="#header.field.registration">Header Field Registration</a></h2> 2458 <p id="rfc.section.9.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.1"><cite title="Registration Procedures for Message Header Fields">[RFC3864]</cite></a>): 2456 2459 </p> 2457 2460 <div id="rfc.table.3"> … … 2471 2474 <td class="left">http</td> 2472 2475 <td class="left">standard</td> 2473 <td class="left"> <a href="#header.allow" id="rfc.xref.header.allow.3" title="Allow">Section 9.1</a>2476 <td class="left"> <a href="#header.allow" id="rfc.xref.header.allow.3" title="Allow">Section 8.1</a> 2474 2477 </td> 2475 2478 </tr> … … 2478 2481 <td class="left">http</td> 2479 2482 <td class="left">standard</td> 2480 <td class="left"> <a href="#header.expect" id="rfc.xref.header.expect.3" title="Expect">Section 9.2</a>2483 <td class="left"> <a href="#header.expect" id="rfc.xref.header.expect.3" title="Expect">Section 8.2</a> 2481 2484 </td> 2482 2485 </tr> … … 2485 2488 <td class="left">http</td> 2486 2489 <td class="left">standard</td> 2487 <td class="left"> <a href="#header.from" id="rfc.xref.header.from.2" title="From">Section 9.3</a>2490 <td class="left"> <a href="#header.from" id="rfc.xref.header.from.2" title="From">Section 8.3</a> 2488 2491 </td> 2489 2492 </tr> … … 2492 2495 <td class="left">http</td> 2493 2496 <td class="left">standard</td> 2494 <td class="left"> <a href="#header.location" id="rfc.xref.header.location.3" title="Location">Section 9.4</a>2497 <td class="left"> <a href="#header.location" id="rfc.xref.header.location.3" title="Location">Section 8.4</a> 2495 2498 </td> 2496 2499 </tr> … … 2499 2502 <td class="left">http</td> 2500 2503 <td class="left">standard</td> 2501 <td class="left"> <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.4" title="Max-Forwards">Section 9.5</a>2504 <td class="left"> <a href="#header.max-forwards" id="rfc.xref.header.max-forwards.4" title="Max-Forwards">Section 8.5</a> 2502 2505 </td> 2503 2506 </tr> … … 2506 2509 <td class="left">http</td> 2507 2510 <td class="left">standard</td> 2508 <td class="left"> <a href="#header.referer" id="rfc.xref.header.referer.2" title="Referer">Section 9.6</a>2511 <td class="left"> <a href="#header.referer" id="rfc.xref.header.referer.2" title="Referer">Section 8.6</a> 2509 2512 </td> 2510 2513 </tr> … … 2513 2516 <td class="left">http</td> 2514 2517 <td class="left">standard</td> 2515 <td class="left"> <a href="#header.retry-after" id="rfc.xref.header.retry-after.3" title="Retry-After">Section 9.7</a>2518 <td class="left"> <a href="#header.retry-after" id="rfc.xref.header.retry-after.3" title="Retry-After">Section 8.7</a> 2516 2519 </td> 2517 2520 </tr> … … 2520 2523 <td class="left">http</td> 2521 2524 <td class="left">standard</td> 2522 <td class="left"> <a href="#header.server" id="rfc.xref.header.server.2" title="Server">Section 9.8</a>2525 <td class="left"> <a href="#header.server" id="rfc.xref.header.server.2" title="Server">Section 8.8</a> 2523 2526 </td> 2524 2527 </tr> … … 2527 2530 <td class="left">http</td> 2528 2531 <td class="left">standard</td> 2529 <td class="left"> <a href="#header.user-agent" id="rfc.xref.header.user-agent.2" title="User-Agent">Section 9.9</a>2532 <td class="left"> <a href="#header.user-agent" id="rfc.xref.header.user-agent.2" title="User-Agent">Section 8.9</a> 2530 2533 </td> 2531 2534 </tr> … … 2533 2536 </table> 2534 2537 </div> 2535 <p id="rfc.section. 10.3.p.2">The change controller is: "IETF (iesg@ietf.org) - Internet Engineering Task Force".</p>2536 <h1 id="rfc.section.1 1"><a href="#rfc.section.11">11.</a> <a id="security.considerations" href="#security.considerations">Security Considerations</a></h1>2537 <p id="rfc.section.1 1.p.1">This section is meant to inform application developers, information providers, and users of the security limitations in HTTP/1.12538 <p id="rfc.section.9.3.p.2">The change controller is: "IETF (iesg@ietf.org) - Internet Engineering Task Force".</p> 2539 <h1 id="rfc.section.10"><a href="#rfc.section.10">10.</a> <a id="security.considerations" href="#security.considerations">Security Considerations</a></h1> 2540 <p id="rfc.section.10.p.1">This section is meant to inform application developers, information providers, and users of the security limitations in HTTP/1.1 2538 2541 as described by this document. The discussion does not include definitive solutions to the problems revealed, though it does 2539 2542 make some suggestions for reducing security risks. 2540 2543 </p> 2541 <h2 id="rfc.section.1 1.1"><a href="#rfc.section.11.1">11.1</a> <a id="security.sensitive" href="#security.sensitive">Transfer of Sensitive Information</a></h2>2542 <p id="rfc.section.1 1.1.p.1">Like any generic data transfer protocol, HTTP cannot regulate the content of the data that is transferred, nor is there any2544 <h2 id="rfc.section.10.1"><a href="#rfc.section.10.1">10.1</a> <a id="security.sensitive" href="#security.sensitive">Transfer of Sensitive Information</a></h2> 2545 <p id="rfc.section.10.1.p.1">Like any generic data transfer protocol, HTTP cannot regulate the content of the data that is transferred, nor is there any 2543 2546 a priori method of determining the sensitivity of any particular piece of information within the context of any given request. 2544 2547 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 2545 2548 special mention in this context: Server, Via, Referer and From. 2546 2549 </p> 2547 <p id="rfc.section.1 1.1.p.2">Revealing the specific software version of the server might allow the server machine to become more vulnerable to attacks2550 <p id="rfc.section.10.1.p.2">Revealing the specific software version of the server might allow the server machine to become more vulnerable to attacks 2548 2551 against software that is known to contain security holes. Implementors <em class="bcp14">SHOULD</em> make the Server header field a configurable option. 2549 2552 </p> 2550 <p id="rfc.section.1 1.1.p.3">Proxies which serve as a portal through a network firewall <em class="bcp14">SHOULD</em> take special precautions regarding the transfer of header information that identifies the hosts behind the firewall. In particular,2553 <p id="rfc.section.10.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, 2551 2554 they <em class="bcp14">SHOULD</em> remove, or replace with sanitized versions, any Via fields generated behind the firewall. 2552 2555 </p> 2553 <p id="rfc.section.1 1.1.p.4">The Referer header field allows reading patterns to be studied and reverse links drawn. Although it can be very useful, its2556 <p id="rfc.section.10.1.p.4">The Referer header field allows reading patterns to be studied and reverse links drawn. Although it can be very useful, its 2554 2557 power can be abused if user details are not separated from the information contained in the Referer. Even when the personal 2555 2558 information has been removed, the Referer header field might indicate a private document's URI whose publication would be 2556 2559 inappropriate. 2557 2560 </p> 2558 <p id="rfc.section.1 1.1.p.5">The information sent in the From field might conflict with the user's privacy interests or their site's security policy, and2561 <p id="rfc.section.10.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 2559 2562 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. 2560 2563 </p> 2561 <p id="rfc.section.1 1.1.p.6">We suggest, though do not require, that a convenient toggle interface be provided for the user to enable or disable the sending2564 <p id="rfc.section.10.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 2562 2565 of From and Referer information. 2563 2566 </p> 2564 <p id="rfc.section.1 1.1.p.7">The User-Agent (<a href="#header.user-agent" id="rfc.xref.header.user-agent.3" title="User-Agent">Section 9.9</a>) or Server (<a href="#header.server" id="rfc.xref.header.server.3" title="Server">Section 9.8</a>) header fields can sometimes be used to determine that a specific client or server have a particular security hole which2567 <p id="rfc.section.10.1.p.7">The User-Agent (<a href="#header.user-agent" id="rfc.xref.header.user-agent.3" title="User-Agent">Section 8.9</a>) or Server (<a href="#header.server" id="rfc.xref.header.server.3" title="Server">Section 8.8</a>) header fields can sometimes be used to determine that a specific client or server have a particular security hole which 2565 2568 might be exploited. Unfortunately, this same information is often used for other valuable purposes for which HTTP currently 2566 2569 has no better mechanism. 2567 2570 </p> 2568 <p id="rfc.section.1 1.1.p.8">Furthermore, the User-Agent header field may contain enough entropy to be used, possibly in conjunction with other material,2571 <p id="rfc.section.10.1.p.8">Furthermore, the User-Agent header field may contain enough entropy to be used, possibly in conjunction with other material, 2569 2572 to uniquely identify the user. 2570 2573 </p> 2571 <p id="rfc.section.1 1.1.p.9">Some request methods, like TRACE (<a href="#TRACE" id="rfc.xref.TRACE.4" title="TRACE">Section 7.8</a>), expose information that was sent in request header fields within the body of their response. Clients <em class="bcp14">SHOULD</em> be careful with sensitive information, like Cookies, Authorization credentials, and other header fields that might be used2574 <p id="rfc.section.10.1.p.9">Some request methods, like TRACE (<a href="#TRACE" id="rfc.xref.TRACE.4" title="TRACE">Section 6.8</a>), expose information that was sent in request header fields within the body of their response. Clients <em class="bcp14">SHOULD</em> be careful with sensitive information, like Cookies, Authorization credentials, and other header fields that might be used 2572 2575 to collect data from the client. 2573 2576 </p> 2574 <h2 id="rfc.section.1 1.2"><a href="#rfc.section.11.2">11.2</a> <a id="encoding.sensitive.information.in.uris" href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></h2>2575 <p id="rfc.section.1 1.2.p.1">Because the source of a link might be private information or might reveal an otherwise private information source, it is strongly2577 <h2 id="rfc.section.10.2"><a href="#rfc.section.10.2">10.2</a> <a id="encoding.sensitive.information.in.uris" href="#encoding.sensitive.information.in.uris">Encoding Sensitive Information in URIs</a></h2> 2578 <p id="rfc.section.10.2.p.1">Because the source of a link might be private information or might reveal an otherwise private information source, it is strongly 2576 2579 recommended that the user be able to select whether or not the Referer field is sent. For example, a browser client could 2577 2580 have a toggle switch for browsing openly/anonymously, which would respectively enable/disable the sending of Referer and From 2578 2581 information. 2579 2582 </p> 2580 <p id="rfc.section.1 1.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.2581 </p> 2582 <p id="rfc.section.1 1.2.p.3">Authors of services <em class="bcp14">SHOULD NOT</em> use GET-based forms for the submission of sensitive data because that data will be placed in the request-target. Many existing2583 <p id="rfc.section.10.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. 2584 </p> 2585 <p id="rfc.section.10.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 2583 2586 servers, proxies, and user agents log or display the request-target in places where it might be visible to third parties. 2584 2587 Such services can use POST-based form submission instead. 2585 2588 </p> 2586 <h2 id="rfc.section.1 1.3"><a href="#rfc.section.11.3">11.3</a> <a id="location.spoofing" href="#location.spoofing">Location Headers and Spoofing</a></h2>2587 <p id="rfc.section.1 1.3.p.1">If a single server supports multiple organizations that do not trust one another, then it <em class="bcp14">MUST</em> check the values of Location and Content-Location header fields in responses that are generated under control of said organizations2589 <h2 id="rfc.section.10.3"><a href="#rfc.section.10.3">10.3</a> <a id="location.spoofing" href="#location.spoofing">Location Headers and Spoofing</a></h2> 2590 <p id="rfc.section.10.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 2588 2591 to make sure that they do not attempt to invalidate resources over which they have no authority. 2589 2592 </p> 2590 <h2 id="rfc.section.1 1.4"><a href="#rfc.section.11.4">11.4</a> Security Considerations for CONNECT2593 <h2 id="rfc.section.10.4"><a href="#rfc.section.10.4">10.4</a> Security Considerations for CONNECT 2591 2594 </h2> 2592 <p id="rfc.section.1 1.4.p.1">Since tunneled data is opaque to the proxy, there are additional risks to tunneling to other well-known or reserved ports.2595 <p id="rfc.section.10.4.p.1">Since tunneled data is opaque to the proxy, there are additional risks to tunneling to other well-known or reserved ports. 2593 2596 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. 2594 2597 </p> 2595 <h1 id="rfc.section.1 2"><a href="#rfc.section.12">12.</a> <a id="acks" href="#acks">Acknowledgments</a></h1>2596 <p id="rfc.section.1 2.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 12</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>.2597 </p> 2598 <h1 id="rfc.references"><a id="rfc.section.1 3" href="#rfc.section.13">13.</a> References2598 <h1 id="rfc.section.11"><a href="#rfc.section.11">11.</a> <a id="acks" href="#acks">Acknowledgments</a></h1> 2599 <p id="rfc.section.11.p.1">See <a href="p1-messaging.html#acks" title="Acknowledgments">Section 12</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>. 2600 </p> 2601 <h1 id="rfc.references"><a id="rfc.section.12" href="#rfc.section.12">12.</a> References 2599 2602 </h1> 2600 <h2 id="rfc.references.1"><a href="#rfc.section.1 3.1" id="rfc.section.13.1">13.1</a> Normative References2603 <h2 id="rfc.references.1"><a href="#rfc.section.12.1" id="rfc.section.12.1">12.1</a> Normative References 2601 2604 </h2> 2602 2605 <table> … … 2647 2650 </tr> 2648 2651 </table> 2649 <h2 id="rfc.references.2"><a href="#rfc.section.1 3.2" id="rfc.section.13.2">13.2</a> Informative References2652 <h2 id="rfc.references.2"><a href="#rfc.section.12.2" id="rfc.section.12.2">12.2</a> Informative References 2650 2653 </h2> 2651 2654 <table> … … 2712 2715 <p id="rfc.section.A.p.1">This document takes over the Status Code Registry, previously defined in <a href="http://tools.ietf.org/html/rfc2817#section-7.1">Section 7.1</a> of <a href="#RFC2817" id="rfc.xref.RFC2817.2"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>. (<a href="#status.code.registry" title="Status Code Registry">Section 4.2</a>) 2713 2716 </p> 2714 <p id="rfc.section.A.p.2">Clarify definition of POST. (<a href="#POST" id="rfc.xref.POST.3" title="POST">Section 7.5</a>)2715 </p> 2716 <p id="rfc.section.A.p.3">Remove requirement to handle all Content-* header fields; ban use of Content-Range with PUT. (<a href="#PUT" id="rfc.xref.PUT.3" title="PUT">Section 7.6</a>)2717 </p> 2718 <p id="rfc.section.A.p.4">Take over definition of CONNECT method from <a href="#RFC2817" id="rfc.xref.RFC2817.3"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>. (<a href="#CONNECT" id="rfc.xref.CONNECT.3" title="CONNECT">Section 7.9</a>)2719 </p> 2720 <p id="rfc.section.A.p.5">Broadened the definition of 203 (Non-Authoritative Information) to include cases of payload transformations as well. (<a href="#status.203" id="rfc.xref.status.203.3" title="203 Non-Authoritative Information">Section 8.2.4</a>)2717 <p id="rfc.section.A.p.2">Clarify definition of POST. (<a href="#POST" id="rfc.xref.POST.3" title="POST">Section 6.5</a>) 2718 </p> 2719 <p id="rfc.section.A.p.3">Remove requirement to handle all Content-* header fields; ban use of Content-Range with PUT. (<a href="#PUT" id="rfc.xref.PUT.3" title="PUT">Section 6.6</a>) 2720 </p> 2721 <p id="rfc.section.A.p.4">Take over definition of CONNECT method from <a href="#RFC2817" id="rfc.xref.RFC2817.3"><cite title="Upgrading to TLS Within HTTP/1.1">[RFC2817]</cite></a>. (<a href="#CONNECT" id="rfc.xref.CONNECT.3" title="CONNECT">Section 6.9</a>) 2722 </p> 2723 <p id="rfc.section.A.p.5">Broadened the definition of 203 (Non-Authoritative Information) to include cases of payload transformations as well. (<a href="#status.203" id="rfc.xref.status.203.3" title="203 Non-Authoritative Information">Section 7.2.4</a>) 2721 2724 </p> 2722 2725 <p id="rfc.section.A.p.6">Failed to consider that there are many other request methods that are safe to automatically redirect, and further that the 2723 user agent is able to make that determination based on the request method semantics. (Sections <a href="#status.301" id="rfc.xref.status.301.3" title="301 Moved Permanently"> 8.3.2</a>, <a href="#status.302" id="rfc.xref.status.302.3" title="302 Found">8.3.3</a> and <a href="#status.307" id="rfc.xref.status.307.4" title="307 Temporary Redirect">8.3.8</a>)2726 user agent is able to make that determination based on the request method semantics. (Sections <a href="#status.301" id="rfc.xref.status.301.3" title="301 Moved Permanently">7.3.2</a>, <a href="#status.302" id="rfc.xref.status.302.3" title="302 Found">7.3.3</a> and <a href="#status.307" id="rfc.xref.status.307.4" title="307 Temporary Redirect">7.3.8</a>) 2724 2727 </p> 2725 2728 <p id="rfc.section.A.p.7">Deprecate 305 Use Proxy status code, because user agents did not implement it. It used to indicate that the target resource 2726 2729 must be accessed through the proxy given by the Location field. The Location field gave the URI of the proxy. The recipient 2727 was expected to repeat this single request via the proxy. (<a href="#status.305" id="rfc.xref.status.305.3" title="305 Use Proxy">Section 8.3.6</a>)2728 </p> 2729 <p id="rfc.section.A.p.8">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 8.4.19</a>)2730 </p> 2731 <p id="rfc.section.A.p.9">Change ABNF productions for header fields to only define the field value. (<a href="#header.field.definitions" title="Header Field Definitions">Section 9</a>)2730 was expected to repeat this single request via the proxy. (<a href="#status.305" id="rfc.xref.status.305.3" title="305 Use Proxy">Section 7.3.6</a>) 2731 </p> 2732 <p id="rfc.section.A.p.8">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 7.4.19</a>) 2733 </p> 2734 <p id="rfc.section.A.p.9">Change ABNF productions for header fields to only define the field value. (<a href="#header.field.definitions" title="Header Field Definitions">Section 8</a>) 2732 2735 </p> 2733 2736 <p id="rfc.section.A.p.10">Reclassify "Allow" as response header field, removing the option to specify it in a PUT request. Relax the server requirement 2734 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.1</a>)2737 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 8.1</a>) 2735 2738 </p> 2736 2739 <p id="rfc.section.A.p.11">Correct syntax of Location header field to allow URI references (including relative references and fragments), as referred 2737 2740 symbol "absoluteURI" wasn't what was expected, and add some clarifications as to when use of fragments would not be appropriate. 2738 (<a href="#header.location" id="rfc.xref.header.location.4" title="Location">Section 9.4</a>)2739 </p> 2740 <p id="rfc.section.A.p.12">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.5</a>)2741 </p> 2742 <p id="rfc.section.A.p.13">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.6</a>)2741 (<a href="#header.location" id="rfc.xref.header.location.4" title="Location">Section 8.4</a>) 2742 </p> 2743 <p id="rfc.section.A.p.12">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 8.5</a>) 2744 </p> 2745 <p id="rfc.section.A.p.13">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 8.6</a>) 2743 2746 </p> 2744 2747 <p id="rfc.section.A.p.14">In the description of the Server header field, the Via field was described as a SHOULD. The requirement was and is stated 2745 correctly in the description of the Via header field in <a href="p1-messaging.html#header.via" title="Via">Section 9.9</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>. (<a href="#header.server" id="rfc.xref.header.server.4" title="Server">Section 9.8</a>)2748 correctly in the description of the Via header field in <a href="p1-messaging.html#header.via" title="Via">Section 9.9</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>. (<a href="#header.server" id="rfc.xref.header.server.4" title="Server">Section 8.8</a>) 2746 2749 </p> 2747 2750 <h1 id="rfc.section.B"><a href="#rfc.section.B">B.</a> <a id="collected.abnf" href="#collected.abnf">Collected ABNF</a></h1> … … 3080 3083 <ul class="ind"> 3081 3084 <li><a id="rfc.index.1" href="#rfc.index.1"><b>1</b></a><ul> 3082 <li>100 Continue (status code) <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.22"><b> 8.1.1</b></a>, <a href="#rfc.xref.status.100.2">10.2</a></li>3083 <li>101 Switching Protocols (status code) <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.23"><b> 8.1.2</b></a>, <a href="#rfc.xref.status.101.2">10.2</a></li>3085 <li>100 Continue (status code) <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.22"><b>7.1.1</b></a>, <a href="#rfc.xref.status.100.2">9.2</a></li> 3086 <li>101 Switching Protocols (status code) <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.23"><b>7.1.2</b></a>, <a href="#rfc.xref.status.101.2">9.2</a></li> 3084 3087 </ul> 3085 3088 </li> 3086 3089 <li><a id="rfc.index.2" href="#rfc.index.2"><b>2</b></a><ul> 3087 <li>200 OK (status code) <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.24"><b> 8.2.1</b></a>, <a href="#rfc.xref.status.200.2">10.2</a></li>3088 <li>201 Created (status code) <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.25"><b> 8.2.2</b></a>, <a href="#rfc.xref.status.201.2">10.2</a></li>3089 <li>202 Accepted (status code) <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.26"><b> 8.2.3</b></a>, <a href="#rfc.xref.status.202.2">10.2</a></li>3090 <li>203 Non-Authoritative Information (status code) <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.27"><b> 8.2.4</b></a>, <a href="#rfc.xref.status.203.2">10.2</a>, <a href="#rfc.xref.status.203.3">A</a></li>3091 <li>204 No Content (status code) <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.28"><b> 8.2.5</b></a>, <a href="#rfc.xref.status.204.2">10.2</a></li>3092 <li>205 Reset Content (status code) <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.29"><b> 8.2.6</b></a>, <a href="#rfc.xref.status.205.2">10.2</a></li>3093 <li>206 Partial Content (status code) <a href="#rfc.iref.30"><b> 8.2.7</b></a></li>3090 <li>200 OK (status code) <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.24"><b>7.2.1</b></a>, <a href="#rfc.xref.status.200.2">9.2</a></li> 3091 <li>201 Created (status code) <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.25"><b>7.2.2</b></a>, <a href="#rfc.xref.status.201.2">9.2</a></li> 3092 <li>202 Accepted (status code) <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.26"><b>7.2.3</b></a>, <a href="#rfc.xref.status.202.2">9.2</a></li> 3093 <li>203 Non-Authoritative Information (status code) <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.27"><b>7.2.4</b></a>, <a href="#rfc.xref.status.203.2">9.2</a>, <a href="#rfc.xref.status.203.3">A</a></li> 3094 <li>204 No Content (status code) <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.28"><b>7.2.5</b></a>, <a href="#rfc.xref.status.204.2">9.2</a></li> 3095 <li>205 Reset Content (status code) <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.29"><b>7.2.6</b></a>, <a href="#rfc.xref.status.205.2">9.2</a></li> 3096 <li>206 Partial Content (status code) <a href="#rfc.iref.30"><b>7.2.7</b></a></li> 3094 3097 </ul> 3095 3098 </li> 3096 3099 <li><a id="rfc.index.3" href="#rfc.index.3"><b>3</b></a><ul> 3097 <li>300 Multiple Choices (status code) <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.31"><b> 8.3.1</b></a>, <a href="#rfc.xref.status.300.2">10.2</a></li>3098 <li>301 Moved Permanently (status code) <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.32"><b> 8.3.2</b></a>, <a href="#rfc.xref.status.301.2">10.2</a>, <a href="#rfc.xref.status.301.3">A</a></li>3099 <li>302 Found (status code) <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.33"><b> 8.3.3</b></a>, <a href="#rfc.xref.status.302.2">10.2</a>, <a href="#rfc.xref.status.302.3">A</a></li>3100 <li>303 See Other (status code) <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.xref.status.303.2"> 8.3.3</a>, <a href="#rfc.iref.34"><b>8.3.4</b></a>, <a href="#rfc.xref.status.303.3">10.2</a></li>3101 <li>304 Not Modified (status code) <a href="#rfc.iref.35"><b> 8.3.5</b></a></li>3102 <li>305 Use Proxy (status code) <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.36"><b> 8.3.6</b></a>, <a href="#rfc.xref.status.305.2">10.2</a>, <a href="#rfc.xref.status.305.3">A</a></li>3103 <li>306 (Unused) (status code) <a href="#rfc.iref.37"><b> 8.3.7</b></a>, <a href="#rfc.xref.status.306.1">10.2</a></li>3104 <li>307 Temporary Redirect (status code) <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.xref.status.307.2"> 8.3.3</a>, <a href="#rfc.iref.38"><b>8.3.8</b></a>, <a href="#rfc.xref.status.307.3">10.2</a>, <a href="#rfc.xref.status.307.4">A</a></li>3100 <li>300 Multiple Choices (status code) <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.31"><b>7.3.1</b></a>, <a href="#rfc.xref.status.300.2">9.2</a></li> 3101 <li>301 Moved Permanently (status code) <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.32"><b>7.3.2</b></a>, <a href="#rfc.xref.status.301.2">9.2</a>, <a href="#rfc.xref.status.301.3">A</a></li> 3102 <li>302 Found (status code) <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.33"><b>7.3.3</b></a>, <a href="#rfc.xref.status.302.2">9.2</a>, <a href="#rfc.xref.status.302.3">A</a></li> 3103 <li>303 See Other (status code) <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.xref.status.303.2">7.3.3</a>, <a href="#rfc.iref.34"><b>7.3.4</b></a>, <a href="#rfc.xref.status.303.3">9.2</a></li> 3104 <li>304 Not Modified (status code) <a href="#rfc.iref.35"><b>7.3.5</b></a></li> 3105 <li>305 Use Proxy (status code) <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.36"><b>7.3.6</b></a>, <a href="#rfc.xref.status.305.2">9.2</a>, <a href="#rfc.xref.status.305.3">A</a></li> 3106 <li>306 (Unused) (status code) <a href="#rfc.iref.37"><b>7.3.7</b></a>, <a href="#rfc.xref.status.306.1">9.2</a></li> 3107 <li>307 Temporary Redirect (status code) <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.xref.status.307.2">7.3.3</a>, <a href="#rfc.iref.38"><b>7.3.8</b></a>, <a href="#rfc.xref.status.307.3">9.2</a>, <a href="#rfc.xref.status.307.4">A</a></li> 3105 3108 </ul> 3106 3109 </li> 3107 3110 <li><a id="rfc.index.4" href="#rfc.index.4"><b>4</b></a><ul> 3108 <li>400 Bad Request (status code) <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.39"><b> 8.4.1</b></a>, <a href="#rfc.xref.status.400.2">10.2</a></li>3109 <li>401 Unauthorized (status code) <a href="#rfc.iref.40"><b> 8.4.2</b></a></li>3110 <li>402 Payment Required (status code) <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.41"><b> 8.4.3</b></a>, <a href="#rfc.xref.status.402.2">10.2</a></li>3111 <li>403 Forbidden (status code) <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.42"><b> 8.4.4</b></a>, <a href="#rfc.xref.status.403.2">10.2</a></li>3112 <li>404 Not Found (status code) <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.43"><b> 8.4.5</b></a>, <a href="#rfc.xref.status.404.2">10.2</a></li>3113 <li>405 Method Not Allowed (status code) <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.44"><b> 8.4.6</b></a>, <a href="#rfc.xref.status.405.2">10.2</a></li>3114 <li>406 Not Acceptable (status code) <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.45"><b> 8.4.7</b></a>, <a href="#rfc.xref.status.406.2">10.2</a></li>3115 <li>407 Proxy Authentication Required (status code) <a href="#rfc.iref.46"><b> 8.4.8</b></a>, <a href="#rfc.xref.status.407.1">10.2</a></li>3116 <li>408 Request Timeout (status code) <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.47"><b> 8.4.9</b></a>, <a href="#rfc.xref.status.408.2">10.2</a></li>3117 <li>409 Conflict (status code) <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.48"><b> 8.4.10</b></a>, <a href="#rfc.xref.status.409.2">10.2</a></li>3118 <li>410 Gone (status code) <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.49"><b> 8.4.11</b></a>, <a href="#rfc.xref.status.410.2">10.2</a></li>3119 <li>411 Length Required (status code) <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.50"><b> 8.4.12</b></a>, <a href="#rfc.xref.status.411.2">10.2</a></li>3120 <li>412 Precondition Failed (status code) <a href="#rfc.iref.51"><b> 8.4.13</b></a></li>3121 <li>413 Request Representation Too Large (status code) <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.52"><b> 8.4.14</b></a>, <a href="#rfc.xref.status.413.2">10.2</a></li>3122 <li>414 URI Too Long (status code) <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.53"><b> 8.4.15</b></a>, <a href="#rfc.xref.status.414.2">10.2</a></li>3123 <li>415 Unsupported Media Type (status code) <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.54"><b> 8.4.16</b></a>, <a href="#rfc.xref.status.415.2">10.2</a></li>3124 <li>416 Requested Range Not Satisfiable (status code) <a href="#rfc.iref.55"><b> 8.4.17</b></a></li>3125 <li>417 Expectation Failed (status code) <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.56"><b> 8.4.18</b></a>, <a href="#rfc.xref.status.417.2">10.2</a></li>3126 <li>426 Upgrade Required (status code) <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.57"><b> 8.4.19</b></a>, <a href="#rfc.xref.status.426.2">10.2</a>, <a href="#rfc.xref.status.426.3">A</a></li>3111 <li>400 Bad Request (status code) <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.39"><b>7.4.1</b></a>, <a href="#rfc.xref.status.400.2">9.2</a></li> 3112 <li>401 Unauthorized (status code) <a href="#rfc.iref.40"><b>7.4.2</b></a></li> 3113 <li>402 Payment Required (status code) <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.41"><b>7.4.3</b></a>, <a href="#rfc.xref.status.402.2">9.2</a></li> 3114 <li>403 Forbidden (status code) <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.42"><b>7.4.4</b></a>, <a href="#rfc.xref.status.403.2">9.2</a></li> 3115 <li>404 Not Found (status code) <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.43"><b>7.4.5</b></a>, <a href="#rfc.xref.status.404.2">9.2</a></li> 3116 <li>405 Method Not Allowed (status code) <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.44"><b>7.4.6</b></a>, <a href="#rfc.xref.status.405.2">9.2</a></li> 3117 <li>406 Not Acceptable (status code) <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.45"><b>7.4.7</b></a>, <a href="#rfc.xref.status.406.2">9.2</a></li> 3118 <li>407 Proxy Authentication Required (status code) <a href="#rfc.iref.46"><b>7.4.8</b></a>, <a href="#rfc.xref.status.407.1">9.2</a></li> 3119 <li>408 Request Timeout (status code) <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.47"><b>7.4.9</b></a>, <a href="#rfc.xref.status.408.2">9.2</a></li> 3120 <li>409 Conflict (status code) <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.48"><b>7.4.10</b></a>, <a href="#rfc.xref.status.409.2">9.2</a></li> 3121 <li>410 Gone (status code) <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.49"><b>7.4.11</b></a>, <a href="#rfc.xref.status.410.2">9.2</a></li> 3122 <li>411 Length Required (status code) <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.50"><b>7.4.12</b></a>, <a href="#rfc.xref.status.411.2">9.2</a></li> 3123 <li>412 Precondition Failed (status code) <a href="#rfc.iref.51"><b>7.4.13</b></a></li> 3124 <li>413 Request Representation Too Large (status code) <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.52"><b>7.4.14</b></a>, <a href="#rfc.xref.status.413.2">9.2</a></li> 3125 <li>414 URI Too Long (status code) <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.53"><b>7.4.15</b></a>, <a href="#rfc.xref.status.414.2">9.2</a></li> 3126 <li>415 Unsupported Media Type (status code) <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.54"><b>7.4.16</b></a>, <a href="#rfc.xref.status.415.2">9.2</a></li> 3127 <li>416 Requested Range Not Satisfiable (status code) <a href="#rfc.iref.55"><b>7.4.17</b></a></li> 3128 <li>417 Expectation Failed (status code) <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.56"><b>7.4.18</b></a>, <a href="#rfc.xref.status.417.2">9.2</a></li> 3129 <li>426 Upgrade Required (status code) <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.57"><b>7.4.19</b></a>, <a href="#rfc.xref.status.426.2">9.2</a>, <a href="#rfc.xref.status.426.3">A</a></li> 3127 3130 </ul> 3128 3131 </li> 3129 3132 <li><a id="rfc.index.5" href="#rfc.index.5"><b>5</b></a><ul> 3130 <li>500 Internal Server Error (status code) <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.58"><b> 8.5.1</b></a>, <a href="#rfc.xref.status.500.2">10.2</a></li>3131 <li>501 Not Implemented (status code) <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.59"><b> 8.5.2</b></a>, <a href="#rfc.xref.status.501.2">10.2</a></li>3132 <li>502 Bad Gateway (status code) <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.60"><b> 8.5.3</b></a>, <a href="#rfc.xref.status.502.2">10.2</a></li>3133 <li>503 Service Unavailable (status code) <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.61"><b> 8.5.4</b></a>, <a href="#rfc.xref.status.503.2">10.2</a></li>3134 <li>504 Gateway Timeout (status code) <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.62"><b> 8.5.5</b></a>, <a href="#rfc.xref.status.504.2">10.2</a></li>3135 <li>505 HTTP Version Not Supported (status code) <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.63"><b> 8.5.6</b></a>, <a href="#rfc.xref.status.505.2">10.2</a></li>3133 <li>500 Internal Server Error (status code) <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.58"><b>7.5.1</b></a>, <a href="#rfc.xref.status.500.2">9.2</a></li> 3134 <li>501 Not Implemented (status code) <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.59"><b>7.5.2</b></a>, <a href="#rfc.xref.status.501.2">9.2</a></li> 3135 <li>502 Bad Gateway (status code) <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.60"><b>7.5.3</b></a>, <a href="#rfc.xref.status.502.2">9.2</a></li> 3136 <li>503 Service Unavailable (status code) <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.61"><b>7.5.4</b></a>, <a href="#rfc.xref.status.503.2">9.2</a></li> 3137 <li>504 Gateway Timeout (status code) <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.62"><b>7.5.5</b></a>, <a href="#rfc.xref.status.504.2">9.2</a></li> 3138 <li>505 HTTP Version Not Supported (status code) <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.63"><b>7.5.6</b></a>, <a href="#rfc.xref.status.505.2">9.2</a></li> 3136 3139 </ul> 3137 3140 </li> 3138 3141 <li><a id="rfc.index.A" href="#rfc.index.A"><b>A</b></a><ul> 3139 <li>Allow header field <a href="#rfc.xref.header.allow.1">2</a>, <a href="#rfc.xref.header.allow.2"> 5</a>, <a href="#rfc.iref.a.1"><b>9.1</b></a>, <a href="#rfc.xref.header.allow.3">10.3</a>, <a href="#rfc.xref.header.allow.4">A</a></li>3142 <li>Allow header field <a href="#rfc.xref.header.allow.1">2</a>, <a href="#rfc.xref.header.allow.2">3.2</a>, <a href="#rfc.iref.a.1"><b>8.1</b></a>, <a href="#rfc.xref.header.allow.3">9.3</a>, <a href="#rfc.xref.header.allow.4">A</a></li> 3140 3143 </ul> 3141 3144 </li> 3142 3145 <li><a id="rfc.index.C" href="#rfc.index.C"><b>C</b></a><ul> 3143 <li>CONNECT method <a href="#rfc.xref.CONNECT.1">2.1</a>, <a href="#rfc.iref.c.1"><b> 7.9</b></a>, <a href="#rfc.xref.CONNECT.2">10.1</a>, <a href="#rfc.xref.CONNECT.3">A</a></li>3146 <li>CONNECT method <a href="#rfc.xref.CONNECT.1">2.1</a>, <a href="#rfc.iref.c.1"><b>6.9</b></a>, <a href="#rfc.xref.CONNECT.2">9.1</a>, <a href="#rfc.xref.CONNECT.3">A</a></li> 3144 3147 </ul> 3145 3148 </li> 3146 3149 <li><a id="rfc.index.D" href="#rfc.index.D"><b>D</b></a><ul> 3147 <li>DELETE method <a href="#rfc.xref.DELETE.1">2.1</a>, <a href="#rfc.iref.d.1"><b> 7.7</b></a>, <a href="#rfc.xref.DELETE.2">10.1</a></li>3150 <li>DELETE method <a href="#rfc.xref.DELETE.1">2.1</a>, <a href="#rfc.iref.d.1"><b>6.7</b></a>, <a href="#rfc.xref.DELETE.2">9.1</a></li> 3148 3151 </ul> 3149 3152 </li> 3150 3153 <li><a id="rfc.index.E" href="#rfc.index.E"><b>E</b></a><ul> 3151 <li>Expect header field <a href="#rfc.xref.header.expect.1">3 </a>, <a href="#rfc.xref.header.expect.2">8.4.18</a>, <a href="#rfc.iref.e.1"><b>9.2</b></a>, <a href="#rfc.xref.header.expect.3">10.3</a></li>3154 <li>Expect header field <a href="#rfc.xref.header.expect.1">3.1</a>, <a href="#rfc.xref.header.expect.2">7.4.18</a>, <a href="#rfc.iref.e.1"><b>8.2</b></a>, <a href="#rfc.xref.header.expect.3">9.3</a></li> 3152 3155 </ul> 3153 3156 </li> 3154 3157 <li><a id="rfc.index.F" href="#rfc.index.F"><b>F</b></a><ul> 3155 <li>From header field <a href="#rfc.xref.header.from.1">3 </a>, <a href="#rfc.iref.f.1"><b>9.3</b></a>, <a href="#rfc.xref.header.from.2">10.3</a></li>3158 <li>From header field <a href="#rfc.xref.header.from.1">3.1</a>, <a href="#rfc.iref.f.1"><b>8.3</b></a>, <a href="#rfc.xref.header.from.2">9.3</a></li> 3156 3159 </ul> 3157 3160 </li> 3158 3161 <li><a id="rfc.index.G" href="#rfc.index.G"><b>G</b></a><ul> 3159 <li>GET method <a href="#rfc.xref.GET.1">2.1</a>, <a href="#rfc.iref.g.5"><b> 7.3</b></a>, <a href="#rfc.xref.GET.2">10.1</a></li>3162 <li>GET method <a href="#rfc.xref.GET.1">2.1</a>, <a href="#rfc.iref.g.5"><b>6.3</b></a>, <a href="#rfc.xref.GET.2">9.1</a></li> 3160 3163 <li><tt>Grammar</tt> 3161 3164 <ul> 3162 <li><tt>Allow</tt> <a href="#rfc.iref.g.6"><b> 9.1</b></a></li>3163 <li><tt>delta-seconds</tt> <a href="#rfc.iref.g.16"><b> 9.7</b></a></li>3164 <li><tt>Expect</tt> <a href="#rfc.iref.g.7"><b> 9.2</b></a></li>3165 <li><tt>expect-params</tt> <a href="#rfc.iref.g.10"><b> 9.2</b></a></li>3166 <li><tt>expectation</tt> <a href="#rfc.iref.g.8"><b> 9.2</b></a></li>3167 <li><tt>expectation-extension</tt> <a href="#rfc.iref.g.9"><b> 9.2</b></a></li>3165 <li><tt>Allow</tt> <a href="#rfc.iref.g.6"><b>8.1</b></a></li> 3166 <li><tt>delta-seconds</tt> <a href="#rfc.iref.g.16"><b>8.7</b></a></li> 3167 <li><tt>Expect</tt> <a href="#rfc.iref.g.7"><b>8.2</b></a></li> 3168 <li><tt>expect-params</tt> <a href="#rfc.iref.g.10"><b>8.2</b></a></li> 3169 <li><tt>expectation</tt> <a href="#rfc.iref.g.8"><b>8.2</b></a></li> 3170 <li><tt>expectation-extension</tt> <a href="#rfc.iref.g.9"><b>8.2</b></a></li> 3168 3171 <li><tt>extension-code</tt> <a href="#rfc.iref.g.3"><b>4</b></a></li> 3169 <li><tt>From</tt> <a href="#rfc.iref.g.11"><b> 9.3</b></a></li>3170 <li><tt>Location</tt> <a href="#rfc.iref.g.12"><b> 9.4</b></a></li>3171 <li><tt>Max-Forwards</tt> <a href="#rfc.iref.g.13"><b> 9.5</b></a></li>3172 <li><tt>From</tt> <a href="#rfc.iref.g.11"><b>8.3</b></a></li> 3173 <li><tt>Location</tt> <a href="#rfc.iref.g.12"><b>8.4</b></a></li> 3174 <li><tt>Max-Forwards</tt> <a href="#rfc.iref.g.13"><b>8.5</b></a></li> 3172 3175 <li><tt>Method</tt> <a href="#rfc.iref.g.1"><b>2</b></a></li> 3173 3176 <li><tt>Reason-Phrase</tt> <a href="#rfc.iref.g.4"><b>4</b></a></li> 3174 <li><tt>Referer</tt> <a href="#rfc.iref.g.14"><b> 9.6</b></a></li>3175 <li><tt>Retry-After</tt> <a href="#rfc.iref.g.15"><b> 9.7</b></a></li>3176 <li><tt>Server</tt> <a href="#rfc.iref.g.17"><b> 9.8</b></a></li>3177 <li><tt>Referer</tt> <a href="#rfc.iref.g.14"><b>8.6</b></a></li> 3178 <li><tt>Retry-After</tt> <a href="#rfc.iref.g.15"><b>8.7</b></a></li> 3179 <li><tt>Server</tt> <a href="#rfc.iref.g.17"><b>8.8</b></a></li> 3177 3180 <li><tt>Status-Code</tt> <a href="#rfc.iref.g.2"><b>4</b></a></li> 3178 <li><tt>User-Agent</tt> <a href="#rfc.iref.g.18"><b> 9.9</b></a></li>3181 <li><tt>User-Agent</tt> <a href="#rfc.iref.g.18"><b>8.9</b></a></li> 3179 3182 </ul> 3180 3183 </li> … … 3182 3185 </li> 3183 3186 <li><a id="rfc.index.H" href="#rfc.index.H"><b>H</b></a><ul> 3184 <li>HEAD method <a href="#rfc.xref.HEAD.1">2.1</a>, <a href="#rfc.iref.h.1"><b> 7.4</b></a>, <a href="#rfc.xref.HEAD.2">10.1</a></li>3187 <li>HEAD method <a href="#rfc.xref.HEAD.1">2.1</a>, <a href="#rfc.iref.h.1"><b>6.4</b></a>, <a href="#rfc.xref.HEAD.2">9.1</a></li> 3185 3188 <li>Header Fields 3186 3189 <ul> 3187 <li>Allow <a href="#rfc.xref.header.allow.1">2</a>, <a href="#rfc.xref.header.allow.2"> 5</a>, <a href="#rfc.iref.h.2"><b>9.1</b></a>, <a href="#rfc.xref.header.allow.3">10.3</a>, <a href="#rfc.xref.header.allow.4">A</a></li>3188 <li>Expect <a href="#rfc.xref.header.expect.1">3 </a>, <a href="#rfc.xref.header.expect.2">8.4.18</a>, <a href="#rfc.iref.h.3"><b>9.2</b></a>, <a href="#rfc.xref.header.expect.3">10.3</a></li>3189 <li>From <a href="#rfc.xref.header.from.1">3 </a>, <a href="#rfc.iref.h.4"><b>9.3</b></a>, <a href="#rfc.xref.header.from.2">10.3</a></li>3190 <li>Location <a href="#rfc.xref.header.location.1"> 5</a>, <a href="#rfc.xref.header.location.2">7.5</a>, <a href="#rfc.iref.h.5"><b>9.4</b></a>, <a href="#rfc.xref.header.location.3">10.3</a>, <a href="#rfc.xref.header.location.4">A</a></li>3191 <li>Max-Forwards <a href="#rfc.xref.header.max-forwards.1">3 </a>, <a href="#rfc.xref.header.max-forwards.2">7.2</a>, <a href="#rfc.xref.header.max-forwards.3">7.8</a>, <a href="#rfc.iref.h.6"><b>9.5</b></a>, <a href="#rfc.xref.header.max-forwards.4">10.3</a>, <a href="#rfc.xref.header.max-forwards.5">A</a></li>3192 <li>Referer <a href="#rfc.xref.header.referer.1">3 </a>, <a href="#rfc.iref.h.7"><b>9.6</b></a>, <a href="#rfc.xref.header.referer.2">10.3</a>, <a href="#rfc.xref.header.referer.3">A</a></li>3193 <li>Retry-After <a href="#rfc.xref.header.retry-after.1"> 5</a>, <a href="#rfc.xref.header.retry-after.2">8.5.4</a>, <a href="#rfc.iref.h.8"><b>9.7</b></a>, <a href="#rfc.xref.header.retry-after.3">10.3</a></li>3194 <li>Server <a href="#rfc.xref.header.server.1"> 5</a>, <a href="#rfc.iref.h.9"><b>9.8</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">A</a></li>3195 <li>User-Agent <a href="#rfc.xref.header.user-agent.1">3 </a>, <a href="#rfc.iref.h.10"><b>9.9</b></a>, <a href="#rfc.xref.header.user-agent.2">10.3</a>, <a href="#rfc.xref.header.user-agent.3">11.1</a></li>3190 <li>Allow <a href="#rfc.xref.header.allow.1">2</a>, <a href="#rfc.xref.header.allow.2">3.2</a>, <a href="#rfc.iref.h.2"><b>8.1</b></a>, <a href="#rfc.xref.header.allow.3">9.3</a>, <a href="#rfc.xref.header.allow.4">A</a></li> 3191 <li>Expect <a href="#rfc.xref.header.expect.1">3.1</a>, <a href="#rfc.xref.header.expect.2">7.4.18</a>, <a href="#rfc.iref.h.3"><b>8.2</b></a>, <a href="#rfc.xref.header.expect.3">9.3</a></li> 3192 <li>From <a href="#rfc.xref.header.from.1">3.1</a>, <a href="#rfc.iref.h.4"><b>8.3</b></a>, <a href="#rfc.xref.header.from.2">9.3</a></li> 3193 <li>Location <a href="#rfc.xref.header.location.1">3.2</a>, <a href="#rfc.xref.header.location.2">6.5</a>, <a href="#rfc.iref.h.5"><b>8.4</b></a>, <a href="#rfc.xref.header.location.3">9.3</a>, <a href="#rfc.xref.header.location.4">A</a></li> 3194 <li>Max-Forwards <a href="#rfc.xref.header.max-forwards.1">3.1</a>, <a href="#rfc.xref.header.max-forwards.2">6.2</a>, <a href="#rfc.xref.header.max-forwards.3">6.8</a>, <a href="#rfc.iref.h.6"><b>8.5</b></a>, <a href="#rfc.xref.header.max-forwards.4">9.3</a>, <a href="#rfc.xref.header.max-forwards.5">A</a></li> 3195 <li>Referer <a href="#rfc.xref.header.referer.1">3.1</a>, <a href="#rfc.iref.h.7"><b>8.6</b></a>, <a href="#rfc.xref.header.referer.2">9.3</a>, <a href="#rfc.xref.header.referer.3">A</a></li> 3196 <li>Retry-After <a href="#rfc.xref.header.retry-after.1">3.2</a>, <a href="#rfc.xref.header.retry-after.2">7.5.4</a>, <a href="#rfc.iref.h.8"><b>8.7</b></a>, <a href="#rfc.xref.header.retry-after.3">9.3</a></li> 3197 <li>Server <a href="#rfc.xref.header.server.1">3.2</a>, <a href="#rfc.iref.h.9"><b>8.8</b></a>, <a href="#rfc.xref.header.server.2">9.3</a>, <a href="#rfc.xref.header.server.3">10.1</a>, <a href="#rfc.xref.header.server.4">A</a></li> 3198 <li>User-Agent <a href="#rfc.xref.header.user-agent.1">3.1</a>, <a href="#rfc.iref.h.10"><b>8.9</b></a>, <a href="#rfc.xref.header.user-agent.2">9.3</a>, <a href="#rfc.xref.header.user-agent.3">10.1</a></li> 3196 3199 </ul> 3197 3200 </li> … … 3199 3202 </li> 3200 3203 <li><a id="rfc.index.I" href="#rfc.index.I"><b>I</b></a><ul> 3201 <li>Idempotent Methods <a href="#rfc.iref.i.1"><b> 7.1.2</b></a></li>3204 <li>Idempotent Methods <a href="#rfc.iref.i.1"><b>6.1.2</b></a></li> 3202 3205 </ul> 3203 3206 </li> 3204 3207 <li><a id="rfc.index.L" href="#rfc.index.L"><b>L</b></a><ul> 3205 <li>Location header field <a href="#rfc.xref.header.location.1"> 5</a>, <a href="#rfc.xref.header.location.2">7.5</a>, <a href="#rfc.iref.l.1"><b>9.4</b></a>, <a href="#rfc.xref.header.location.3">10.3</a>, <a href="#rfc.xref.header.location.4">A</a></li>3208 <li>Location header field <a href="#rfc.xref.header.location.1">3.2</a>, <a href="#rfc.xref.header.location.2">6.5</a>, <a href="#rfc.iref.l.1"><b>8.4</b></a>, <a href="#rfc.xref.header.location.3">9.3</a>, <a href="#rfc.xref.header.location.4">A</a></li> 3206 3209 </ul> 3207 3210 </li> 3208 3211 <li><a id="rfc.index.M" href="#rfc.index.M"><b>M</b></a><ul> 3209 <li>Max-Forwards header field <a href="#rfc.xref.header.max-forwards.1">3 </a>, <a href="#rfc.xref.header.max-forwards.2">7.2</a>, <a href="#rfc.xref.header.max-forwards.3">7.8</a>, <a href="#rfc.iref.m.9"><b>9.5</b></a>, <a href="#rfc.xref.header.max-forwards.4">10.3</a>, <a href="#rfc.xref.header.max-forwards.5">A</a></li>3212 <li>Max-Forwards header field <a href="#rfc.xref.header.max-forwards.1">3.1</a>, <a href="#rfc.xref.header.max-forwards.2">6.2</a>, <a href="#rfc.xref.header.max-forwards.3">6.8</a>, <a href="#rfc.iref.m.9"><b>8.5</b></a>, <a href="#rfc.xref.header.max-forwards.4">9.3</a>, <a href="#rfc.xref.header.max-forwards.5">A</a></li> 3210 3213 <li>Methods 3211 3214 <ul> 3212 <li>CONNECT <a href="#rfc.xref.CONNECT.1">2.1</a>, <a href="#rfc.iref.m.8"><b> 7.9</b></a>, <a href="#rfc.xref.CONNECT.2">10.1</a>, <a href="#rfc.xref.CONNECT.3">A</a></li>3213 <li>DELETE <a href="#rfc.xref.DELETE.1">2.1</a>, <a href="#rfc.iref.m.6"><b> 7.7</b></a>, <a href="#rfc.xref.DELETE.2">10.1</a></li>3214 <li>GET <a href="#rfc.xref.GET.1">2.1</a>, <a href="#rfc.iref.m.2"><b> 7.3</b></a>, <a href="#rfc.xref.GET.2">10.1</a></li>3215 <li>HEAD <a href="#rfc.xref.HEAD.1">2.1</a>, <a href="#rfc.iref.m.3"><b> 7.4</b></a>, <a href="#rfc.xref.HEAD.2">10.1</a></li>3216 <li>OPTIONS <a href="#rfc.xref.OPTIONS.1">2.1</a>, <a href="#rfc.iref.m.1"><b> 7.2</b></a>, <a href="#rfc.xref.OPTIONS.2">9.5</a>, <a href="#rfc.xref.OPTIONS.3">10.1</a></li>3217 <li>POST <a href="#rfc.xref.POST.1">2.1</a>, <a href="#rfc.iref.m.4"><b> 7.5</b></a>, <a href="#rfc.xref.POST.2">10.1</a>, <a href="#rfc.xref.POST.3">A</a></li>3218 <li>PUT <a href="#rfc.xref.PUT.1">2.1</a>, <a href="#rfc.iref.m.5"><b> 7.6</b></a>, <a href="#rfc.xref.PUT.2">10.1</a>, <a href="#rfc.xref.PUT.3">A</a></li>3219 <li>TRACE <a href="#rfc.xref.TRACE.1">2.1</a>, <a href="#rfc.iref.m.7"><b> 7.8</b></a>, <a href="#rfc.xref.TRACE.2">9.5</a>, <a href="#rfc.xref.TRACE.3">10.1</a>, <a href="#rfc.xref.TRACE.4">11.1</a></li>3215 <li>CONNECT <a href="#rfc.xref.CONNECT.1">2.1</a>, <a href="#rfc.iref.m.8"><b>6.9</b></a>, <a href="#rfc.xref.CONNECT.2">9.1</a>, <a href="#rfc.xref.CONNECT.3">A</a></li> 3216 <li>DELETE <a href="#rfc.xref.DELETE.1">2.1</a>, <a href="#rfc.iref.m.6"><b>6.7</b></a>, <a href="#rfc.xref.DELETE.2">9.1</a></li> 3217 <li>GET <a href="#rfc.xref.GET.1">2.1</a>, <a href="#rfc.iref.m.2"><b>6.3</b></a>, <a href="#rfc.xref.GET.2">9.1</a></li> 3218 <li>HEAD <a href="#rfc.xref.HEAD.1">2.1</a>, <a href="#rfc.iref.m.3"><b>6.4</b></a>, <a href="#rfc.xref.HEAD.2">9.1</a></li> 3219 <li>OPTIONS <a href="#rfc.xref.OPTIONS.1">2.1</a>, <a href="#rfc.iref.m.1"><b>6.2</b></a>, <a href="#rfc.xref.OPTIONS.2">8.5</a>, <a href="#rfc.xref.OPTIONS.3">9.1</a></li> 3220 <li>POST <a href="#rfc.xref.POST.1">2.1</a>, <a href="#rfc.iref.m.4"><b>6.5</b></a>, <a href="#rfc.xref.POST.2">9.1</a>, <a href="#rfc.xref.POST.3">A</a></li> 3221 <li>PUT <a href="#rfc.xref.PUT.1">2.1</a>, <a href="#rfc.iref.m.5"><b>6.6</b></a>, <a href="#rfc.xref.PUT.2">9.1</a>, <a href="#rfc.xref.PUT.3">A</a></li> 3222 <li>TRACE <a href="#rfc.xref.TRACE.1">2.1</a>, <a href="#rfc.iref.m.7"><b>6.8</b></a>, <a href="#rfc.xref.TRACE.2">8.5</a>, <a href="#rfc.xref.TRACE.3">9.1</a>, <a href="#rfc.xref.TRACE.4">10.1</a></li> 3220 3223 </ul> 3221 3224 </li> … … 3223 3226 </li> 3224 3227 <li><a id="rfc.index.O" href="#rfc.index.O"><b>O</b></a><ul> 3225 <li>OPTIONS method <a href="#rfc.xref.OPTIONS.1">2.1</a>, <a href="#rfc.iref.o.1"><b> 7.2</b></a>, <a href="#rfc.xref.OPTIONS.2">9.5</a>, <a href="#rfc.xref.OPTIONS.3">10.1</a></li>3228 <li>OPTIONS method <a href="#rfc.xref.OPTIONS.1">2.1</a>, <a href="#rfc.iref.o.1"><b>6.2</b></a>, <a href="#rfc.xref.OPTIONS.2">8.5</a>, <a href="#rfc.xref.OPTIONS.3">9.1</a></li> 3226 3229 </ul> 3227 3230 </li> 3228 3231 <li><a id="rfc.index.P" href="#rfc.index.P"><b>P</b></a><ul> 3229 <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.2.1</a>, <a href="#rfc.xref.Part1.4">1.2.1</a>, <a href="#rfc.xref.Part1.5">1.2.1</a>, <a href="#rfc.xref.Part1.6">1.2.1</a>, <a href="#rfc.xref.Part1.7">1.2.1</a>, <a href="#rfc.xref.Part1.8">1.2.1</a>, <a href="#rfc.xref.Part1.9">1.2.2</a>, <a href="#rfc.xref.Part1.10">1.2.2</a>, <a href="#rfc.xref.Part1.11">1.2.2</a>, <a href="#rfc.xref.Part1.12">1.2.2</a>, <a href="#rfc.xref.Part1.13">1.2.2</a>, <a href="#rfc.xref.Part1.14">1.2.2</a>, <a href="#rfc.xref.Part1.15">2</a>, <a href="#rfc.xref.Part1.16">2.2.1</a>, <a href="#rfc.xref.Part1.17">3 </a>, <a href="#rfc.xref.Part1.18">3</a>, <a href="#rfc.xref.Part1.19">5</a>, <a href="#rfc.xref.Part1.20">6</a>, <a href="#rfc.xref.Part1.21">6.1</a>, <a href="#rfc.xref.Part1.22">7.8</a>, <a href="#rfc.xref.Part1.23">7.8</a>, <a href="#rfc.xref.Part1.24">7.9</a>, <a href="#rfc.xref.Part1.25">8.1.1</a>, <a href="#rfc.xref.Part1.26">8.1.2</a>, <a href="#rfc.xref.Part1.27">8.2.4</a>, <a href="#rfc.xref.Part1.28">8.2.6</a>, <a href="#rfc.xref.Part1.29">8.4.19</a>, <a href="#rfc.xref.Part1.30">8.5.6</a>, <a href="#rfc.xref.Part1.31">9.2</a>, <a href="#rfc.xref.Part1.32">9.8</a>, <a href="#rfc.xref.Part1.33">9.8</a>, <a href="#rfc.xref.Part1.34">9.8</a>, <a href="#rfc.xref.Part1.35">9.9</a>, <a href="#rfc.xref.Part1.36">9.9</a>, <a href="#rfc.xref.Part1.37">12</a>, <a href="#Part1"><b>13.1</b></a>, <a href="#rfc.xref.Part1.38">A</a><ul>3232 <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.2.1</a>, <a href="#rfc.xref.Part1.4">1.2.1</a>, <a href="#rfc.xref.Part1.5">1.2.1</a>, <a href="#rfc.xref.Part1.6">1.2.1</a>, <a href="#rfc.xref.Part1.7">1.2.1</a>, <a href="#rfc.xref.Part1.8">1.2.1</a>, <a href="#rfc.xref.Part1.9">1.2.2</a>, <a href="#rfc.xref.Part1.10">1.2.2</a>, <a href="#rfc.xref.Part1.11">1.2.2</a>, <a href="#rfc.xref.Part1.12">1.2.2</a>, <a href="#rfc.xref.Part1.13">1.2.2</a>, <a href="#rfc.xref.Part1.14">1.2.2</a>, <a href="#rfc.xref.Part1.15">2</a>, <a href="#rfc.xref.Part1.16">2.2.1</a>, <a href="#rfc.xref.Part1.17">3.1</a>, <a href="#rfc.xref.Part1.18">3.1</a>, <a href="#rfc.xref.Part1.19">3.2</a>, <a href="#rfc.xref.Part1.20">5</a>, <a href="#rfc.xref.Part1.21">5.1</a>, <a href="#rfc.xref.Part1.22">6.8</a>, <a href="#rfc.xref.Part1.23">6.8</a>, <a href="#rfc.xref.Part1.24">6.9</a>, <a href="#rfc.xref.Part1.25">7.1.1</a>, <a href="#rfc.xref.Part1.26">7.1.2</a>, <a href="#rfc.xref.Part1.27">7.2.4</a>, <a href="#rfc.xref.Part1.28">7.2.6</a>, <a href="#rfc.xref.Part1.29">7.4.19</a>, <a href="#rfc.xref.Part1.30">7.5.6</a>, <a href="#rfc.xref.Part1.31">8.2</a>, <a href="#rfc.xref.Part1.32">8.8</a>, <a href="#rfc.xref.Part1.33">8.8</a>, <a href="#rfc.xref.Part1.34">8.8</a>, <a href="#rfc.xref.Part1.35">8.9</a>, <a href="#rfc.xref.Part1.36">8.9</a>, <a href="#rfc.xref.Part1.37">11</a>, <a href="#Part1"><b>12.1</b></a>, <a href="#rfc.xref.Part1.38">A</a><ul> 3230 3233 <li><em>Section 1.2</em> <a href="#rfc.xref.Part1.2">1.2</a></li> 3231 3234 <li><em>Section 1.2.2</em> <a href="#rfc.xref.Part1.4">1.2.1</a>, <a href="#rfc.xref.Part1.5">1.2.1</a>, <a href="#rfc.xref.Part1.6">1.2.1</a></li> 3232 <li><em>Section 2.4</em> <a href="#rfc.xref.Part1.27"> 8.2.4</a></li>3233 <li><em>Section 2.6</em> <a href="#rfc.xref.Part1.30"> 8.5.6</a></li>3235 <li><em>Section 2.4</em> <a href="#rfc.xref.Part1.27">7.2.4</a></li> 3236 <li><em>Section 2.6</em> <a href="#rfc.xref.Part1.30">7.5.6</a></li> 3234 3237 <li><em>Section 2.7</em> <a href="#rfc.xref.Part1.9">1.2.2</a>, <a href="#rfc.xref.Part1.12">1.2.2</a>, <a href="#rfc.xref.Part1.14">1.2.2</a></li> 3235 <li><em>Section 3.2</em> <a href="#rfc.xref.Part1.10">1.2.2</a>, <a href="#rfc.xref.Part1.33"> 9.8</a>, <a href="#rfc.xref.Part1.36">9.9</a></li>3238 <li><em>Section 3.2</em> <a href="#rfc.xref.Part1.10">1.2.2</a>, <a href="#rfc.xref.Part1.33">8.8</a>, <a href="#rfc.xref.Part1.36">8.9</a></li> 3236 3239 <li><em>Section 3.2.3</em> <a href="#rfc.xref.Part1.7">1.2.1</a>, <a href="#rfc.xref.Part1.8">1.2.1</a></li> 3237 <li><em>Section 3.3</em> <a href="#rfc.xref.Part1.16">2.2.1</a>, <a href="#rfc.xref.Part1.20"> 6</a>, <a href="#rfc.xref.Part1.28">8.2.6</a></li>3238 <li><em>Section 4.1.2</em> <a href="#rfc.xref.Part1.24"> 7.9</a></li>3239 <li><em>Section 4.3</em> <a href="#rfc.xref.Part1.15">2</a>, <a href="#rfc.xref.Part1.19"> 5</a>, <a href="#rfc.xref.Part1.21">6.1</a></li>3240 <li><em>Section 3.3</em> <a href="#rfc.xref.Part1.16">2.2.1</a>, <a href="#rfc.xref.Part1.20">5</a>, <a href="#rfc.xref.Part1.28">7.2.6</a></li> 3241 <li><em>Section 4.1.2</em> <a href="#rfc.xref.Part1.24">6.9</a></li> 3242 <li><em>Section 4.3</em> <a href="#rfc.xref.Part1.15">2</a>, <a href="#rfc.xref.Part1.19">3.2</a>, <a href="#rfc.xref.Part1.21">5.1</a></li> 3240 3243 <li><em>Section 6.1</em> <a href="#rfc.xref.Part1.11">1.2.2</a></li> 3241 <li><em>Section 6.3</em> <a href="#rfc.xref.Part1.13">1.2.2</a>, <a href="#rfc.xref.Part1.32"> 9.8</a>, <a href="#rfc.xref.Part1.35">9.9</a></li>3242 <li><em>Section 7.2.3</em> <a href="#rfc.xref.Part1.25"> 8.1.1</a>, <a href="#rfc.xref.Part1.31">9.2</a></li>3243 <li><em>Section 9.4</em> <a href="#rfc.xref.Part1.17">3 </a></li>3244 <li><em>Section 9.5</em> <a href="#rfc.xref.Part1.18">3 </a></li>3245 <li><em>Section 9.8</em> <a href="#rfc.xref.Part1.26"> 8.1.2</a>, <a href="#rfc.xref.Part1.29">8.4.19</a></li>3246 <li><em>Section 9.9</em> <a href="#rfc.xref.Part1.22"> 7.8</a>, <a href="#rfc.xref.Part1.34">9.8</a>, <a href="#rfc.xref.Part1.38">A</a></li>3247 <li><em>Section 10.3.1</em> <a href="#rfc.xref.Part1.23"> 7.8</a></li>3248 <li><em>Section 12</em> <a href="#rfc.xref.Part1.37">1 2</a></li>3244 <li><em>Section 6.3</em> <a href="#rfc.xref.Part1.13">1.2.2</a>, <a href="#rfc.xref.Part1.32">8.8</a>, <a href="#rfc.xref.Part1.35">8.9</a></li> 3245 <li><em>Section 7.2.3</em> <a href="#rfc.xref.Part1.25">7.1.1</a>, <a href="#rfc.xref.Part1.31">8.2</a></li> 3246 <li><em>Section 9.4</em> <a href="#rfc.xref.Part1.17">3.1</a></li> 3247 <li><em>Section 9.5</em> <a href="#rfc.xref.Part1.18">3.1</a></li> 3248 <li><em>Section 9.8</em> <a href="#rfc.xref.Part1.26">7.1.2</a>, <a href="#rfc.xref.Part1.29">7.4.19</a></li> 3249 <li><em>Section 9.9</em> <a href="#rfc.xref.Part1.22">6.8</a>, <a href="#rfc.xref.Part1.34">8.8</a>, <a href="#rfc.xref.Part1.38">A</a></li> 3250 <li><em>Section 10.3.1</em> <a href="#rfc.xref.Part1.23">6.8</a></li> 3251 <li><em>Section 12</em> <a href="#rfc.xref.Part1.37">11</a></li> 3249 3252 </ul> 3250 3253 </li> 3251 <li><em>Part3</em> <a href="#rfc.xref.Part3.1">3 </a>, <a href="#rfc.xref.Part3.2">3</a>, <a href="#rfc.xref.Part3.3">3</a>, <a href="#rfc.xref.Part3.4">3</a>, <a href="#rfc.xref.Part3.5">6</a>, <a href="#rfc.xref.Part3.6">7.5</a>, <a href="#rfc.xref.Part3.7">8.3.1</a>, <a href="#rfc.xref.Part3.8">8.4.7</a>, <a href="#rfc.xref.Part3.9">9.4</a>, <a href="#Part3"><b>13.1</b></a><ul>3252 <li><em>Section 5</em> <a href="#rfc.xref.Part3.7"> 8.3.1</a></li>3253 <li><em>Section 6.1</em> <a href="#rfc.xref.Part3.1">3 </a></li>3254 <li><em>Section 6</em> <a href="#rfc.xref.Part3.8"> 8.4.7</a></li>3255 <li><em>Section 6.2</em> <a href="#rfc.xref.Part3.2">3 </a></li>3256 <li><em>Section 6.3</em> <a href="#rfc.xref.Part3.3">3 </a></li>3257 <li><em>Section 6.4</em> <a href="#rfc.xref.Part3.4">3 </a></li>3258 <li><em>Section 6.7</em> <a href="#rfc.xref.Part3.6"> 7.5</a>, <a href="#rfc.xref.Part3.9">9.4</a></li>3254 <li><em>Part3</em> <a href="#rfc.xref.Part3.1">3.1</a>, <a href="#rfc.xref.Part3.2">3.1</a>, <a href="#rfc.xref.Part3.3">3.1</a>, <a href="#rfc.xref.Part3.4">3.1</a>, <a href="#rfc.xref.Part3.5">5</a>, <a href="#rfc.xref.Part3.6">6.5</a>, <a href="#rfc.xref.Part3.7">7.3.1</a>, <a href="#rfc.xref.Part3.8">7.4.7</a>, <a href="#rfc.xref.Part3.9">8.4</a>, <a href="#Part3"><b>12.1</b></a><ul> 3255 <li><em>Section 5</em> <a href="#rfc.xref.Part3.7">7.3.1</a></li> 3256 <li><em>Section 6.1</em> <a href="#rfc.xref.Part3.1">3.1</a></li> 3257 <li><em>Section 6</em> <a href="#rfc.xref.Part3.8">7.4.7</a></li> 3258 <li><em>Section 6.2</em> <a href="#rfc.xref.Part3.2">3.1</a></li> 3259 <li><em>Section 6.3</em> <a href="#rfc.xref.Part3.3">3.1</a></li> 3260 <li><em>Section 6.4</em> <a href="#rfc.xref.Part3.4">3.1</a></li> 3261 <li><em>Section 6.7</em> <a href="#rfc.xref.Part3.6">6.5</a>, <a href="#rfc.xref.Part3.9">8.4</a></li> 3259 3262 </ul> 3260 3263 </li> 3261 <li><em>Part4</em> <a href="#rfc.xref.Part4.1">3 </a>, <a href="#rfc.xref.Part4.2">3</a>, <a href="#rfc.xref.Part4.3">3</a>, <a href="#rfc.xref.Part4.4">3</a>, <a href="#rfc.xref.Part4.5">4.1</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">5</a>, <a href="#rfc.xref.Part4.9">8.2.2</a>, <a href="#rfc.xref.Part4.10">8.3.5</a>, <a href="#rfc.xref.Part4.11">8.4.13</a>, <a href="#Part4"><b>13.1</b></a>, <a href="#rfc.xref.Part4.12">C.2</a><ul>3262 <li><em>Section 2.3</em> <a href="#rfc.xref.Part4. 8">5</a>, <a href="#rfc.xref.Part4.9">8.2.2</a></li>3263 <li><em>Section 3.1</em> <a href="#rfc.xref.Part4.1">3 </a></li>3264 <li><em>Section 3.2</em> <a href="#rfc.xref.Part4.3">3 </a></li>3265 <li><em>Section 3.3</em> <a href="#rfc.xref.Part4.2">3 </a></li>3266 <li><em>Section 3.4</em> <a href="#rfc.xref.Part4.4">3 </a></li>3267 <li><em>Section 4</em> <a href="#rfc.xref.Part4. 5">4.1</a></li>3268 <li><em>Section 4.1</em> <a href="#rfc.xref.Part4. 6">4.1</a>, <a href="#rfc.xref.Part4.10">8.3.5</a></li>3269 <li><em>Section 4.2</em> <a href="#rfc.xref.Part4. 7">4.1</a>, <a href="#rfc.xref.Part4.11">8.4.13</a></li>3264 <li><em>Part4</em> <a href="#rfc.xref.Part4.1">3.1</a>, <a href="#rfc.xref.Part4.2">3.1</a>, <a href="#rfc.xref.Part4.3">3.1</a>, <a href="#rfc.xref.Part4.4">3.1</a>, <a href="#rfc.xref.Part4.5">3.2</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">7.2.2</a>, <a href="#rfc.xref.Part4.10">7.3.5</a>, <a href="#rfc.xref.Part4.11">7.4.13</a>, <a href="#Part4"><b>12.1</b></a>, <a href="#rfc.xref.Part4.12">C.2</a><ul> 3265 <li><em>Section 2.3</em> <a href="#rfc.xref.Part4.5">3.2</a>, <a href="#rfc.xref.Part4.9">7.2.2</a></li> 3266 <li><em>Section 3.1</em> <a href="#rfc.xref.Part4.1">3.1</a></li> 3267 <li><em>Section 3.2</em> <a href="#rfc.xref.Part4.3">3.1</a></li> 3268 <li><em>Section 3.3</em> <a href="#rfc.xref.Part4.2">3.1</a></li> 3269 <li><em>Section 3.4</em> <a href="#rfc.xref.Part4.4">3.1</a></li> 3270 <li><em>Section 4</em> <a href="#rfc.xref.Part4.6">4.1</a></li> 3271 <li><em>Section 4.1</em> <a href="#rfc.xref.Part4.7">4.1</a>, <a href="#rfc.xref.Part4.10">7.3.5</a></li> 3272 <li><em>Section 4.2</em> <a href="#rfc.xref.Part4.8">4.1</a>, <a href="#rfc.xref.Part4.11">7.4.13</a></li> 3270 3273 </ul> 3271 3274 </li> 3272 <li><em>Part5</em> <a href="#rfc.xref.Part5.1">3 </a>, <a href="#rfc.xref.Part5.2">3</a>, <a href="#rfc.xref.Part5.3">4.1</a>, <a href="#rfc.xref.Part5.4">4.1</a>, <a href="#rfc.xref.Part5.5">4.1</a>, <a href="#rfc.xref.Part5.6">5</a>, <a href="#rfc.xref.Part5.7">7.3</a>, <a href="#rfc.xref.Part5.8">8.2.7</a>, <a href="#rfc.xref.Part5.9">8.4.17</a>, <a href="#rfc.xref.Part5.10">8.4.17</a>, <a href="#Part5"><b>13.1</b></a><ul>3273 <li><em>Section 3</em> <a href="#rfc.xref.Part5. 3">4.1</a></li>3274 <li><em>Section 3.1</em> <a href="#rfc.xref.Part5. 4">4.1</a>, <a href="#rfc.xref.Part5.8">8.2.7</a></li>3275 <li><em>Section 3.2</em> <a href="#rfc.xref.Part5. 5">4.1</a>, <a href="#rfc.xref.Part5.10">8.4.17</a></li>3276 <li><em>Section 5.1</em> <a href="#rfc.xref.Part5. 6">5</a></li>3277 <li><em>Section 5.3</em> <a href="#rfc.xref.Part5.1">3 </a></li>3278 <li><em>Section 5.4</em> <a href="#rfc.xref.Part5.2">3 </a>, <a href="#rfc.xref.Part5.7">7.3</a>, <a href="#rfc.xref.Part5.9">8.4.17</a></li>3275 <li><em>Part5</em> <a href="#rfc.xref.Part5.1">3.1</a>, <a href="#rfc.xref.Part5.2">3.1</a>, <a href="#rfc.xref.Part5.3">3.2</a>, <a href="#rfc.xref.Part5.4">4.1</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">6.3</a>, <a href="#rfc.xref.Part5.8">7.2.7</a>, <a href="#rfc.xref.Part5.9">7.4.17</a>, <a href="#rfc.xref.Part5.10">7.4.17</a>, <a href="#Part5"><b>12.1</b></a><ul> 3276 <li><em>Section 3</em> <a href="#rfc.xref.Part5.4">4.1</a></li> 3277 <li><em>Section 3.1</em> <a href="#rfc.xref.Part5.5">4.1</a>, <a href="#rfc.xref.Part5.8">7.2.7</a></li> 3278 <li><em>Section 3.2</em> <a href="#rfc.xref.Part5.6">4.1</a>, <a href="#rfc.xref.Part5.10">7.4.17</a></li> 3279 <li><em>Section 5.1</em> <a href="#rfc.xref.Part5.3">3.2</a></li> 3280 <li><em>Section 5.3</em> <a href="#rfc.xref.Part5.1">3.1</a></li> 3281 <li><em>Section 5.4</em> <a href="#rfc.xref.Part5.2">3.1</a>, <a href="#rfc.xref.Part5.7">6.3</a>, <a href="#rfc.xref.Part5.9">7.4.17</a></li> 3279 3282 </ul> 3280 3283 </li> 3281 <li><em>Part6</em> <a href="#rfc.xref.Part6.1">2.2.1</a>, <a href="#rfc.xref.Part6.2"> 4.2.1</a>, <a href="#rfc.xref.Part6.3">5</a>, <a href="#rfc.xref.Part6.4">5</a>, <a href="#rfc.xref.Part6.5">7.3</a>, <a href="#rfc.xref.Part6.6">7.4</a>, <a href="#rfc.xref.Part6.7">7.5</a>, <a href="#rfc.xref.Part6.8">7.6</a>, <a href="#rfc.xref.Part6.9">7.7</a>, <a href="#rfc.xref.Part6.10">8.2.1</a>, <a href="#rfc.xref.Part6.11">8.2.4</a>, <a href="#rfc.xref.Part6.12">8.2.4</a>, <a href="#rfc.xref.Part6.13">8.2.4</a>, <a href="#rfc.xref.Part6.14">8.2.7</a>, <a href="#rfc.xref.Part6.15">8.3.1</a>, <a href="#rfc.xref.Part6.16">8.3.2</a>, <a href="#rfc.xref.Part6.17">8.4.11</a>, <a href="#Part6"><b>13.1</b></a><ul>3282 <li><em>Section 2.3.1</em> <a href="#rfc.xref.Part6.7"> 7.5</a></li>3283 <li><em>Section 2.3.1.1</em> <a href="#rfc.xref.Part6.10"> 8.2.1</a>, <a href="#rfc.xref.Part6.13">8.2.4</a>, <a href="#rfc.xref.Part6.14">8.2.7</a>, <a href="#rfc.xref.Part6.15">8.3.1</a>, <a href="#rfc.xref.Part6.16">8.3.2</a>, <a href="#rfc.xref.Part6.17">8.4.11</a></li>3284 <li><em>Section 2.5</em> <a href="#rfc.xref.Part6.8"> 7.6</a>, <a href="#rfc.xref.Part6.9">7.7</a></li>3285 <li><em>Section 3.1</em> <a href="#rfc.xref.Part6. 3">5</a></li>3286 <li><em>Section 3.2</em> <a href="#rfc.xref.Part6.11"> 8.2.4</a></li>3287 <li><em>Section 3.5</em> <a href="#rfc.xref.Part6. 4">5</a></li>3288 <li><em>Section 3.6</em> <a href="#rfc.xref.Part6.12"> 8.2.4</a></li>3284 <li><em>Part6</em> <a href="#rfc.xref.Part6.1">2.2.1</a>, <a href="#rfc.xref.Part6.2">3.2</a>, <a href="#rfc.xref.Part6.3">3.2</a>, <a href="#rfc.xref.Part6.4">4.2.1</a>, <a href="#rfc.xref.Part6.5">6.3</a>, <a href="#rfc.xref.Part6.6">6.4</a>, <a href="#rfc.xref.Part6.7">6.5</a>, <a href="#rfc.xref.Part6.8">6.6</a>, <a href="#rfc.xref.Part6.9">6.7</a>, <a href="#rfc.xref.Part6.10">7.2.1</a>, <a href="#rfc.xref.Part6.11">7.2.4</a>, <a href="#rfc.xref.Part6.12">7.2.4</a>, <a href="#rfc.xref.Part6.13">7.2.4</a>, <a href="#rfc.xref.Part6.14">7.2.7</a>, <a href="#rfc.xref.Part6.15">7.3.1</a>, <a href="#rfc.xref.Part6.16">7.3.2</a>, <a href="#rfc.xref.Part6.17">7.4.11</a>, <a href="#Part6"><b>12.1</b></a><ul> 3285 <li><em>Section 2.3.1</em> <a href="#rfc.xref.Part6.7">6.5</a></li> 3286 <li><em>Section 2.3.1.1</em> <a href="#rfc.xref.Part6.10">7.2.1</a>, <a href="#rfc.xref.Part6.13">7.2.4</a>, <a href="#rfc.xref.Part6.14">7.2.7</a>, <a href="#rfc.xref.Part6.15">7.3.1</a>, <a href="#rfc.xref.Part6.16">7.3.2</a>, <a href="#rfc.xref.Part6.17">7.4.11</a></li> 3287 <li><em>Section 2.5</em> <a href="#rfc.xref.Part6.8">6.6</a>, <a href="#rfc.xref.Part6.9">6.7</a></li> 3288 <li><em>Section 3.1</em> <a href="#rfc.xref.Part6.2">3.2</a></li> 3289 <li><em>Section 3.2</em> <a href="#rfc.xref.Part6.11">7.2.4</a></li> 3290 <li><em>Section 3.5</em> <a href="#rfc.xref.Part6.3">3.2</a></li> 3291 <li><em>Section 3.6</em> <a href="#rfc.xref.Part6.12">7.2.4</a></li> 3289 3292 </ul> 3290 3293 </li> 3291 <li><em>Part7</em> <a href="#rfc.xref.Part7.1">3 </a>, <a href="#rfc.xref.Part7.2">3</a>, <a href="#rfc.xref.Part7.3">4.1</a>, <a href="#rfc.xref.Part7.4">4.1</a>, <a href="#rfc.xref.Part7.5">4.1</a>, <a href="#rfc.xref.Part7.6">5</a>, <a href="#rfc.xref.Part7.7">5</a>, <a href="#rfc.xref.Part7.8">8.4.2</a>, <a href="#rfc.xref.Part7.9">8.4.8</a>, <a href="#Part7"><b>13.1</b></a><ul>3292 <li><em>Section 3</em> <a href="#rfc.xref.Part7. 3">4.1</a></li>3293 <li><em>Section 3.1</em> <a href="#rfc.xref.Part7. 4">4.1</a>, <a href="#rfc.xref.Part7.8">8.4.2</a></li>3294 <li><em>Section 3.2</em> <a href="#rfc.xref.Part7. 5">4.1</a>, <a href="#rfc.xref.Part7.9">8.4.8</a></li>3295 <li><em>Section 4.1</em> <a href="#rfc.xref.Part7.1">3 </a></li>3296 <li><em>Section 4.2</em> <a href="#rfc.xref.Part7. 6">5</a></li>3297 <li><em>Section 4.3</em> <a href="#rfc.xref.Part7.2">3 </a></li>3298 <li><em>Section 4.4</em> <a href="#rfc.xref.Part7. 7">5</a></li>3294 <li><em>Part7</em> <a href="#rfc.xref.Part7.1">3.1</a>, <a href="#rfc.xref.Part7.2">3.1</a>, <a href="#rfc.xref.Part7.3">3.2</a>, <a href="#rfc.xref.Part7.4">3.2</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="#rfc.xref.Part7.8">7.4.2</a>, <a href="#rfc.xref.Part7.9">7.4.8</a>, <a href="#Part7"><b>12.1</b></a><ul> 3295 <li><em>Section 3</em> <a href="#rfc.xref.Part7.5">4.1</a></li> 3296 <li><em>Section 3.1</em> <a href="#rfc.xref.Part7.6">4.1</a>, <a href="#rfc.xref.Part7.8">7.4.2</a></li> 3297 <li><em>Section 3.2</em> <a href="#rfc.xref.Part7.7">4.1</a>, <a href="#rfc.xref.Part7.9">7.4.8</a></li> 3298 <li><em>Section 4.1</em> <a href="#rfc.xref.Part7.1">3.1</a></li> 3299 <li><em>Section 4.2</em> <a href="#rfc.xref.Part7.3">3.2</a></li> 3300 <li><em>Section 4.3</em> <a href="#rfc.xref.Part7.2">3.1</a></li> 3301 <li><em>Section 4.4</em> <a href="#rfc.xref.Part7.4">3.2</a></li> 3299 3302 </ul> 3300 3303 </li> 3301 <li>POST method <a href="#rfc.xref.POST.1">2.1</a>, <a href="#rfc.iref.p.1"><b> 7.5</b></a>, <a href="#rfc.xref.POST.2">10.1</a>, <a href="#rfc.xref.POST.3">A</a></li>3302 <li>PUT method <a href="#rfc.xref.PUT.1">2.1</a>, <a href="#rfc.iref.p.2"><b> 7.6</b></a>, <a href="#rfc.xref.PUT.2">10.1</a>, <a href="#rfc.xref.PUT.3">A</a></li>3304 <li>POST method <a href="#rfc.xref.POST.1">2.1</a>, <a href="#rfc.iref.p.1"><b>6.5</b></a>, <a href="#rfc.xref.POST.2">9.1</a>, <a href="#rfc.xref.POST.3">A</a></li> 3305 <li>PUT method <a href="#rfc.xref.PUT.1">2.1</a>, <a href="#rfc.iref.p.2"><b>6.6</b></a>, <a href="#rfc.xref.PUT.2">9.1</a>, <a href="#rfc.xref.PUT.3">A</a></li> 3303 3306 </ul> 3304 3307 </li> 3305 3308 <li><a id="rfc.index.R" href="#rfc.index.R"><b>R</b></a><ul> 3306 <li>Referer header field <a href="#rfc.xref.header.referer.1">3 </a>, <a href="#rfc.iref.r.1"><b>9.6</b></a>, <a href="#rfc.xref.header.referer.2">10.3</a>, <a href="#rfc.xref.header.referer.3">A</a></li>3307 <li>Retry-After header field <a href="#rfc.xref.header.retry-after.1"> 5</a>, <a href="#rfc.xref.header.retry-after.2">8.5.4</a>, <a href="#rfc.iref.r.2"><b>9.7</b></a>, <a href="#rfc.xref.header.retry-after.3">10.3</a></li>3308 <li><em>RFC1945</em> <a href="#rfc.xref.RFC1945.1"> 8.3.3</a>, <a href="#RFC1945"><b>13.2</b></a><ul>3309 <li><em>Section 9.3</em> <a href="#rfc.xref.RFC1945.1"> 8.3.3</a></li>3309 <li>Referer header field <a href="#rfc.xref.header.referer.1">3.1</a>, <a href="#rfc.iref.r.1"><b>8.6</b></a>, <a href="#rfc.xref.header.referer.2">9.3</a>, <a href="#rfc.xref.header.referer.3">A</a></li> 3310 <li>Retry-After header field <a href="#rfc.xref.header.retry-after.1">3.2</a>, <a href="#rfc.xref.header.retry-after.2">7.5.4</a>, <a href="#rfc.iref.r.2"><b>8.7</b></a>, <a href="#rfc.xref.header.retry-after.3">9.3</a></li> 3311 <li><em>RFC1945</em> <a href="#rfc.xref.RFC1945.1">7.3.3</a>, <a href="#RFC1945"><b>12.2</b></a><ul> 3312 <li><em>Section 9.3</em> <a href="#rfc.xref.RFC1945.1">7.3.3</a></li> 3310 3313 </ul> 3311 3314 </li> 3312 <li><em>RFC2068</em> <a href="#rfc.xref.RFC2068.1"> 8.3</a>, <a href="#rfc.xref.RFC2068.2">8.3.3</a>, <a href="#RFC2068"><b>13.2</b></a><ul>3313 <li><em>Section 10.3</em> <a href="#rfc.xref.RFC2068.1"> 8.3</a></li>3314 <li><em>Section 10.3.3</em> <a href="#rfc.xref.RFC2068.2"> 8.3.3</a></li>3315 <li><em>RFC2068</em> <a href="#rfc.xref.RFC2068.1">7.3</a>, <a href="#rfc.xref.RFC2068.2">7.3.3</a>, <a href="#RFC2068"><b>12.2</b></a><ul> 3316 <li><em>Section 10.3</em> <a href="#rfc.xref.RFC2068.1">7.3</a></li> 3317 <li><em>Section 10.3.3</em> <a href="#rfc.xref.RFC2068.2">7.3.3</a></li> 3315 3318 </ul> 3316 3319 </li> 3317 <li><em>RFC2119</em> <a href="#rfc.xref.RFC2119.1">1.1</a>, <a href="#RFC2119"><b>1 3.1</b></a></li>3318 <li><em>RFC2616</em> <a href="#rfc.xref.RFC2616.1">1</a>, <a href="#rfc.xref.RFC2616.2"> 8.3.3</a>, <a href="#RFC2616"><b>13.2</b></a>, <a href="#rfc.xref.RFC2616.3">C.1</a><ul>3319 <li><em>Section 10.3.3</em> <a href="#rfc.xref.RFC2616.2"> 8.3.3</a></li>3320 <li><em>RFC2119</em> <a href="#rfc.xref.RFC2119.1">1.1</a>, <a href="#RFC2119"><b>12.1</b></a></li> 3321 <li><em>RFC2616</em> <a href="#rfc.xref.RFC2616.1">1</a>, <a href="#rfc.xref.RFC2616.2">7.3.3</a>, <a href="#RFC2616"><b>12.2</b></a>, <a href="#rfc.xref.RFC2616.3">C.1</a><ul> 3322 <li><em>Section 10.3.3</em> <a href="#rfc.xref.RFC2616.2">7.3.3</a></li> 3320 3323 </ul> 3321 3324 </li> 3322 <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">A</a>, <a href="#rfc.xref.RFC2817.3">A</a>, <a href="#rfc.xref.RFC2817.4">A</a><ul>3323 <li><em>Section 7.1</em> <a href="#rfc.xref.RFC2817.1"> 10.2</a>, <a href="#rfc.xref.RFC2817.2">A</a></li>3325 <li><em>RFC2817</em> <a href="#rfc.xref.RFC2817.1">9.2</a>, <a href="#RFC2817"><b>12.2</b></a>, <a href="#rfc.xref.RFC2817.2">A</a>, <a href="#rfc.xref.RFC2817.3">A</a>, <a href="#rfc.xref.RFC2817.4">A</a><ul> 3326 <li><em>Section 7.1</em> <a href="#rfc.xref.RFC2817.1">9.2</a>, <a href="#rfc.xref.RFC2817.2">A</a></li> 3324 3327 </ul> 3325 3328 </li> 3326 <li><em>RFC3864</em> <a href="#rfc.xref.RFC3864.1"> 10.3</a>, <a href="#RFC3864"><b>13.2</b></a></li>3327 <li><em>RFC3986</em> <a href="#rfc.xref.RFC3986.1"> 9.4</a>, <a href="#rfc.xref.RFC3986.2">9.4</a>, <a href="#RFC3986"><b>13.1</b></a><ul>3328 <li><em>Section 4.2</em> <a href="#rfc.xref.RFC3986.1"> 9.4</a></li>3329 <li><em>Section 5</em> <a href="#rfc.xref.RFC3986.2"> 9.4</a></li>3329 <li><em>RFC3864</em> <a href="#rfc.xref.RFC3864.1">9.3</a>, <a href="#RFC3864"><b>12.2</b></a></li> 3330 <li><em>RFC3986</em> <a href="#rfc.xref.RFC3986.1">8.4</a>, <a href="#rfc.xref.RFC3986.2">8.4</a>, <a href="#RFC3986"><b>12.1</b></a><ul> 3331 <li><em>Section 4.2</em> <a href="#rfc.xref.RFC3986.1">8.4</a></li> 3332 <li><em>Section 5</em> <a href="#rfc.xref.RFC3986.2">8.4</a></li> 3330 3333 </ul> 3331 3334 </li> 3332 <li><em>RFC5226</em> <a href="#rfc.xref.RFC5226.1">2.2</a>, <a href="#rfc.xref.RFC5226.2">4.2</a>, <a href="#RFC5226"><b>1 3.2</b></a><ul>3335 <li><em>RFC5226</em> <a href="#rfc.xref.RFC5226.1">2.2</a>, <a href="#rfc.xref.RFC5226.2">4.2</a>, <a href="#RFC5226"><b>12.2</b></a><ul> 3333 3336 <li><em>Section 4.1</em> <a href="#rfc.xref.RFC5226.1">2.2</a>, <a href="#rfc.xref.RFC5226.2">4.2</a></li> 3334 3337 </ul> 3335 3338 </li> 3336 <li><em>RFC5234</em> <a href="#rfc.xref.RFC5234.1">1.2</a>, <a href="#rfc.xref.RFC5234.2">1.2</a>, <a href="#RFC5234"><b>1 3.1</b></a><ul>3339 <li><em>RFC5234</em> <a href="#rfc.xref.RFC5234.1">1.2</a>, <a href="#rfc.xref.RFC5234.2">1.2</a>, <a href="#RFC5234"><b>12.1</b></a><ul> 3337 3340 <li><em>Appendix B.1</em> <a href="#rfc.xref.RFC5234.2">1.2</a></li> 3338 3341 </ul> 3339 3342 </li> 3340 <li><em>RFC5322</em> <a href="#rfc.xref.RFC5322.1"> 9.3</a>, <a href="#rfc.xref.RFC5322.2">9.3</a>, <a href="#RFC5322"><b>13.2</b></a><ul>3341 <li><em>Section 3.4</em> <a href="#rfc.xref.RFC5322.1"> 9.3</a>, <a href="#rfc.xref.RFC5322.2">9.3</a></li>3343 <li><em>RFC5322</em> <a href="#rfc.xref.RFC5322.1">8.3</a>, <a href="#rfc.xref.RFC5322.2">8.3</a>, <a href="#RFC5322"><b>12.2</b></a><ul> 3344 <li><em>Section 3.4</em> <a href="#rfc.xref.RFC5322.1">8.3</a>, <a href="#rfc.xref.RFC5322.2">8.3</a></li> 3342 3345 </ul> 3343 3346 </li> 3344 <li><em>RFC5789</em> <a href="#rfc.xref.RFC5789.1"> 7.6</a>, <a href="#RFC5789"><b>13.2</b></a></li>3347 <li><em>RFC5789</em> <a href="#rfc.xref.RFC5789.1">6.6</a>, <a href="#RFC5789"><b>12.2</b></a></li> 3345 3348 </ul> 3346 3349 </li> 3347 3350 <li><a id="rfc.index.S" href="#rfc.index.S"><b>S</b></a><ul> 3348 <li>Safe Methods <a href="#rfc.iref.s.1"><b> 7.1.1</b></a></li>3349 <li>Server header field <a href="#rfc.xref.header.server.1"> 5</a>, <a href="#rfc.iref.s.44"><b>9.8</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">A</a></li>3351 <li>Safe Methods <a href="#rfc.iref.s.1"><b>6.1.1</b></a></li> 3352 <li>Server header field <a href="#rfc.xref.header.server.1">3.2</a>, <a href="#rfc.iref.s.44"><b>8.8</b></a>, <a href="#rfc.xref.header.server.2">9.3</a>, <a href="#rfc.xref.header.server.3">10.1</a>, <a href="#rfc.xref.header.server.4">A</a></li> 3350 3353 <li>Status Codes 3351 3354 <ul> 3352 <li>100 Continue <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.s.2"><b> 8.1.1</b></a>, <a href="#rfc.xref.status.100.2">10.2</a></li>3353 <li>101 Switching Protocols <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.s.3"><b> 8.1.2</b></a>, <a href="#rfc.xref.status.101.2">10.2</a></li>3354 <li>200 OK <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.s.4"><b> 8.2.1</b></a>, <a href="#rfc.xref.status.200.2">10.2</a></li>3355 <li>201 Created <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.s.5"><b> 8.2.2</b></a>, <a href="#rfc.xref.status.201.2">10.2</a></li>3356 <li>202 Accepted <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.s.6"><b> 8.2.3</b></a>, <a href="#rfc.xref.status.202.2">10.2</a></li>3357 <li>203 Non-Authoritative Information <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.s.7"><b> 8.2.4</b></a>, <a href="#rfc.xref.status.203.2">10.2</a>, <a href="#rfc.xref.status.203.3">A</a></li>3358 <li>204 No Content <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.s.8"><b> 8.2.5</b></a>, <a href="#rfc.xref.status.204.2">10.2</a></li>3359 <li>205 Reset Content <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.s.9"><b> 8.2.6</b></a>, <a href="#rfc.xref.status.205.2">10.2</a></li>3360 <li>206 Partial Content <a href="#rfc.iref.s.10"><b> 8.2.7</b></a></li>3361 <li>300 Multiple Choices <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.s.11"><b> 8.3.1</b></a>, <a href="#rfc.xref.status.300.2">10.2</a></li>3362 <li>301 Moved Permanently <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.s.12"><b> 8.3.2</b></a>, <a href="#rfc.xref.status.301.2">10.2</a>, <a href="#rfc.xref.status.301.3">A</a></li>3363 <li>302 Found <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.s.13"><b> 8.3.3</b></a>, <a href="#rfc.xref.status.302.2">10.2</a>, <a href="#rfc.xref.status.302.3">A</a></li>3364 <li>303 See Other <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.xref.status.303.2"> 8.3.3</a>, <a href="#rfc.iref.s.14"><b>8.3.4</b></a>, <a href="#rfc.xref.status.303.3">10.2</a></li>3365 <li>304 Not Modified <a href="#rfc.iref.s.15"><b> 8.3.5</b></a></li>3366 <li>305 Use Proxy <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.s.16"><b> 8.3.6</b></a>, <a href="#rfc.xref.status.305.2">10.2</a>, <a href="#rfc.xref.status.305.3">A</a></li>3367 <li>306 (Unused) <a href="#rfc.iref.s.17"><b> 8.3.7</b></a>, <a href="#rfc.xref.status.306.1">10.2</a></li>3368 <li>307 Temporary Redirect <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.xref.status.307.2"> 8.3.3</a>, <a href="#rfc.iref.s.18"><b>8.3.8</b></a>, <a href="#rfc.xref.status.307.3">10.2</a>, <a href="#rfc.xref.status.307.4">A</a></li>3369 <li>400 Bad Request <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.s.19"><b> 8.4.1</b></a>, <a href="#rfc.xref.status.400.2">10.2</a></li>3370 <li>401 Unauthorized <a href="#rfc.iref.s.20"><b> 8.4.2</b></a></li>3371 <li>402 Payment Required <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.s.21"><b> 8.4.3</b></a>, <a href="#rfc.xref.status.402.2">10.2</a></li>3372 <li>403 Forbidden <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.s.22"><b> 8.4.4</b></a>, <a href="#rfc.xref.status.403.2">10.2</a></li>3373 <li>404 Not Found <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.s.23"><b> 8.4.5</b></a>, <a href="#rfc.xref.status.404.2">10.2</a></li>3374 <li>405 Method Not Allowed <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.s.24"><b> 8.4.6</b></a>, <a href="#rfc.xref.status.405.2">10.2</a></li>3375 <li>406 Not Acceptable <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.s.25"><b> 8.4.7</b></a>, <a href="#rfc.xref.status.406.2">10.2</a></li>3376 <li>407 Proxy Authentication Required <a href="#rfc.iref.s.26"><b> 8.4.8</b></a>, <a href="#rfc.xref.status.407.1">10.2</a></li>3377 <li>408 Request Timeout <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.s.27"><b> 8.4.9</b></a>, <a href="#rfc.xref.status.408.2">10.2</a></li>3378 <li>409 Conflict <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.s.28"><b> 8.4.10</b></a>, <a href="#rfc.xref.status.409.2">10.2</a></li>3379 <li>410 Gone <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.s.29"><b> 8.4.11</b></a>, <a href="#rfc.xref.status.410.2">10.2</a></li>3380 <li>411 Length Required <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.s.30"><b> 8.4.12</b></a>, <a href="#rfc.xref.status.411.2">10.2</a></li>3381 <li>412 Precondition Failed <a href="#rfc.iref.s.31"><b> 8.4.13</b></a></li>3382 <li>413 Request Representation Too Large <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.s.32"><b> 8.4.14</b></a>, <a href="#rfc.xref.status.413.2">10.2</a></li>3383 <li>414 URI Too Long <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.s.33"><b> 8.4.15</b></a>, <a href="#rfc.xref.status.414.2">10.2</a></li>3384 <li>415 Unsupported Media Type <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.s.34"><b> 8.4.16</b></a>, <a href="#rfc.xref.status.415.2">10.2</a></li>3385 <li>416 Requested Range Not Satisfiable <a href="#rfc.iref.s.35"><b> 8.4.17</b></a></li>3386 <li>417 Expectation Failed <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.s.36"><b> 8.4.18</b></a>, <a href="#rfc.xref.status.417.2">10.2</a></li>3387 <li>426 Upgrade Required <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.s.37"><b> 8.4.19</b></a>, <a href="#rfc.xref.status.426.2">10.2</a>, <a href="#rfc.xref.status.426.3">A</a></li>3388 <li>500 Internal Server Error <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.s.38"><b> 8.5.1</b></a>, <a href="#rfc.xref.status.500.2">10.2</a></li>3389 <li>501 Not Implemented <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.s.39"><b> 8.5.2</b></a>, <a href="#rfc.xref.status.501.2">10.2</a></li>3390 <li>502 Bad Gateway <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.s.40"><b> 8.5.3</b></a>, <a href="#rfc.xref.status.502.2">10.2</a></li>3391 <li>503 Service Unavailable <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.s.41"><b> 8.5.4</b></a>, <a href="#rfc.xref.status.503.2">10.2</a></li>3392 <li>504 Gateway Timeout <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.s.42"><b> 8.5.5</b></a>, <a href="#rfc.xref.status.504.2">10.2</a></li>3393 <li>505 HTTP Version Not Supported <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.s.43"><b> 8.5.6</b></a>, <a href="#rfc.xref.status.505.2">10.2</a></li>3355 <li>100 Continue <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.s.2"><b>7.1.1</b></a>, <a href="#rfc.xref.status.100.2">9.2</a></li> 3356 <li>101 Switching Protocols <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.s.3"><b>7.1.2</b></a>, <a href="#rfc.xref.status.101.2">9.2</a></li> 3357 <li>200 OK <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.s.4"><b>7.2.1</b></a>, <a href="#rfc.xref.status.200.2">9.2</a></li> 3358 <li>201 Created <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.s.5"><b>7.2.2</b></a>, <a href="#rfc.xref.status.201.2">9.2</a></li> 3359 <li>202 Accepted <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.s.6"><b>7.2.3</b></a>, <a href="#rfc.xref.status.202.2">9.2</a></li> 3360 <li>203 Non-Authoritative Information <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.s.7"><b>7.2.4</b></a>, <a href="#rfc.xref.status.203.2">9.2</a>, <a href="#rfc.xref.status.203.3">A</a></li> 3361 <li>204 No Content <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.s.8"><b>7.2.5</b></a>, <a href="#rfc.xref.status.204.2">9.2</a></li> 3362 <li>205 Reset Content <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.s.9"><b>7.2.6</b></a>, <a href="#rfc.xref.status.205.2">9.2</a></li> 3363 <li>206 Partial Content <a href="#rfc.iref.s.10"><b>7.2.7</b></a></li> 3364 <li>300 Multiple Choices <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.s.11"><b>7.3.1</b></a>, <a href="#rfc.xref.status.300.2">9.2</a></li> 3365 <li>301 Moved Permanently <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.s.12"><b>7.3.2</b></a>, <a href="#rfc.xref.status.301.2">9.2</a>, <a href="#rfc.xref.status.301.3">A</a></li> 3366 <li>302 Found <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.s.13"><b>7.3.3</b></a>, <a href="#rfc.xref.status.302.2">9.2</a>, <a href="#rfc.xref.status.302.3">A</a></li> 3367 <li>303 See Other <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.xref.status.303.2">7.3.3</a>, <a href="#rfc.iref.s.14"><b>7.3.4</b></a>, <a href="#rfc.xref.status.303.3">9.2</a></li> 3368 <li>304 Not Modified <a href="#rfc.iref.s.15"><b>7.3.5</b></a></li> 3369 <li>305 Use Proxy <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.s.16"><b>7.3.6</b></a>, <a href="#rfc.xref.status.305.2">9.2</a>, <a href="#rfc.xref.status.305.3">A</a></li> 3370 <li>306 (Unused) <a href="#rfc.iref.s.17"><b>7.3.7</b></a>, <a href="#rfc.xref.status.306.1">9.2</a></li> 3371 <li>307 Temporary Redirect <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.xref.status.307.2">7.3.3</a>, <a href="#rfc.iref.s.18"><b>7.3.8</b></a>, <a href="#rfc.xref.status.307.3">9.2</a>, <a href="#rfc.xref.status.307.4">A</a></li> 3372 <li>400 Bad Request <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.s.19"><b>7.4.1</b></a>, <a href="#rfc.xref.status.400.2">9.2</a></li> 3373 <li>401 Unauthorized <a href="#rfc.iref.s.20"><b>7.4.2</b></a></li> 3374 <li>402 Payment Required <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.s.21"><b>7.4.3</b></a>, <a href="#rfc.xref.status.402.2">9.2</a></li> 3375 <li>403 Forbidden <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.s.22"><b>7.4.4</b></a>, <a href="#rfc.xref.status.403.2">9.2</a></li> 3376 <li>404 Not Found <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.s.23"><b>7.4.5</b></a>, <a href="#rfc.xref.status.404.2">9.2</a></li> 3377 <li>405 Method Not Allowed <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.s.24"><b>7.4.6</b></a>, <a href="#rfc.xref.status.405.2">9.2</a></li> 3378 <li>406 Not Acceptable <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.s.25"><b>7.4.7</b></a>, <a href="#rfc.xref.status.406.2">9.2</a></li> 3379 <li>407 Proxy Authentication Required <a href="#rfc.iref.s.26"><b>7.4.8</b></a>, <a href="#rfc.xref.status.407.1">9.2</a></li> 3380 <li>408 Request Timeout <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.s.27"><b>7.4.9</b></a>, <a href="#rfc.xref.status.408.2">9.2</a></li> 3381 <li>409 Conflict <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.s.28"><b>7.4.10</b></a>, <a href="#rfc.xref.status.409.2">9.2</a></li> 3382 <li>410 Gone <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.s.29"><b>7.4.11</b></a>, <a href="#rfc.xref.status.410.2">9.2</a></li> 3383 <li>411 Length Required <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.s.30"><b>7.4.12</b></a>, <a href="#rfc.xref.status.411.2">9.2</a></li> 3384 <li>412 Precondition Failed <a href="#rfc.iref.s.31"><b>7.4.13</b></a></li> 3385 <li>413 Request Representation Too Large <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.s.32"><b>7.4.14</b></a>, <a href="#rfc.xref.status.413.2">9.2</a></li> 3386 <li>414 URI Too Long <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.s.33"><b>7.4.15</b></a>, <a href="#rfc.xref.status.414.2">9.2</a></li> 3387 <li>415 Unsupported Media Type <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.s.34"><b>7.4.16</b></a>, <a href="#rfc.xref.status.415.2">9.2</a></li> 3388 <li>416 Requested Range Not Satisfiable <a href="#rfc.iref.s.35"><b>7.4.17</b></a></li> 3389 <li>417 Expectation Failed <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.s.36"><b>7.4.18</b></a>, <a href="#rfc.xref.status.417.2">9.2</a></li> 3390 <li>426 Upgrade Required <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.s.37"><b>7.4.19</b></a>, <a href="#rfc.xref.status.426.2">9.2</a>, <a href="#rfc.xref.status.426.3">A</a></li> 3391 <li>500 Internal Server Error <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.s.38"><b>7.5.1</b></a>, <a href="#rfc.xref.status.500.2">9.2</a></li> 3392 <li>501 Not Implemented <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.s.39"><b>7.5.2</b></a>, <a href="#rfc.xref.status.501.2">9.2</a></li> 3393 <li>502 Bad Gateway <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.s.40"><b>7.5.3</b></a>, <a href="#rfc.xref.status.502.2">9.2</a></li> 3394 <li>503 Service Unavailable <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.s.41"><b>7.5.4</b></a>, <a href="#rfc.xref.status.503.2">9.2</a></li> 3395 <li>504 Gateway Timeout <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.s.42"><b>7.5.5</b></a>, <a href="#rfc.xref.status.504.2">9.2</a></li> 3396 <li>505 HTTP Version Not Supported <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.s.43"><b>7.5.6</b></a>, <a href="#rfc.xref.status.505.2">9.2</a></li> 3394 3397 </ul> 3395 3398 </li> … … 3397 3400 </li> 3398 3401 <li><a id="rfc.index.T" href="#rfc.index.T"><b>T</b></a><ul> 3399 <li>TRACE method <a href="#rfc.xref.TRACE.1">2.1</a>, <a href="#rfc.iref.t.1"><b> 7.8</b></a>, <a href="#rfc.xref.TRACE.2">9.5</a>, <a href="#rfc.xref.TRACE.3">10.1</a>, <a href="#rfc.xref.TRACE.4">11.1</a></li>3402 <li>TRACE method <a href="#rfc.xref.TRACE.1">2.1</a>, <a href="#rfc.iref.t.1"><b>6.8</b></a>, <a href="#rfc.xref.TRACE.2">8.5</a>, <a href="#rfc.xref.TRACE.3">9.1</a>, <a href="#rfc.xref.TRACE.4">10.1</a></li> 3400 3403 </ul> 3401 3404 </li> 3402 3405 <li><a id="rfc.index.U" href="#rfc.index.U"><b>U</b></a><ul> 3403 <li>User-Agent header field <a href="#rfc.xref.header.user-agent.1">3 </a>, <a href="#rfc.iref.u.1"><b>9.9</b></a>, <a href="#rfc.xref.header.user-agent.2">10.3</a>, <a href="#rfc.xref.header.user-agent.3">11.1</a></li>3406 <li>User-Agent header field <a href="#rfc.xref.header.user-agent.1">3.1</a>, <a href="#rfc.iref.u.1"><b>8.9</b></a>, <a href="#rfc.xref.header.user-agent.2">9.3</a>, <a href="#rfc.xref.header.user-agent.3">10.1</a></li> 3404 3407 </ul> 3405 3408 </li>
Note: See TracChangeset
for help on using the changeset viewer.