Changeset 1635 for draft-ietf-httpbis/latest
- Timestamp:
- 29/03/12 11:28:19 (10 years ago)
- Location:
- draft-ietf-httpbis/latest
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/p1-messaging.html
r1632 r1635 460 460 } 461 461 @bottom-center { 462 content: "Expires September 29, 2012";462 content: "Expires September 30, 2012"; 463 463 } 464 464 @bottom-right { … … 502 502 <meta name="dct.creator" content="Reschke, J. F."> 503 503 <meta name="dct.identifier" content="urn:ietf:id:draft-ietf-httpbis-p1-messaging-latest"> 504 <meta name="dct.issued" scheme="ISO8601" content="2012-03-2 8">504 <meta name="dct.issued" scheme="ISO8601" content="2012-03-29"> 505 505 <meta name="dct.replaces" content="urn:ietf:rfc:2145"> 506 506 <meta name="dct.replaces" content="urn:ietf:rfc:2616"> … … 534 534 </tr> 535 535 <tr> 536 <td class="left">Expires: September 29, 2012</td>536 <td class="left">Expires: September 30, 2012</td> 537 537 <td class="right">greenbytes</td> 538 538 </tr> 539 539 <tr> 540 540 <td class="left"></td> 541 <td class="right">March 2 8, 2012</td>541 <td class="right">March 29, 2012</td> 542 542 </tr> 543 543 </tbody> … … 572 572 in progress”. 573 573 </p> 574 <p>This Internet-Draft will expire on September 29, 2012.</p>574 <p>This Internet-Draft will expire on September 30, 2012.</p> 575 575 <h1><a id="rfc.copyrightnotice" href="#rfc.copyrightnotice">Copyright Notice</a></h1> 576 576 <p>Copyright © 2012 IETF Trust and the persons identified as the document authors. All rights reserved.</p> … … 1078 1078 </p> 1079 1079 <p id="rfc.section.2.7.1.p.6">When an "http" URI is used within a context that calls for access to the indicated resource, a client <em class="bcp14">MAY</em> attempt access by resolving the host to an IP address, establishing a TCP connection to that address on the indicated port, 1080 and sending an HTTP request message (<a href="#http.message" title="Message Format">Section 3</a>) containing the URI's identifying data (<a href="#message.routing" title="Message Routing">Section 5</a>) to the server. If the server responds to that request with a non-interim HTTP response message, as described in <a href="p2-semantics.html#status.code .and.reason.phrase" title="Status Code and Reason Phrase">Section 4</a> of <a href="#Part2" id="rfc.xref.Part2.2"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>, then that response is considered an authoritative answer to the client's request.1080 and sending an HTTP request message (<a href="#http.message" title="Message Format">Section 3</a>) containing the URI's identifying data (<a href="#message.routing" title="Message Routing">Section 5</a>) to the server. If the server responds to that request with a non-interim HTTP response message, as described in <a href="p2-semantics.html#status.codes" title="Status Codes">Section 4</a> of <a href="#Part2" id="rfc.xref.Part2.2"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>, then that response is considered an authoritative answer to the client's request. 1081 1081 </p> 1082 1082 <p id="rfc.section.2.7.1.p.7">Although HTTP is independent of the transport protocol, the "http" scheme is specific to TCP-based services because the name … … 1199 1199 <div id="rfc.figure.u.15"></div><pre class="inline"><span id="rfc.iref.g.29"></span> <a href="#status.line" class="smpl">status-line</a> = <a href="#http.version" class="smpl">HTTP-version</a> <a href="#core.rules" class="smpl">SP</a> <a href="#status-code" class="smpl">status-code</a> <a href="#core.rules" class="smpl">SP</a> <a href="#reason-phrase" class="smpl">reason-phrase</a> <a href="#core.rules" class="smpl">CRLF</a> 1200 1200 </pre><div id="status-code"> 1201 <p id="rfc.section.3.1.2.p.3">The status-code element is a 3-digit integer result code of the attempt to understand and satisfy the request. See <a href="p2-semantics.html#status.code .and.reason.phrase" title="Status Code and Reason Phrase">Section 4</a> of <a href="#Part2" id="rfc.xref.Part2.5"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a> for further information, such as the list of status codes defined by this specification, the IANA registry, and considerations1201 <p id="rfc.section.3.1.2.p.3">The status-code element is a 3-digit integer result code of the attempt to understand and satisfy the request. See <a href="p2-semantics.html#status.codes" title="Status Codes">Section 4</a> of <a href="#Part2" id="rfc.xref.Part2.5"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a> for further information, such as the list of status codes defined by this specification, the IANA registry, and considerations 1202 1202 for new status codes. 1203 1203 </p> -
draft-ietf-httpbis/latest/p1-messaging.xml
r1632 r1635 34 34 <!ENTITY methods "<xref target='Part2' x:rel='#methods' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 35 35 <!ENTITY OPTIONS "<xref target='Part2' x:rel='#OPTIONS' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 36 <!ENTITY status-code-reasonphr "<xref target='Part2' x:rel='#status.code.and.reason.phrase' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">37 36 <!ENTITY status-codes "<xref target='Part2' x:rel='#status.codes' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 38 37 <!ENTITY status-100 "<xref target='Part2' x:rel='#status.100' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> … … 836 835 (<xref target="message.routing"/>) to the server. 837 836 If the server responds to that request with a non-interim HTTP response 838 message, as described in &status-code -reasonphr;, then that response837 message, as described in &status-codes;, then that response 839 838 is considered an authoritative answer to the client's request. 840 839 </t> … … 1098 1097 <t anchor="status-code"> 1099 1098 The status-code element is a 3-digit integer result code of the attempt to 1100 understand and satisfy the request. See &status-code -reasonphr; for1099 understand and satisfy the request. See &status-codes; for 1101 1100 further information, such as the list of status codes defined by this 1102 1101 specification, the IANA registry, and considerations for new status codes. -
draft-ietf-httpbis/latest/p2-semantics.html
r1625 r1635 460 460 } 461 461 @bottom-center { 462 content: "Expires September 29, 2012";462 content: "Expires September 30, 2012"; 463 463 } 464 464 @bottom-right { … … 485 485 <link rel="Chapter" title="2 Methods" href="#rfc.section.2"> 486 486 <link rel="Chapter" title="3 Header Fields" href="#rfc.section.3"> 487 <link rel="Chapter" title="4 Status Code and Reason Phrase" href="#rfc.section.4">487 <link rel="Chapter" title="4 Status Codes" href="#rfc.section.4"> 488 488 <link rel="Chapter" title="5 Representation" href="#rfc.section.5"> 489 489 <link rel="Chapter" title="6 Common Protocol Parameters" href="#rfc.section.6"> … … 504 504 <meta name="dct.creator" content="Reschke, J. F."> 505 505 <meta name="dct.identifier" content="urn:ietf:id:draft-ietf-httpbis-p2-semantics-latest"> 506 <meta name="dct.issued" scheme="ISO8601" content="2012-03-2 8">506 <meta name="dct.issued" scheme="ISO8601" content="2012-03-29"> 507 507 <meta name="dct.replaces" content="urn:ietf:rfc:2616"> 508 508 <meta name="dct.abstract" content="The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypertext information systems. HTTP has been in use by the World Wide Web global information initiative since 1990. This document is Part 2 of the seven-part specification that defines the protocol referred to as "HTTP/1.1" and, taken together, obsoletes RFC 2616. Part 2 defines the semantics of HTTP messages as expressed by request methods, request header fields, response status codes, and response header fields."> … … 535 535 </tr> 536 536 <tr> 537 <td class="left">Expires: September 29, 2012</td>537 <td class="left">Expires: September 30, 2012</td> 538 538 <td class="right">greenbytes</td> 539 539 </tr> 540 540 <tr> 541 541 <td class="left"></td> 542 <td class="right">March 2 8, 2012</td>542 <td class="right">March 29, 2012</td> 543 543 </tr> 544 544 </tbody> … … 570 570 in progress”. 571 571 </p> 572 <p>This Internet-Draft will expire on September 29, 2012.</p>572 <p>This Internet-Draft will expire on September 30, 2012.</p> 573 573 <h1><a id="rfc.copyrightnotice" href="#rfc.copyrightnotice">Copyright Notice</a></h1> 574 574 <p>Copyright © 2012 IETF Trust and the persons identified as the document authors. All rights reserved.</p> … … 626 626 </ul> 627 627 </li> 628 <li>4. <a href="#status.code .and.reason.phrase">Status Code and Reason Phrase</a><ul>628 <li>4. <a href="#status.codes">Status Codes</a><ul> 629 629 <li>4.1 <a href="#overview.of.status.codes">Overview of Status Codes</a></li> 630 630 <li>4.2 <a href="#status.code.registry">Status Code Registry</a><ul> … … 1308 1308 </table> 1309 1309 </div> 1310 <h1 id="rfc.section.4"><a href="#rfc.section.4">4.</a> <a id="status.code .and.reason.phrase" href="#status.code.and.reason.phrase">Status Code and Reason Phrase</a></h1>1310 <h1 id="rfc.section.4"><a href="#rfc.section.4">4.</a> <a id="status.codes" href="#status.codes">Status Codes</a></h1> 1311 1311 <p id="rfc.section.4.p.1">The status-code element is a 3-digit integer result code of the attempt to understand and satisfy the request.</p> 1312 <p id="rfc.section.4.p.2">The reason-phrase is intended to give a short textual description of the status-code and is intended for a human user. The 1313 client does not need to examine or display the reason-phrase. 1314 </p> 1315 <div id="rfc.figure.u.7"></div><pre class="inline"><span id="rfc.iref.g.3"></span><span id="rfc.iref.g.4"></span><span id="rfc.iref.g.5"></span> <a href="#status.code.and.reason.phrase" class="smpl">status-code</a> = 3<a href="#notation" class="smpl">DIGIT</a> 1316 <a href="#status.code.and.reason.phrase" class="smpl">reason-phrase</a> = *( <a href="#notation" class="smpl">HTAB</a> / <a href="#notation" class="smpl">SP</a> / <a href="#notation" class="smpl">VCHAR</a> / <a href="#core.rules" class="smpl">obs-text</a> ) 1317 </pre><p id="rfc.section.4.p.4">HTTP status codes are extensible. HTTP applications are not required to understand the meaning of all registered status codes, 1312 <p id="rfc.section.4.p.2">HTTP status codes are extensible. HTTP applications are not required to understand the meaning of all registered status codes, 1318 1313 though such understanding is obviously desirable. However, applications <em class="bcp14">MUST</em> understand the class of any status code, as indicated by the first digit, and treat any unrecognized response as being equivalent 1319 1314 to the x00 status code of that class, with the exception that an unrecognized response <em class="bcp14">MUST NOT</em> be cached. For example, if an unrecognized status code of 431 is received by the client, it can safely assume that there was … … 1321 1316 information which will explain the unusual status. 1322 1317 </p> 1323 <p id="rfc.section.4.p. 5">The first digit of the status-code defines the class of response. The last two digits do not have any categorization role.1318 <p id="rfc.section.4.p.3">The first digit of the status-code defines the class of response. The last two digits do not have any categorization role. 1324 1319 There are 5 values for the first digit: 1325 1320 </p> … … 1331 1326 <li>5xx: Server Error - The server failed to fulfill an apparently valid request</li> 1332 1327 </ul> 1333 <p id="rfc.section.4.p. 6">For most status codes the response can carry a payload, in which case a Content-Type header field indicates the payload's1328 <p id="rfc.section.4.p.4">For most status codes the response can carry a payload, in which case a Content-Type header field indicates the payload's 1334 1329 media type (<a href="p3-payload.html#header.content-type" title="Content-Type">Section 6.8</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>). 1335 1330 </p> … … 1575 1570 that are required, those that modify the semantics of the response). 1576 1571 </p> 1577 <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.code .and.reason.phrase" title="Status Code and Reason Phrase">Section 4</a>. To allow existing parsers to properly handle them, new status codes cannot disallow a response body, although they can mandate1572 <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 Codes">Section 4</a>. To allow existing parsers to properly handle them, new status codes cannot disallow a response body, although they can mandate 1578 1573 a zero-length response body. They can require the presence of one or more particular HTTP response header(s). 1579 1574 </p> … … 1592 1587 a request, then it need not forward the corresponding 100 (Continue) response(s).) 1593 1588 </p> 1594 <div id="rfc.iref. 22"></div>1589 <div id="rfc.iref.19"></div> 1595 1590 <div id="rfc.iref.s.2"></div> 1596 1591 <h3 id="rfc.section.4.3.1"><a href="#rfc.section.4.3.1">4.3.1</a> <a id="status.100" href="#status.100">100 Continue</a></h3> … … 1599 1594 server <em class="bcp14">MUST</em> send a final response after the request has been completed. See <a href="p1-messaging.html#use.of.the.100.status" title="Use of the 100 (Continue) Status">Section 6.4.3</a> of <a href="#Part1" id="rfc.xref.Part1.30"><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. 1600 1595 </p> 1601 <div id="rfc.iref.2 3"></div>1596 <div id="rfc.iref.20"></div> 1602 1597 <div id="rfc.iref.s.3"></div> 1603 1598 <h3 id="rfc.section.4.3.2"><a href="#rfc.section.4.3.2">4.3.2</a> <a id="status.101" href="#status.101">101 Switching Protocols</a></h3> … … 1611 1606 <h2 id="rfc.section.4.4"><a href="#rfc.section.4.4">4.4</a> <a id="status.2xx" href="#status.2xx">Successful 2xx</a></h2> 1612 1607 <p id="rfc.section.4.4.p.1">This class of status code indicates that the client's request was successfully received, understood, and accepted.</p> 1613 <div id="rfc.iref.2 4"></div>1608 <div id="rfc.iref.21"></div> 1614 1609 <div id="rfc.iref.s.4"></div> 1615 1610 <h3 id="rfc.section.4.4.1"><a href="#rfc.section.4.4.1">4.4.1</a> <a id="status.200" href="#status.200">200 OK</a></h3> … … 1627 1622 <p id="rfc.section.4.4.1.p.2">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 2.3.1.1</a> of <a href="#Part6" id="rfc.xref.Part6.11"><cite title="HTTP/1.1, part 6: Caching">[Part6]</cite></a>) to determine freshness for 200 responses. 1628 1623 </p> 1629 <div id="rfc.iref.2 5"></div>1624 <div id="rfc.iref.22"></div> 1630 1625 <div id="rfc.iref.s.5"></div> 1631 1626 <h3 id="rfc.section.4.4.2"><a href="#rfc.section.4.4.2">4.4.2</a> <a id="status.201" href="#status.201">201 Created</a></h3> … … 1640 1635 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>). 1641 1636 </p> 1642 <div id="rfc.iref.2 6"></div>1637 <div id="rfc.iref.23"></div> 1643 1638 <div id="rfc.iref.s.6"></div> 1644 1639 <h3 id="rfc.section.4.4.3"><a href="#rfc.section.4.4.3">4.4.3</a> <a id="status.202" href="#status.202">202 Accepted</a></h3> … … 1652 1647 user can expect the request to be fulfilled. 1653 1648 </p> 1654 <div id="rfc.iref.2 7"></div>1649 <div id="rfc.iref.24"></div> 1655 1650 <div id="rfc.iref.s.7"></div> 1656 1651 <h3 id="rfc.section.4.4.4"><a href="#rfc.section.4.4.4">4.4.4</a> <a id="status.203" href="#status.203">203 Non-Authoritative Information</a></h3> … … 1662 1657 <p id="rfc.section.4.4.4.p.3">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 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 203 responses. 1663 1658 </p> 1664 <div id="rfc.iref.2 8"></div>1659 <div id="rfc.iref.25"></div> 1665 1660 <div id="rfc.iref.s.8"></div> 1666 1661 <h3 id="rfc.section.4.4.5"><a href="#rfc.section.4.4.5">4.4.5</a> <a id="status.204" href="#status.204">204 No Content</a></h3> … … 1683 1678 <p id="rfc.section.4.4.5.p.5">The 204 response <em class="bcp14">MUST NOT</em> include a message body, and thus is always terminated by the first empty line after the header fields. 1684 1679 </p> 1685 <div id="rfc.iref.2 9"></div>1680 <div id="rfc.iref.26"></div> 1686 1681 <div id="rfc.iref.s.9"></div> 1687 1682 <h3 id="rfc.section.4.4.6"><a href="#rfc.section.4.4.6">4.4.6</a> <a id="status.205" href="#status.205">205 Reset Content</a></h3> … … 1739 1734 </p> 1740 1735 </div> 1741 <div id="rfc.iref. 30"></div>1736 <div id="rfc.iref.27"></div> 1742 1737 <div id="rfc.iref.s.10"></div> 1743 1738 <h3 id="rfc.section.4.5.1"><a href="#rfc.section.4.5.1">4.5.1</a> <a id="status.300" href="#status.300">300 Multiple Choices</a></h3> … … 1754 1749 <p id="rfc.section.4.5.1.p.4">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 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. 1755 1750 </p> 1756 <div id="rfc.iref. 31"></div>1751 <div id="rfc.iref.28"></div> 1757 1752 <div id="rfc.iref.s.11"></div> 1758 1753 <h3 id="rfc.section.4.5.2"><a href="#rfc.section.4.5.2">4.5.2</a> <a id="status.301" href="#status.301">301 Moved Permanently</a></h3> … … 1770 1765 </p> 1771 1766 </div> 1772 <div id="rfc.iref. 32"></div>1767 <div id="rfc.iref.29"></div> 1773 1768 <div id="rfc.iref.s.12"></div> 1774 1769 <h3 id="rfc.section.4.5.3"><a href="#rfc.section.4.5.3">4.5.3</a> <a id="status.302" href="#status.302">302 Found</a></h3> … … 1783 1778 </p> 1784 1779 </div> 1785 <div id="rfc.iref.3 3"></div>1780 <div id="rfc.iref.30"></div> 1786 1781 <div id="rfc.iref.s.13"></div> 1787 1782 <h3 id="rfc.section.4.5.4"><a href="#rfc.section.4.5.4">4.5.4</a> <a id="status.303" href="#status.303">303 See Other</a></h3> … … 1804 1799 <p id="rfc.section.4.5.4.p.4">Except for responses to a HEAD request, the representation of a 303 response <em class="bcp14">SHOULD</em> contain a short hypertext note with a hyperlink to the Location URI. 1805 1800 </p> 1806 <div id="rfc.iref.3 4"></div>1801 <div id="rfc.iref.31"></div> 1807 1802 <div id="rfc.iref.s.14"></div> 1808 1803 <h3 id="rfc.section.4.5.5"><a href="#rfc.section.4.5.5">4.5.5</a> <a id="status.305" href="#status.305">305 Use Proxy</a></h3> 1809 1804 <p id="rfc.section.4.5.5.p.1">The 305 status code was defined in a previous version of this specification (see <a href="#changes.from.rfc.2616" title="Changes from RFC 2616">Appendix A</a>), and is now deprecated. 1810 1805 </p> 1811 <div id="rfc.iref.3 5"></div>1806 <div id="rfc.iref.32"></div> 1812 1807 <div id="rfc.iref.s.15"></div> 1813 1808 <h3 id="rfc.section.4.5.6"><a href="#rfc.section.4.5.6">4.5.6</a> <a id="status.306" href="#status.306">306 (Unused)</a></h3> 1814 1809 <p id="rfc.section.4.5.6.p.1">The 306 status code was used in a previous version of the specification, is no longer used, and the code is reserved.</p> 1815 <div id="rfc.iref.3 6"></div>1810 <div id="rfc.iref.33"></div> 1816 1811 <div id="rfc.iref.s.16"></div> 1817 1812 <h3 id="rfc.section.4.5.7"><a href="#rfc.section.4.5.7">4.5.7</a> <a id="status.307" href="#status.307">307 Temporary Redirect</a></h3> … … 1831 1826 These status codes are applicable to any request method. User agents <em class="bcp14">SHOULD</em> display any included representation to the user. 1832 1827 </p> 1833 <div id="rfc.iref.3 7"></div>1828 <div id="rfc.iref.34"></div> 1834 1829 <div id="rfc.iref.s.17"></div> 1835 1830 <h3 id="rfc.section.4.6.1"><a href="#rfc.section.4.6.1">4.6.1</a> <a id="status.400" href="#status.400">400 Bad Request</a></h3> 1836 1831 <p id="rfc.section.4.6.1.p.1">The server cannot or will not process the request, due to a client error (e.g., malformed syntax).</p> 1837 <div id="rfc.iref.3 8"></div>1832 <div id="rfc.iref.35"></div> 1838 1833 <div id="rfc.iref.s.18"></div> 1839 1834 <h3 id="rfc.section.4.6.2"><a href="#rfc.section.4.6.2">4.6.2</a> <a id="status.402" href="#status.402">402 Payment Required</a></h3> 1840 1835 <p id="rfc.section.4.6.2.p.1">This code is reserved for future use.</p> 1841 <div id="rfc.iref.3 9"></div>1836 <div id="rfc.iref.36"></div> 1842 1837 <div id="rfc.iref.s.19"></div> 1843 1838 <h3 id="rfc.section.4.6.3"><a href="#rfc.section.4.6.3">4.6.3</a> <a id="status.403" href="#status.403">403 Forbidden</a></h3> … … 1848 1843 to the client, the status code 404 (Not Found) <em class="bcp14">MAY</em> be used instead. 1849 1844 </p> 1850 <div id="rfc.iref. 40"></div>1845 <div id="rfc.iref.37"></div> 1851 1846 <div id="rfc.iref.s.20"></div> 1852 1847 <h3 id="rfc.section.4.6.4"><a href="#rfc.section.4.6.4">4.6.4</a> <a id="status.404" href="#status.404">404 Not Found</a></h3> … … 1856 1851 has been refused, or when no other response is applicable. 1857 1852 </p> 1858 <div id="rfc.iref. 41"></div>1853 <div id="rfc.iref.38"></div> 1859 1854 <div id="rfc.iref.s.21"></div> 1860 1855 <h3 id="rfc.section.4.6.5"><a href="#rfc.section.4.6.5">4.6.5</a> <a id="status.405" href="#status.405">405 Method Not Allowed</a></h3> 1861 1856 <p id="rfc.section.4.6.5.p.1">The method specified in the request-line is not allowed for the target resource. The response <em class="bcp14">MUST</em> include an Allow header field containing a list of valid methods for the requested resource. 1862 1857 </p> 1863 <div id="rfc.iref. 42"></div>1858 <div id="rfc.iref.39"></div> 1864 1859 <div id="rfc.iref.s.22"></div> 1865 1860 <h3 id="rfc.section.4.6.6"><a href="#rfc.section.4.6.6">4.6.6</a> <a id="status.406" href="#status.406">406 Not Acceptable</a></h3> … … 1879 1874 <p id="rfc.section.4.6.6.p.4">If the response could be unacceptable, a user agent <em class="bcp14">SHOULD</em> temporarily stop receipt of more data and query the user for a decision on further actions. 1880 1875 </p> 1881 <div id="rfc.iref.4 3"></div>1876 <div id="rfc.iref.40"></div> 1882 1877 <div id="rfc.iref.s.23"></div> 1883 1878 <h3 id="rfc.section.4.6.7"><a href="#rfc.section.4.6.7">4.6.7</a> <a id="status.408" href="#status.408">408 Request Timeout</a></h3> 1884 1879 <p id="rfc.section.4.6.7.p.1">The client did not produce a request within the time that the server was prepared to wait. The client <em class="bcp14">MAY</em> repeat the request without modifications at any later time. 1885 1880 </p> 1886 <div id="rfc.iref.4 4"></div>1881 <div id="rfc.iref.41"></div> 1887 1882 <div id="rfc.iref.s.24"></div> 1888 1883 <h3 id="rfc.section.4.6.8"><a href="#rfc.section.4.6.8">4.6.8</a> <a id="status.409" href="#status.409">409 Conflict</a></h3> … … 1897 1892 contain a list of the differences between the two versions. 1898 1893 </p> 1899 <div id="rfc.iref.4 5"></div>1894 <div id="rfc.iref.42"></div> 1900 1895 <div id="rfc.iref.s.25"></div> 1901 1896 <h3 id="rfc.section.4.6.9"><a href="#rfc.section.4.6.9">4.6.9</a> <a id="status.410" href="#status.410">410 Gone</a></h3> … … 1912 1907 <p id="rfc.section.4.6.9.p.3">Caches <em class="bcp14">MAY</em> use a heuristic (see <a href="p6-cache.html#heuristic.freshness" title="Calculating Heuristic Freshness">Section 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. 1913 1908 </p> 1914 <div id="rfc.iref.4 6"></div>1909 <div id="rfc.iref.43"></div> 1915 1910 <div id="rfc.iref.s.26"></div> 1916 1911 <h3 id="rfc.section.4.6.10"><a href="#rfc.section.4.6.10">4.6.10</a> <a id="status.411" href="#status.411">411 Length Required</a></h3> … … 1918 1913 message. 1919 1914 </p> 1920 <div id="rfc.iref.4 7"></div>1915 <div id="rfc.iref.44"></div> 1921 1916 <div id="rfc.iref.s.27"></div> 1922 1917 <h3 id="rfc.section.4.6.11"><a href="#rfc.section.4.6.11">4.6.11</a> <a id="status.413" href="#status.413">413 Request Representation Too Large</a></h3> … … 1926 1921 <p id="rfc.section.4.6.11.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. 1927 1922 </p> 1928 <div id="rfc.iref.4 8"></div>1923 <div id="rfc.iref.45"></div> 1929 1924 <div id="rfc.iref.s.28"></div> 1930 1925 <h3 id="rfc.section.4.6.12"><a href="#rfc.section.4.6.12">4.6.12</a> <a id="status.414" href="#status.414">414 URI Too Long</a></h3> … … 1935 1930 in some servers using fixed-length buffers for reading or manipulating the request-target. 1936 1931 </p> 1937 <div id="rfc.iref.4 9"></div>1932 <div id="rfc.iref.46"></div> 1938 1933 <div id="rfc.iref.s.29"></div> 1939 1934 <h3 id="rfc.section.4.6.13"><a href="#rfc.section.4.6.13">4.6.13</a> <a id="status.415" href="#status.415">415 Unsupported Media Type</a></h3> … … 1941 1936 on the target resource. 1942 1937 </p> 1943 <div id="rfc.iref. 50"></div>1938 <div id="rfc.iref.47"></div> 1944 1939 <div id="rfc.iref.s.30"></div> 1945 1940 <h3 id="rfc.section.4.6.14"><a href="#rfc.section.4.6.14">4.6.14</a> <a id="status.417" href="#status.417">417 Expectation Failed</a></h3> … … 1947 1942 not be met by the next-hop server. 1948 1943 </p> 1949 <div id="rfc.iref. 51"></div>1944 <div id="rfc.iref.48"></div> 1950 1945 <div id="rfc.iref.s.31"></div> 1951 1946 <h3 id="rfc.section.4.6.15"><a href="#rfc.section.4.6.15">4.6.15</a> <a id="status.426" href="#status.426">426 Upgrade Required</a></h3> 1952 1947 <p id="rfc.section.4.6.15.p.1">The request can not be completed without a prior protocol upgrade. This response <em class="bcp14">MUST</em> include an Upgrade header field (<a href="p1-messaging.html#header.upgrade" title="Upgrade">Section 6.5</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>) specifying the required protocols. 1953 1948 </p> 1954 <div id="rfc.figure.u. 8"></div>1949 <div id="rfc.figure.u.7"></div> 1955 1950 <p>Example:</p> <pre class="text">HTTP/1.1 426 Upgrade Required 1956 1951 Upgrade: HTTP/3.0 … … 1968 1963 User agents <em class="bcp14">SHOULD</em> display any included representation to the user. These response codes are applicable to any request method. 1969 1964 </p> 1970 <div id="rfc.iref. 52"></div>1965 <div id="rfc.iref.49"></div> 1971 1966 <div id="rfc.iref.s.32"></div> 1972 1967 <h3 id="rfc.section.4.7.1"><a href="#rfc.section.4.7.1">4.7.1</a> <a id="status.500" href="#status.500">500 Internal Server Error</a></h3> 1973 1968 <p id="rfc.section.4.7.1.p.1">The server encountered an unexpected condition which prevented it from fulfilling the request.</p> 1974 <div id="rfc.iref.5 3"></div>1969 <div id="rfc.iref.50"></div> 1975 1970 <div id="rfc.iref.s.33"></div> 1976 1971 <h3 id="rfc.section.4.7.2"><a href="#rfc.section.4.7.2">4.7.2</a> <a id="status.501" href="#status.501">501 Not Implemented</a></h3> … … 1978 1973 does not recognize the request method and is not capable of supporting it for any resource. 1979 1974 </p> 1980 <div id="rfc.iref.5 4"></div>1975 <div id="rfc.iref.51"></div> 1981 1976 <div id="rfc.iref.s.34"></div> 1982 1977 <h3 id="rfc.section.4.7.3"><a href="#rfc.section.4.7.3">4.7.3</a> <a id="status.502" href="#status.502">502 Bad Gateway</a></h3> … … 1984 1979 to fulfill the request. 1985 1980 </p> 1986 <div id="rfc.iref.5 5"></div>1981 <div id="rfc.iref.52"></div> 1987 1982 <div id="rfc.iref.s.35"></div> 1988 1983 <h3 id="rfc.section.4.7.4"><a href="#rfc.section.4.7.4">4.7.4</a> <a id="status.503" href="#status.503">503 Service Unavailable</a></h3> … … 1996 1991 </p> 1997 1992 </div> 1998 <div id="rfc.iref.5 6"></div>1993 <div id="rfc.iref.53"></div> 1999 1994 <div id="rfc.iref.s.36"></div> 2000 1995 <h3 id="rfc.section.4.7.5"><a href="#rfc.section.4.7.5">4.7.5</a> <a id="status.504" href="#status.504">504 Gateway Timeout</a></h3> … … 2006 2001 </p> 2007 2002 </div> 2008 <div id="rfc.iref.5 7"></div>2003 <div id="rfc.iref.54"></div> 2009 2004 <div id="rfc.iref.s.37"></div> 2010 2005 <h3 id="rfc.section.4.7.6"><a href="#rfc.section.4.7.6">4.7.6</a> <a id="status.505" href="#status.505">505 HTTP Version Not Supported</a></h3> … … 2051 2046 a fixed-length subset of that defined by <a href="#RFC1123" id="rfc.xref.RFC1123.1"><cite title="Requirements for Internet Hosts - Application and Support">[RFC1123]</cite></a>: 2052 2047 </p> 2053 <div id="rfc.figure.u. 9"></div><pre class="text">Sun, 06 Nov 1994 08:49:37 GMT ; RFC 11232048 <div id="rfc.figure.u.8"></div><pre class="text">Sun, 06 Nov 1994 08:49:37 GMT ; RFC 1123 2054 2049 </pre><p id="rfc.section.6.1.p.3">The other formats are described here only for compatibility with obsolete implementations.</p> 2055 <div id="rfc.figure.u. 10"></div><pre class="text">Sunday, 06-Nov-94 08:49:37 GMT ; obsolete RFC 850 format2050 <div id="rfc.figure.u.9"></div><pre class="text">Sunday, 06-Nov-94 08:49:37 GMT ; obsolete RFC 850 format 2056 2051 Sun Nov 6 08:49:37 1994 ; ANSI C's asctime() format 2057 2052 </pre><p id="rfc.section.6.1.p.5">HTTP/1.1 clients and servers that parse a date value <em class="bcp14">MUST</em> accept all three formats (for compatibility with HTTP/1.0), though they <em class="bcp14">MUST</em> only generate the RFC 1123 format for representing HTTP-date values in header fields. … … 2061 2056 time zone, and <em class="bcp14">MUST</em> be assumed when reading the asctime format. HTTP-date is case sensitive and <em class="bcp14">MUST NOT</em> include additional whitespace beyond that specifically included as SP in the grammar. 2062 2057 </p> 2063 <div id="rfc.figure.u.1 1"></div><pre class="inline"><span id="rfc.iref.g.6"></span> <a href="#http.date" class="smpl">HTTP-date</a> = <a href="#preferred.date.format" class="smpl">rfc1123-date</a> / <a href="#obsolete.date.formats" class="smpl">obs-date</a>2058 <div id="rfc.figure.u.10"></div><pre class="inline"><span id="rfc.iref.g.3"></span> <a href="#http.date" class="smpl">HTTP-date</a> = <a href="#preferred.date.format" class="smpl">rfc1123-date</a> / <a href="#obsolete.date.formats" class="smpl">obs-date</a> 2064 2059 </pre><div id="preferred.date.format"> 2065 2060 <p id="rfc.section.6.1.p.8"> Preferred format:</p> 2066 2061 </div> 2067 <div id="rfc.figure.u.1 2"></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><span id="rfc.iref.g.11"></span><span id="rfc.iref.g.12"></span><span id="rfc.iref.g.13"></span><span id="rfc.iref.g.14"></span><span id="rfc.iref.g.15"></span><span id="rfc.iref.g.16"></span><span id="rfc.iref.g.17"></span><span id="rfc.iref.g.18"></span> <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#notation" class="smpl">SP</a> date1 <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a>2062 <div id="rfc.figure.u.11"></div><pre class="inline"><span id="rfc.iref.g.4"></span><span id="rfc.iref.g.5"></span><span id="rfc.iref.g.6"></span><span id="rfc.iref.g.7"></span><span id="rfc.iref.g.8"></span><span id="rfc.iref.g.9"></span><span id="rfc.iref.g.10"></span><span id="rfc.iref.g.11"></span><span id="rfc.iref.g.12"></span><span id="rfc.iref.g.13"></span><span id="rfc.iref.g.14"></span><span id="rfc.iref.g.15"></span> <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> "," <a href="#notation" class="smpl">SP</a> date1 <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a> 2068 2063 ; fixed length subset of the format defined in 2069 2064 ; <a href="http://tools.ietf.org/html/rfc1123#section-5.2.14">Section 5.2.14</a> of <a href="#RFC1123" id="rfc.xref.RFC1123.2"><cite title="Requirements for Internet Hosts - Application and Support">[RFC1123]</cite></a> … … 2108 2103 <p id="rfc.section.6.1.p.11"> Obsolete formats:</p> 2109 2104 </div> 2110 <div id="rfc.figure.u.1 3"></div><pre class="inline"><span id="rfc.iref.g.19"></span> <a href="#obsolete.date.formats" class="smpl">obs-date</a> = <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> / <a href="#obsolete.date.formats" class="smpl">asctime-date</a>2111 </pre><div id="rfc.figure.u.1 4"></div><pre class="inline"><span id="rfc.iref.g.20"></span> <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> = <a href="#obsolete.date.formats" class="smpl">day-name-l</a> "," <a href="#notation" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date2</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a>2105 <div id="rfc.figure.u.12"></div><pre class="inline"><span id="rfc.iref.g.16"></span> <a href="#obsolete.date.formats" class="smpl">obs-date</a> = <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> / <a href="#obsolete.date.formats" class="smpl">asctime-date</a> 2106 </pre><div id="rfc.figure.u.13"></div><pre class="inline"><span id="rfc.iref.g.17"></span> <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> = <a href="#obsolete.date.formats" class="smpl">day-name-l</a> "," <a href="#notation" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date2</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">GMT</a> 2112 2107 <a href="#obsolete.date.formats" class="smpl">date2</a> = <a href="#preferred.date.format" class="smpl">day</a> "-" <a href="#preferred.date.format" class="smpl">month</a> "-" 2<a href="#notation" class="smpl">DIGIT</a> 2113 2108 ; day-month-year (e.g., 02-Jun-82) … … 2120 2115 / %x53.61.74.75.72.64.61.79 ; "Saturday", case-sensitive 2121 2116 / %x53.75.6E.64.61.79 ; "Sunday", case-sensitive 2122 </pre><div id="rfc.figure.u.1 5"></div><pre class="inline"><span id="rfc.iref.g.21"></span> <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> <a href="#notation" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date3</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a>2117 </pre><div id="rfc.figure.u.14"></div><pre class="inline"><span id="rfc.iref.g.18"></span> <a href="#obsolete.date.formats" class="smpl">asctime-date</a> = <a href="#preferred.date.format" class="smpl">day-name</a> <a href="#notation" class="smpl">SP</a> <a href="#obsolete.date.formats" class="smpl">date3</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">time-of-day</a> <a href="#notation" class="smpl">SP</a> <a href="#preferred.date.format" class="smpl">year</a> 2123 2118 <a href="#obsolete.date.formats" class="smpl">date3</a> = <a href="#preferred.date.format" class="smpl">month</a> <a href="#notation" class="smpl">SP</a> ( 2<a href="#notation" class="smpl">DIGIT</a> / ( <a href="#notation" class="smpl">SP</a> 1<a href="#notation" class="smpl">DIGIT</a> )) 2124 2119 ; month day (e.g., Jun 2) … … 2138 2133 By convention, the products are listed in order of their significance for identifying the application. 2139 2134 </p> 2140 <div id="rfc.figure.u.1 6"></div><pre class="inline"><span id="rfc.iref.g.22"></span><span id="rfc.iref.g.23"></span> <a href="#product.tokens" class="smpl">product</a> = <a href="#core.rules" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>]2135 <div id="rfc.figure.u.15"></div><pre class="inline"><span id="rfc.iref.g.19"></span><span id="rfc.iref.g.20"></span> <a href="#product.tokens" class="smpl">product</a> = <a href="#core.rules" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>] 2141 2136 <a href="#product.tokens" class="smpl">product-version</a> = <a href="#core.rules" class="smpl">token</a> 2142 2137 </pre><p id="rfc.section.6.2.p.3">Examples:</p> 2143 <div id="rfc.figure.u.1 7"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b32138 <div id="rfc.figure.u.16"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b3 2144 2139 Server: Apache/0.8.4 2145 2140 </pre><p id="rfc.section.6.2.p.5">Product tokens <em class="bcp14">SHOULD</em> be short and to the point. They <em class="bcp14">MUST NOT</em> be used for advertising or other non-essential information. Although any token octet <em class="bcp14">MAY</em> appear in a product-version, this token <em class="bcp14">SHOULD</em> only be used for a version identifier (i.e., successive versions of the same product <em class="bcp14">SHOULD</em> only differ in the product-version portion of the product value). … … 2153 2148 is strictly to inform the recipient of valid request methods associated with the resource. 2154 2149 </p> 2155 <div id="rfc.figure.u.1 8"></div><pre class="inline"><span id="rfc.iref.g.24"></span> <a href="#header.allow" class="smpl">Allow</a> = #<a href="#methods" class="smpl">method</a>2150 <div id="rfc.figure.u.17"></div><pre class="inline"><span id="rfc.iref.g.21"></span> <a href="#header.allow" class="smpl">Allow</a> = #<a href="#methods" class="smpl">method</a> 2156 2151 </pre><p id="rfc.section.7.1.p.3">Example of use:</p> 2157 <div id="rfc.figure.u.1 9"></div><pre class="text"> Allow: GET, HEAD, PUT2152 <div id="rfc.figure.u.18"></div><pre class="text"> Allow: GET, HEAD, PUT 2158 2153 </pre><p id="rfc.section.7.1.p.5">The actual set of allowed methods is defined by the origin server at the time of each request.</p> 2159 2154 <p id="rfc.section.7.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 … … 2166 2161 Origination Date Field (orig-date) defined in <a href="http://tools.ietf.org/html/rfc5322#section-3.6.1">Section 3.6.1</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.2"><cite title="Internet Message Format">[RFC5322]</cite></a>. The field value is an HTTP-date, as defined in <a href="#http.date" title="Date/Time Formats">Section 6.1</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format. 2167 2162 </p> 2168 <div id="rfc.figure.u. 20"></div><pre class="inline"><span id="rfc.iref.g.25"></span> <a href="#header.date" class="smpl">Date</a> = <a href="#http.date" class="smpl">HTTP-date</a>2163 <div id="rfc.figure.u.19"></div><pre class="inline"><span id="rfc.iref.g.22"></span> <a href="#header.date" class="smpl">Date</a> = <a href="#http.date" class="smpl">HTTP-date</a> 2169 2164 </pre><p id="rfc.section.7.2.p.3">An example is</p> 2170 <div id="rfc.figure.u.2 1"></div><pre class="text"> Date: Tue, 15 Nov 1994 08:12:31 GMT2165 <div id="rfc.figure.u.20"></div><pre class="text"> Date: Tue, 15 Nov 1994 08:12:31 GMT 2171 2166 </pre><p id="rfc.section.7.2.p.5">Origin servers <em class="bcp14">MUST</em> include a Date header field in all responses, except in these cases: 2172 2167 </p> … … 2194 2189 <h2 id="rfc.section.7.3"><a href="#rfc.section.7.3">7.3</a> <a id="header.expect" href="#header.expect">Expect</a></h2> 2195 2190 <p id="rfc.section.7.3.p.1">The "Expect" header field is used to indicate that particular server behaviors are required by the client.</p> 2196 <div id="rfc.figure.u.2 2"></div><pre class="inline"><span id="rfc.iref.g.26"></span><span id="rfc.iref.g.27"></span><span id="rfc.iref.g.28"></span><span id="rfc.iref.g.29"></span><span id="rfc.iref.g.30"></span> <a href="#header.expect" class="smpl">Expect</a> = 1#<a href="#header.expect" class="smpl">expectation</a>2191 <div id="rfc.figure.u.21"></div><pre class="inline"><span id="rfc.iref.g.23"></span><span id="rfc.iref.g.24"></span><span id="rfc.iref.g.25"></span><span id="rfc.iref.g.26"></span><span id="rfc.iref.g.27"></span> <a href="#header.expect" class="smpl">Expect</a> = 1#<a href="#header.expect" class="smpl">expectation</a> 2197 2192 2198 2193 <a href="#header.expect" class="smpl">expectation</a> = <a href="#header.expect" class="smpl">expect-name</a> [ <a href="#core.rules" class="smpl">BWS</a> "=" <a href="#core.rules" class="smpl">BWS</a> <a href="#header.expect" class="smpl">expect-value</a> ] … … 2206 2201 </p> 2207 2202 <p id="rfc.section.7.3.p.4">The only expectation defined by this specification is:</p> 2208 <p id="rfc.section.7.3.p.5"><span id="rfc.iref.8 9"></span><span id="rfc.iref.e.2"></span> 100-continue2203 <p id="rfc.section.7.3.p.5"><span id="rfc.iref.86"></span><span id="rfc.iref.e.2"></span> 100-continue 2209 2204 </p> 2210 2205 <ul class="empty"> … … 2222 2217 <p id="rfc.section.7.4.p.1">The "From" header field, if given, <em class="bcp14">SHOULD</em> contain an Internet e-mail address for the human user who controls the requesting user agent. The address <em class="bcp14">SHOULD</em> be machine-usable, as defined by "mailbox" in <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.3"><cite title="Internet Message Format">[RFC5322]</cite></a>: 2223 2218 </p> 2224 <div id="rfc.figure.u.2 3"></div><pre class="inline"><span id="rfc.iref.g.31"></span> <a href="#header.from" class="smpl">From</a> = <a href="#header.from" class="smpl">mailbox</a>2219 <div id="rfc.figure.u.22"></div><pre class="inline"><span id="rfc.iref.g.28"></span> <a href="#header.from" class="smpl">From</a> = <a href="#header.from" class="smpl">mailbox</a> 2225 2220 2226 2221 <a href="#header.from" class="smpl">mailbox</a> = <mailbox, defined in <a href="#RFC5322" id="rfc.xref.RFC5322.4"><cite title="Internet Message Format">[RFC5322]</cite></a>, <a href="http://tools.ietf.org/html/rfc5322#section-3.4">Section 3.4</a>> 2227 2222 </pre><p id="rfc.section.7.4.p.3">An example is:</p> 2228 <div id="rfc.figure.u.2 4"></div><pre class="text"> From: webmaster@example.org2223 <div id="rfc.figure.u.23"></div><pre class="text"> From: webmaster@example.org 2229 2224 </pre><p id="rfc.section.7.4.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 2230 2225 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 … … 2243 2238 <p id="rfc.section.7.5.p.1">The "Location" header field <em class="bcp14">MAY</em> be sent in responses to refer to a specific resource in accordance with the semantics of the status code. 2244 2239 </p> 2245 <div id="rfc.figure.u.2 5"></div><pre class="inline"><span id="rfc.iref.g.32"></span> <a href="#header.location" class="smpl">Location</a> = <a href="#abnf.dependencies" class="smpl">URI-reference</a>2240 <div id="rfc.figure.u.24"></div><pre class="inline"><span id="rfc.iref.g.29"></span> <a href="#header.location" class="smpl">Location</a> = <a href="#abnf.dependencies" class="smpl">URI-reference</a> 2246 2241 </pre><p id="rfc.section.7.5.p.3">For 201 (Created) responses, the Location is the URI of the new resource which was created by the request. For 3xx responses, 2247 2242 the location <em class="bcp14">SHOULD</em> indicate the server's preferred URI for automatic redirection to the resource. … … 2250 2245 then the original URI's fragment identifier is added to the final value. 2251 2246 </p> 2252 <div id="rfc.figure.u.2 6"></div>2247 <div id="rfc.figure.u.25"></div> 2253 2248 <p>For example, the original URI "http://www.example.org/~tim", combined with a field value given as:</p> <pre class="text"> Location: /pub/WWW/People.html#tim 2254 2249 </pre> <p>would result in a final value of "http://www.example.org/pub/WWW/People.html#tim"</p> 2255 <div id="rfc.figure.u.2 7"></div>2250 <div id="rfc.figure.u.26"></div> 2256 2251 <p>An original URI "http://www.example.org/index.html#larry", combined with a field value given as:</p> <pre class="text"> Location: http://www.example.net/index.html 2257 2252 </pre> <p>would result in a final value of "http://www.example.net/index.html#larry", preserving the original fragment identifier.</p> … … 2275 2270 to trace a request which appears to be failing or looping mid-chain. 2276 2271 </p> 2277 <div id="rfc.figure.u.2 8"></div><pre class="inline"><span id="rfc.iref.g.33"></span> <a href="#header.max-forwards" class="smpl">Max-Forwards</a> = 1*<a href="#notation" class="smpl">DIGIT</a>2272 <div id="rfc.figure.u.27"></div><pre class="inline"><span id="rfc.iref.g.30"></span> <a href="#header.max-forwards" class="smpl">Max-Forwards</a> = 1*<a href="#notation" class="smpl">DIGIT</a> 2278 2273 </pre><p id="rfc.section.7.6.p.3">The Max-Forwards value is a decimal integer indicating the remaining number of times this request message can be forwarded.</p> 2279 2274 <p id="rfc.section.7.6.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). … … 2295 2290 non-HTTP URIs (e.g., FTP). 2296 2291 </p> 2297 <div id="rfc.figure.u.2 9"></div><pre class="inline"><span id="rfc.iref.g.34"></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>2292 <div id="rfc.figure.u.28"></div><pre class="inline"><span id="rfc.iref.g.31"></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> 2298 2293 </pre><p id="rfc.section.7.7.p.5">Example:</p> 2299 <div id="rfc.figure.u. 30"></div><pre class="text"> Referer: http://www.example.org/hypertext/Overview.html2294 <div id="rfc.figure.u.29"></div><pre class="text"> Referer: http://www.example.org/hypertext/Overview.html 2300 2295 </pre><p id="rfc.section.7.7.p.7">If the field value is a relative URI, it <em class="bcp14">SHOULD</em> be interpreted relative to the effective request URI. The URI <em class="bcp14">MUST NOT</em> include a fragment. See <a href="#encoding.sensitive.information.in.uris" title="Encoding Sensitive Information in URIs">Section 9.2</a> for security considerations. 2301 2296 </p> … … 2308 2303 </p> 2309 2304 <p id="rfc.section.7.8.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> 2310 <div id="rfc.figure.u.3 1"></div><pre class="inline"><span id="rfc.iref.g.35"></span> <a href="#header.retry-after" class="smpl">Retry-After</a> = <a href="#http.date" class="smpl">HTTP-date</a> / <a href="#rule.delta-seconds" class="smpl">delta-seconds</a>2305 <div id="rfc.figure.u.30"></div><pre class="inline"><span id="rfc.iref.g.32"></span> <a href="#header.retry-after" class="smpl">Retry-After</a> = <a href="#http.date" class="smpl">HTTP-date</a> / <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> 2311 2306 </pre><div id="rule.delta-seconds"> 2312 2307 <p id="rfc.section.7.8.p.4"> Time spans are non-negative decimal integers, representing time in seconds.</p> 2313 2308 </div> 2314 <div id="rfc.figure.u.3 2"></div><pre class="inline"><span id="rfc.iref.g.36"></span> <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> = 1*<a href="#notation" class="smpl">DIGIT</a>2309 <div id="rfc.figure.u.31"></div><pre class="inline"><span id="rfc.iref.g.33"></span> <a href="#rule.delta-seconds" class="smpl">delta-seconds</a> = 1*<a href="#notation" class="smpl">DIGIT</a> 2315 2310 </pre><p id="rfc.section.7.8.p.6">Two examples of its use are</p> 2316 <div id="rfc.figure.u.3 3"></div><pre class="text"> Retry-After: Fri, 31 Dec 1999 23:59:59 GMT2311 <div id="rfc.figure.u.32"></div><pre class="text"> Retry-After: Fri, 31 Dec 1999 23:59:59 GMT 2317 2312 Retry-After: 120 2318 2313 </pre><p id="rfc.section.7.8.p.8">In the latter example, the delay is 2 minutes.</p> … … 2324 2319 identifying the application. 2325 2320 </p> 2326 <div id="rfc.figure.u.3 4"></div><pre class="inline"><span id="rfc.iref.g.37"></span> <a href="#header.server" class="smpl">Server</a> = <a href="#product.tokens" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#product.tokens" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) )2321 <div id="rfc.figure.u.33"></div><pre class="inline"><span id="rfc.iref.g.34"></span> <a href="#header.server" class="smpl">Server</a> = <a href="#product.tokens" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#product.tokens" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) ) 2327 2322 </pre><p id="rfc.section.7.9.p.4">Example:</p> 2328 <div id="rfc.figure.u.3 5"></div><pre class="text"> Server: CERN/3.0 libwww/2.172323 <div id="rfc.figure.u.34"></div><pre class="text"> Server: CERN/3.0 libwww/2.17 2329 2324 </pre><p id="rfc.section.7.9.p.6">If the response is being forwarded through a proxy, the proxy application <em class="bcp14">MUST NOT</em> modify the Server header field. Instead, it <em class="bcp14">MUST</em> include a Via field (as described in <a href="p1-messaging.html#header.via" title="Via">Section 6.2</a> of <a href="#Part1" id="rfc.xref.Part1.40"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). 2330 2325 </p> … … 2354 2349 doing so makes the field value more difficult to parse. 2355 2350 </p> 2356 <div id="rfc.figure.u.3 6"></div><pre class="inline"><span id="rfc.iref.g.38"></span> <a href="#header.user-agent" class="smpl">User-Agent</a> = <a href="#product.tokens" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#product.tokens" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) )2351 <div id="rfc.figure.u.35"></div><pre class="inline"><span id="rfc.iref.g.35"></span> <a href="#header.user-agent" class="smpl">User-Agent</a> = <a href="#product.tokens" class="smpl">product</a> *( <a href="#core.rules" class="smpl">RWS</a> ( <a href="#product.tokens" class="smpl">product</a> / <a href="#abnf.dependencies" class="smpl">comment</a> ) ) 2357 2352 </pre><p id="rfc.section.7.10.p.7">Example:</p> 2358 <div id="rfc.figure.u.3 7"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b32353 <div id="rfc.figure.u.36"></div><pre class="text"> User-Agent: CERN-LineMode/2.15 libwww/2.17b3 2359 2354 </pre><h1 id="rfc.section.8"><a href="#rfc.section.8">8.</a> <a id="IANA.considerations" href="#IANA.considerations">IANA Considerations</a></h1> 2360 2355 <h2 id="rfc.section.8.1"><a href="#rfc.section.8.1">8.1</a> <a id="method.registration" href="#method.registration">Method Registry</a></h2> … … 2980 2975 </p> 2981 2976 <h1 id="rfc.section.B"><a href="#rfc.section.B">B.</a> <a id="collected.abnf" href="#collected.abnf">Collected ABNF</a></h1> 2982 <div id="rfc.figure.u.3 8"></div> <pre class="inline"><a href="#header.allow" class="smpl">Allow</a> = [ ( "," / method ) *( OWS "," [ OWS method ] ) ]2977 <div id="rfc.figure.u.37"></div> <pre class="inline"><a href="#header.allow" class="smpl">Allow</a> = [ ( "," / method ) *( OWS "," [ OWS method ] ) ] 2983 2978 2984 2979 <a href="#core.rules" class="smpl">BWS</a> = <BWS, defined in [Part1], Section 3.2.1> … … 3067 3062 <a href="#core.rules" class="smpl">quoted-string</a> = <quoted-string, defined in [Part1], Section 3.2.4> 3068 3063 3069 <a href="#status.code.and.reason.phrase" class="smpl">reason-phrase</a> = *( HTAB / SP / VCHAR / obs-text )3070 3064 <a href="#preferred.date.format" class="smpl">rfc1123-date</a> = day-name "," SP date1 SP time-of-day SP GMT 3071 3065 <a href="#obsolete.date.formats" class="smpl">rfc850-date</a> = day-name-l "," SP date2 SP time-of-day SP GMT 3072 3066 3073 3067 <a href="#preferred.date.format" class="smpl">second</a> = 2DIGIT 3074 <a href="#status.code.and.reason.phrase" class="smpl">status-code</a> = 3DIGIT3075 3068 3076 3069 <a href="#preferred.date.format" class="smpl">time-of-day</a> = hour ":" minute ":" second … … 3078 3071 3079 3072 <a href="#preferred.date.format" class="smpl">year</a> = 4DIGIT 3080 </pre> <div id="rfc.figure.u.3 9"></div>3073 </pre> <div id="rfc.figure.u.38"></div> 3081 3074 <p>ABNF diagnostics:</p><pre class="inline">; Allow defined but not used 3082 3075 ; Date defined but not used … … 3089 3082 ; Server defined but not used 3090 3083 ; User-Agent defined but not used 3091 ; reason-phrase defined but not used 3092 ; status-code defined but not used 3084 ; obs-text defined but not used 3093 3085 </pre><h1 id="rfc.section.C"><a href="#rfc.section.C">C.</a> <a id="change.log" href="#change.log">Change Log (to be removed by RFC Editor before publication)</a></h1> 3094 3086 <h2 id="rfc.section.C.1"><a href="#rfc.section.C.1">C.1</a> Since RFC 2616 … … 3420 3412 <ul class="ind"> 3421 3413 <li><a id="rfc.index.1" href="#rfc.index.1"><b>1</b></a><ul> 3422 <li>100 Continue (status code) <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref. 22"><b>4.3.1</b></a>, <a href="#rfc.xref.status.100.2">8.2</a></li>3423 <li>100-continue (expect value) <a href="#rfc.iref.8 9"><b>7.3</b></a></li>3424 <li>101 Switching Protocols (status code) <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.2 3"><b>4.3.2</b></a>, <a href="#rfc.xref.status.101.2">8.2</a></li>3414 <li>100 Continue (status code) <a href="#rfc.xref.status.100.1">4.1</a>, <a href="#rfc.iref.19"><b>4.3.1</b></a>, <a href="#rfc.xref.status.100.2">8.2</a></li> 3415 <li>100-continue (expect value) <a href="#rfc.iref.86"><b>7.3</b></a></li> 3416 <li>101 Switching Protocols (status code) <a href="#rfc.xref.status.101.1">4.1</a>, <a href="#rfc.iref.20"><b>4.3.2</b></a>, <a href="#rfc.xref.status.101.2">8.2</a></li> 3425 3417 </ul> 3426 3418 </li> 3427 3419 <li><a id="rfc.index.2" href="#rfc.index.2"><b>2</b></a><ul> 3428 <li>200 OK (status code) <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.2 4"><b>4.4.1</b></a>, <a href="#rfc.xref.status.200.2">8.2</a></li>3429 <li>201 Created (status code) <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.2 5"><b>4.4.2</b></a>, <a href="#rfc.xref.status.201.2">8.2</a></li>3430 <li>202 Accepted (status code) <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.2 6"><b>4.4.3</b></a>, <a href="#rfc.xref.status.202.2">8.2</a></li>3431 <li>203 Non-Authoritative Information (status code) <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.2 7"><b>4.4.4</b></a>, <a href="#rfc.xref.status.203.2">8.2</a>, <a href="#rfc.xref.status.203.3">A</a></li>3432 <li>204 No Content (status code) <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.2 8"><b>4.4.5</b></a>, <a href="#rfc.xref.status.204.2">8.2</a></li>3433 <li>205 Reset Content (status code) <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.2 9"><b>4.4.6</b></a>, <a href="#rfc.xref.status.205.2">8.2</a></li>3420 <li>200 OK (status code) <a href="#rfc.xref.status.200.1">4.1</a>, <a href="#rfc.iref.21"><b>4.4.1</b></a>, <a href="#rfc.xref.status.200.2">8.2</a></li> 3421 <li>201 Created (status code) <a href="#rfc.xref.status.201.1">4.1</a>, <a href="#rfc.iref.22"><b>4.4.2</b></a>, <a href="#rfc.xref.status.201.2">8.2</a></li> 3422 <li>202 Accepted (status code) <a href="#rfc.xref.status.202.1">4.1</a>, <a href="#rfc.iref.23"><b>4.4.3</b></a>, <a href="#rfc.xref.status.202.2">8.2</a></li> 3423 <li>203 Non-Authoritative Information (status code) <a href="#rfc.xref.status.203.1">4.1</a>, <a href="#rfc.iref.24"><b>4.4.4</b></a>, <a href="#rfc.xref.status.203.2">8.2</a>, <a href="#rfc.xref.status.203.3">A</a></li> 3424 <li>204 No Content (status code) <a href="#rfc.xref.status.204.1">4.1</a>, <a href="#rfc.iref.25"><b>4.4.5</b></a>, <a href="#rfc.xref.status.204.2">8.2</a></li> 3425 <li>205 Reset Content (status code) <a href="#rfc.xref.status.205.1">4.1</a>, <a href="#rfc.iref.26"><b>4.4.6</b></a>, <a href="#rfc.xref.status.205.2">8.2</a></li> 3434 3426 </ul> 3435 3427 </li> 3436 3428 <li><a id="rfc.index.3" href="#rfc.index.3"><b>3</b></a><ul> 3437 <li>300 Multiple Choices (status code) <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref. 30"><b>4.5.1</b></a>, <a href="#rfc.xref.status.300.2">8.2</a></li>3438 <li>301 Moved Permanently (status code) <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref. 31"><b>4.5.2</b></a>, <a href="#rfc.xref.status.301.2">8.2</a>, <a href="#rfc.xref.status.301.3">A</a></li>3439 <li>302 Found (status code) <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref. 32"><b>4.5.3</b></a>, <a href="#rfc.xref.status.302.2">8.2</a>, <a href="#rfc.xref.status.302.3">A</a></li>3440 <li>303 See Other (status code) <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.iref.3 3"><b>4.5.4</b></a>, <a href="#rfc.xref.status.303.2">8.2</a></li>3441 <li>305 Use Proxy (status code) <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.3 4"><b>4.5.5</b></a>, <a href="#rfc.xref.status.305.2">8.2</a>, <a href="#rfc.xref.status.305.3">A</a></li>3442 <li>306 (Unused) (status code) <a href="#rfc.iref.3 5"><b>4.5.6</b></a>, <a href="#rfc.xref.status.306.1">8.2</a></li>3443 <li>307 Temporary Redirect (status code) <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.iref.3 6"><b>4.5.7</b></a>, <a href="#rfc.xref.status.307.2">8.2</a>, <a href="#rfc.xref.status.307.3">A</a></li>3429 <li>300 Multiple Choices (status code) <a href="#rfc.xref.status.300.1">4.1</a>, <a href="#rfc.iref.27"><b>4.5.1</b></a>, <a href="#rfc.xref.status.300.2">8.2</a></li> 3430 <li>301 Moved Permanently (status code) <a href="#rfc.xref.status.301.1">4.1</a>, <a href="#rfc.iref.28"><b>4.5.2</b></a>, <a href="#rfc.xref.status.301.2">8.2</a>, <a href="#rfc.xref.status.301.3">A</a></li> 3431 <li>302 Found (status code) <a href="#rfc.xref.status.302.1">4.1</a>, <a href="#rfc.iref.29"><b>4.5.3</b></a>, <a href="#rfc.xref.status.302.2">8.2</a>, <a href="#rfc.xref.status.302.3">A</a></li> 3432 <li>303 See Other (status code) <a href="#rfc.xref.status.303.1">4.1</a>, <a href="#rfc.iref.30"><b>4.5.4</b></a>, <a href="#rfc.xref.status.303.2">8.2</a></li> 3433 <li>305 Use Proxy (status code) <a href="#rfc.xref.status.305.1">4.1</a>, <a href="#rfc.iref.31"><b>4.5.5</b></a>, <a href="#rfc.xref.status.305.2">8.2</a>, <a href="#rfc.xref.status.305.3">A</a></li> 3434 <li>306 (Unused) (status code) <a href="#rfc.iref.32"><b>4.5.6</b></a>, <a href="#rfc.xref.status.306.1">8.2</a></li> 3435 <li>307 Temporary Redirect (status code) <a href="#rfc.xref.status.307.1">4.1</a>, <a href="#rfc.iref.33"><b>4.5.7</b></a>, <a href="#rfc.xref.status.307.2">8.2</a>, <a href="#rfc.xref.status.307.3">A</a></li> 3444 3436 </ul> 3445 3437 </li> 3446 3438 <li><a id="rfc.index.4" href="#rfc.index.4"><b>4</b></a><ul> 3447 <li>400 Bad Request (status code) <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.3 7"><b>4.6.1</b></a>, <a href="#rfc.xref.status.400.2">8.2</a></li>3448 <li>402 Payment Required (status code) <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.3 8"><b>4.6.2</b></a>, <a href="#rfc.xref.status.402.2">8.2</a></li>3449 <li>403 Forbidden (status code) <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.3 9"><b>4.6.3</b></a>, <a href="#rfc.xref.status.403.2">8.2</a></li>3450 <li>404 Not Found (status code) <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref. 40"><b>4.6.4</b></a>, <a href="#rfc.xref.status.404.2">8.2</a></li>3451 <li>405 Method Not Allowed (status code) <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref. 41"><b>4.6.5</b></a>, <a href="#rfc.xref.status.405.2">8.2</a></li>3452 <li>406 Not Acceptable (status code) <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref. 42"><b>4.6.6</b></a>, <a href="#rfc.xref.status.406.2">8.2</a></li>3453 <li>408 Request Timeout (status code) <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.4 3"><b>4.6.7</b></a>, <a href="#rfc.xref.status.408.2">8.2</a></li>3454 <li>409 Conflict (status code) <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.4 4"><b>4.6.8</b></a>, <a href="#rfc.xref.status.409.2">8.2</a></li>3455 <li>410 Gone (status code) <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.4 5"><b>4.6.9</b></a>, <a href="#rfc.xref.status.410.2">8.2</a></li>3456 <li>411 Length Required (status code) <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.4 6"><b>4.6.10</b></a>, <a href="#rfc.xref.status.411.2">8.2</a></li>3457 <li>413 Request Representation Too Large (status code) <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.4 7"><b>4.6.11</b></a>, <a href="#rfc.xref.status.413.2">8.2</a></li>3458 <li>414 URI Too Long (status code) <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.4 8"><b>4.6.12</b></a>, <a href="#rfc.xref.status.414.2">8.2</a></li>3459 <li>415 Unsupported Media Type (status code) <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.4 9"><b>4.6.13</b></a>, <a href="#rfc.xref.status.415.2">8.2</a></li>3460 <li>417 Expectation Failed (status code) <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref. 50"><b>4.6.14</b></a>, <a href="#rfc.xref.status.417.2">8.2</a></li>3461 <li>426 Upgrade Required (status code) <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref. 51"><b>4.6.15</b></a>, <a href="#rfc.xref.status.426.2">8.2</a>, <a href="#rfc.xref.status.426.3">A</a></li>3439 <li>400 Bad Request (status code) <a href="#rfc.xref.status.400.1">4.1</a>, <a href="#rfc.iref.34"><b>4.6.1</b></a>, <a href="#rfc.xref.status.400.2">8.2</a></li> 3440 <li>402 Payment Required (status code) <a href="#rfc.xref.status.402.1">4.1</a>, <a href="#rfc.iref.35"><b>4.6.2</b></a>, <a href="#rfc.xref.status.402.2">8.2</a></li> 3441 <li>403 Forbidden (status code) <a href="#rfc.xref.status.403.1">4.1</a>, <a href="#rfc.iref.36"><b>4.6.3</b></a>, <a href="#rfc.xref.status.403.2">8.2</a></li> 3442 <li>404 Not Found (status code) <a href="#rfc.xref.status.404.1">4.1</a>, <a href="#rfc.iref.37"><b>4.6.4</b></a>, <a href="#rfc.xref.status.404.2">8.2</a></li> 3443 <li>405 Method Not Allowed (status code) <a href="#rfc.xref.status.405.1">4.1</a>, <a href="#rfc.iref.38"><b>4.6.5</b></a>, <a href="#rfc.xref.status.405.2">8.2</a></li> 3444 <li>406 Not Acceptable (status code) <a href="#rfc.xref.status.406.1">4.1</a>, <a href="#rfc.iref.39"><b>4.6.6</b></a>, <a href="#rfc.xref.status.406.2">8.2</a></li> 3445 <li>408 Request Timeout (status code) <a href="#rfc.xref.status.408.1">4.1</a>, <a href="#rfc.iref.40"><b>4.6.7</b></a>, <a href="#rfc.xref.status.408.2">8.2</a></li> 3446 <li>409 Conflict (status code) <a href="#rfc.xref.status.409.1">4.1</a>, <a href="#rfc.iref.41"><b>4.6.8</b></a>, <a href="#rfc.xref.status.409.2">8.2</a></li> 3447 <li>410 Gone (status code) <a href="#rfc.xref.status.410.1">4.1</a>, <a href="#rfc.iref.42"><b>4.6.9</b></a>, <a href="#rfc.xref.status.410.2">8.2</a></li> 3448 <li>411 Length Required (status code) <a href="#rfc.xref.status.411.1">4.1</a>, <a href="#rfc.iref.43"><b>4.6.10</b></a>, <a href="#rfc.xref.status.411.2">8.2</a></li> 3449 <li>413 Request Representation Too Large (status code) <a href="#rfc.xref.status.413.1">4.1</a>, <a href="#rfc.iref.44"><b>4.6.11</b></a>, <a href="#rfc.xref.status.413.2">8.2</a></li> 3450 <li>414 URI Too Long (status code) <a href="#rfc.xref.status.414.1">4.1</a>, <a href="#rfc.iref.45"><b>4.6.12</b></a>, <a href="#rfc.xref.status.414.2">8.2</a></li> 3451 <li>415 Unsupported Media Type (status code) <a href="#rfc.xref.status.415.1">4.1</a>, <a href="#rfc.iref.46"><b>4.6.13</b></a>, <a href="#rfc.xref.status.415.2">8.2</a></li> 3452 <li>417 Expectation Failed (status code) <a href="#rfc.xref.status.417.1">4.1</a>, <a href="#rfc.iref.47"><b>4.6.14</b></a>, <a href="#rfc.xref.status.417.2">8.2</a></li> 3453 <li>426 Upgrade Required (status code) <a href="#rfc.xref.status.426.1">4.1</a>, <a href="#rfc.iref.48"><b>4.6.15</b></a>, <a href="#rfc.xref.status.426.2">8.2</a>, <a href="#rfc.xref.status.426.3">A</a></li> 3462 3454 </ul> 3463 3455 </li> 3464 3456 <li><a id="rfc.index.5" href="#rfc.index.5"><b>5</b></a><ul> 3465 <li>500 Internal Server Error (status code) <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref. 52"><b>4.7.1</b></a>, <a href="#rfc.xref.status.500.2">8.2</a></li>3466 <li>501 Not Implemented (status code) <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.5 3"><b>4.7.2</b></a>, <a href="#rfc.xref.status.501.2">8.2</a></li>3467 <li>502 Bad Gateway (status code) <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.5 4"><b>4.7.3</b></a>, <a href="#rfc.xref.status.502.2">8.2</a></li>3468 <li>503 Service Unavailable (status code) <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.5 5"><b>4.7.4</b></a>, <a href="#rfc.xref.status.503.2">8.2</a></li>3469 <li>504 Gateway Timeout (status code) <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.5 6"><b>4.7.5</b></a>, <a href="#rfc.xref.status.504.2">8.2</a></li>3470 <li>505 HTTP Version Not Supported (status code) <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.5 7"><b>4.7.6</b></a>, <a href="#rfc.xref.status.505.2">8.2</a></li>3457 <li>500 Internal Server Error (status code) <a href="#rfc.xref.status.500.1">4.1</a>, <a href="#rfc.iref.49"><b>4.7.1</b></a>, <a href="#rfc.xref.status.500.2">8.2</a></li> 3458 <li>501 Not Implemented (status code) <a href="#rfc.xref.status.501.1">4.1</a>, <a href="#rfc.iref.50"><b>4.7.2</b></a>, <a href="#rfc.xref.status.501.2">8.2</a></li> 3459 <li>502 Bad Gateway (status code) <a href="#rfc.xref.status.502.1">4.1</a>, <a href="#rfc.iref.51"><b>4.7.3</b></a>, <a href="#rfc.xref.status.502.2">8.2</a></li> 3460 <li>503 Service Unavailable (status code) <a href="#rfc.xref.status.503.1">4.1</a>, <a href="#rfc.iref.52"><b>4.7.4</b></a>, <a href="#rfc.xref.status.503.2">8.2</a></li> 3461 <li>504 Gateway Timeout (status code) <a href="#rfc.xref.status.504.1">4.1</a>, <a href="#rfc.iref.53"><b>4.7.5</b></a>, <a href="#rfc.xref.status.504.2">8.2</a></li> 3462 <li>505 HTTP Version Not Supported (status code) <a href="#rfc.xref.status.505.1">4.1</a>, <a href="#rfc.iref.54"><b>4.7.6</b></a>, <a href="#rfc.xref.status.505.2">8.2</a></li> 3471 3463 </ul> 3472 3464 </li> … … 3502 3494 <li><tt>Grammar</tt> 3503 3495 <ul> 3504 <li><tt>Allow</tt> <a href="#rfc.iref.g.24"><b>7.1</b></a></li> 3505 <li><tt>asctime-date</tt> <a href="#rfc.iref.g.21"><b>6.1</b></a></li> 3506 <li><tt>Date</tt> <a href="#rfc.iref.g.25"><b>7.2</b></a></li> 3507 <li><tt>date1</tt> <a href="#rfc.iref.g.8"><b>6.1</b></a></li> 3508 <li><tt>day</tt> <a href="#rfc.iref.g.15"><b>6.1</b></a></li> 3509 <li><tt>day-name</tt> <a href="#rfc.iref.g.13"><b>6.1</b></a></li> 3510 <li><tt>day-name-l</tt> <a href="#rfc.iref.g.14"><b>6.1</b></a></li> 3511 <li><tt>delta-seconds</tt> <a href="#rfc.iref.g.36"><b>7.8</b></a></li> 3512 <li><tt>Expect</tt> <a href="#rfc.iref.g.26"><b>7.3</b></a></li> 3513 <li><tt>expect-name</tt> <a href="#rfc.iref.g.30"><b>7.3</b></a></li> 3514 <li><tt>expect-param</tt> <a href="#rfc.iref.g.28"><b>7.3</b></a></li> 3515 <li><tt>expect-value</tt> <a href="#rfc.iref.g.29"><b>7.3</b></a></li> 3516 <li><tt>expectation</tt> <a href="#rfc.iref.g.27"><b>7.3</b></a></li> 3517 <li><tt>extension-code</tt> <a href="#rfc.iref.g.4"><b>4</b></a></li> 3518 <li><tt>From</tt> <a href="#rfc.iref.g.31"><b>7.4</b></a></li> 3519 <li><tt>GMT</tt> <a href="#rfc.iref.g.18"><b>6.1</b></a></li> 3520 <li><tt>hour</tt> <a href="#rfc.iref.g.10"><b>6.1</b></a></li> 3521 <li><tt>HTTP-date</tt> <a href="#rfc.iref.g.6"><b>6.1</b></a></li> 3522 <li><tt>Location</tt> <a href="#rfc.iref.g.32"><b>7.5</b></a></li> 3523 <li><tt>Max-Forwards</tt> <a href="#rfc.iref.g.33"><b>7.6</b></a></li> 3496 <li><tt>Allow</tt> <a href="#rfc.iref.g.21"><b>7.1</b></a></li> 3497 <li><tt>asctime-date</tt> <a href="#rfc.iref.g.18"><b>6.1</b></a></li> 3498 <li><tt>Date</tt> <a href="#rfc.iref.g.22"><b>7.2</b></a></li> 3499 <li><tt>date1</tt> <a href="#rfc.iref.g.5"><b>6.1</b></a></li> 3500 <li><tt>day</tt> <a href="#rfc.iref.g.12"><b>6.1</b></a></li> 3501 <li><tt>day-name</tt> <a href="#rfc.iref.g.10"><b>6.1</b></a></li> 3502 <li><tt>day-name-l</tt> <a href="#rfc.iref.g.11"><b>6.1</b></a></li> 3503 <li><tt>delta-seconds</tt> <a href="#rfc.iref.g.33"><b>7.8</b></a></li> 3504 <li><tt>Expect</tt> <a href="#rfc.iref.g.23"><b>7.3</b></a></li> 3505 <li><tt>expect-name</tt> <a href="#rfc.iref.g.27"><b>7.3</b></a></li> 3506 <li><tt>expect-param</tt> <a href="#rfc.iref.g.25"><b>7.3</b></a></li> 3507 <li><tt>expect-value</tt> <a href="#rfc.iref.g.26"><b>7.3</b></a></li> 3508 <li><tt>expectation</tt> <a href="#rfc.iref.g.24"><b>7.3</b></a></li> 3509 <li><tt>From</tt> <a href="#rfc.iref.g.28"><b>7.4</b></a></li> 3510 <li><tt>GMT</tt> <a href="#rfc.iref.g.15"><b>6.1</b></a></li> 3511 <li><tt>hour</tt> <a href="#rfc.iref.g.7"><b>6.1</b></a></li> 3512 <li><tt>HTTP-date</tt> <a href="#rfc.iref.g.3"><b>6.1</b></a></li> 3513 <li><tt>Location</tt> <a href="#rfc.iref.g.29"><b>7.5</b></a></li> 3514 <li><tt>Max-Forwards</tt> <a href="#rfc.iref.g.30"><b>7.6</b></a></li> 3524 3515 <li><tt>method</tt> <a href="#rfc.iref.g.1"><b>2</b></a></li> 3525 <li><tt>minute</tt> <a href="#rfc.iref.g.11"><b>6.1</b></a></li> 3526 <li><tt>month</tt> <a href="#rfc.iref.g.16"><b>6.1</b></a></li> 3527 <li><tt>obs-date</tt> <a href="#rfc.iref.g.19"><b>6.1</b></a></li> 3528 <li><tt>product</tt> <a href="#rfc.iref.g.22"><b>6.2</b></a></li> 3529 <li><tt>product-version</tt> <a href="#rfc.iref.g.23"><b>6.2</b></a></li> 3530 <li><tt>reason-phrase</tt> <a href="#rfc.iref.g.5"><b>4</b></a></li> 3531 <li><tt>Referer</tt> <a href="#rfc.iref.g.34"><b>7.7</b></a></li> 3532 <li><tt>Retry-After</tt> <a href="#rfc.iref.g.35"><b>7.8</b></a></li> 3533 <li><tt>rfc1123-date</tt> <a href="#rfc.iref.g.7"><b>6.1</b></a></li> 3534 <li><tt>rfc850-date</tt> <a href="#rfc.iref.g.20"><b>6.1</b></a></li> 3535 <li><tt>second</tt> <a href="#rfc.iref.g.12"><b>6.1</b></a></li> 3536 <li><tt>Server</tt> <a href="#rfc.iref.g.37"><b>7.9</b></a></li> 3537 <li><tt>status-code</tt> <a href="#rfc.iref.g.3"><b>4</b></a></li> 3538 <li><tt>time-of-day</tt> <a href="#rfc.iref.g.9"><b>6.1</b></a></li> 3539 <li><tt>User-Agent</tt> <a href="#rfc.iref.g.38"><b>7.10</b></a></li> 3540 <li><tt>year</tt> <a href="#rfc.iref.g.17"><b>6.1</b></a></li> 3516 <li><tt>minute</tt> <a href="#rfc.iref.g.8"><b>6.1</b></a></li> 3517 <li><tt>month</tt> <a href="#rfc.iref.g.13"><b>6.1</b></a></li> 3518 <li><tt>obs-date</tt> <a href="#rfc.iref.g.16"><b>6.1</b></a></li> 3519 <li><tt>product</tt> <a href="#rfc.iref.g.19"><b>6.2</b></a></li> 3520 <li><tt>product-version</tt> <a href="#rfc.iref.g.20"><b>6.2</b></a></li> 3521 <li><tt>Referer</tt> <a href="#rfc.iref.g.31"><b>7.7</b></a></li> 3522 <li><tt>Retry-After</tt> <a href="#rfc.iref.g.32"><b>7.8</b></a></li> 3523 <li><tt>rfc1123-date</tt> <a href="#rfc.iref.g.4"><b>6.1</b></a></li> 3524 <li><tt>rfc850-date</tt> <a href="#rfc.iref.g.17"><b>6.1</b></a></li> 3525 <li><tt>second</tt> <a href="#rfc.iref.g.9"><b>6.1</b></a></li> 3526 <li><tt>Server</tt> <a href="#rfc.iref.g.34"><b>7.9</b></a></li> 3527 <li><tt>time-of-day</tt> <a href="#rfc.iref.g.6"><b>6.1</b></a></li> 3528 <li><tt>User-Agent</tt> <a href="#rfc.iref.g.35"><b>7.10</b></a></li> 3529 <li><tt>year</tt> <a href="#rfc.iref.g.14"><b>6.1</b></a></li> 3541 3530 </ul> 3542 3531 </li> -
draft-ietf-httpbis/latest/p2-semantics.xml
r1621 r1635 1046 1046 </section> 1047 1047 1048 <section title="Status Code and Reason Phrase" anchor="status.code.and.reason.phrase"> 1049 <x:anchor-alias value="reason-phrase"/> 1050 <x:anchor-alias value="status-code"/> 1051 <x:anchor-alias value="extension-code"/> 1048 <section title="Status Codes" anchor="status.codes"> 1052 1049 <t> 1053 1050 The status-code element is a 3-digit integer result code of the attempt to 1054 1051 understand and satisfy the request. 1055 1052 </t> 1056 <t>1057 The reason-phrase is intended to give a short textual description of the1058 status-code and is intended for a human user. The client does not need1059 to examine or display the reason-phrase.1060 </t>1061 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="status-code"/><iref primary="true" item="Grammar" subitem="extension-code"/><iref primary="true" item="Grammar" subitem="reason-phrase"/>1062 <x:ref>status-code</x:ref> = 3<x:ref>DIGIT</x:ref>1063 <x:ref>reason-phrase</x:ref> = *( <x:ref>HTAB</x:ref> / <x:ref>SP</x:ref> / <x:ref>VCHAR</x:ref> / <x:ref>obs-text</x:ref> )1064 </artwork></figure>1065 1053 <t> 1066 1054 HTTP status codes are extensible. HTTP applications are not required … … 1209 1197 <t> 1210 1198 New HTTP status codes are required to fall under one of the categories 1211 defined in <xref target="status.code .and.reason.phrase"/>. To allow existing parsers to1199 defined in <xref target="status.codes"/>. To allow existing parsers to 1212 1200 properly handle them, new status codes cannot disallow a response body, 1213 1201 although they can mandate a zero-length response body. They can require the … … 3825 3813 <x:ref>quoted-string</x:ref> = <quoted-string, defined in [Part1], Section 3.2.4> 3826 3814 3827 <x:ref>reason-phrase</x:ref> = *( HTAB / SP / VCHAR / obs-text )3828 3815 <x:ref>rfc1123-date</x:ref> = day-name "," SP date1 SP time-of-day SP GMT 3829 3816 <x:ref>rfc850-date</x:ref> = day-name-l "," SP date2 SP time-of-day SP GMT 3830 3817 3831 3818 <x:ref>second</x:ref> = 2DIGIT 3832 <x:ref>status-code</x:ref> = 3DIGIT3833 3819 3834 3820 <x:ref>time-of-day</x:ref> = hour ":" minute ":" second … … 3849 3835 ; Server defined but not used 3850 3836 ; User-Agent defined but not used 3851 ; reason-phrase defined but not used 3852 ; status-code defined but not used 3837 ; obs-text defined but not used 3853 3838 </artwork></figure></section> 3854 3839 <?ENDINC p2-semantics.abnf-appendix ?> -
draft-ietf-httpbis/latest/p6-cache.html
r1625 r1635 463 463 } 464 464 @bottom-center { 465 content: "Expires September 29, 2012";465 content: "Expires September 30, 2012"; 466 466 } 467 467 @bottom-right { … … 505 505 <meta name="dct.creator" content="Reschke, J. F."> 506 506 <meta name="dct.identifier" content="urn:ietf:id:draft-ietf-httpbis-p6-cache-latest"> 507 <meta name="dct.issued" scheme="ISO8601" content="2012-03-2 8">507 <meta name="dct.issued" scheme="ISO8601" content="2012-03-29"> 508 508 <meta name="dct.replaces" content="urn:ietf:rfc:2616"> 509 509 <meta name="dct.abstract" content="The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypertext information systems. HTTP has been in use by the World Wide Web global information initiative since 1990. This document is Part 6 of the seven-part specification that defines the protocol referred to as "HTTP/1.1" and, taken together, obsoletes RFC 2616. Part 6 defines requirements on HTTP caches and the associated header fields that control cache behavior or indicate cacheable response messages."> … … 531 531 </tr> 532 532 <tr> 533 <td class="left">Expires: September 29, 2012</td>533 <td class="left">Expires: September 30, 2012</td> 534 534 <td class="right">M. Nottingham, Editor</td> 535 535 </tr> … … 548 548 <tr> 549 549 <td class="left"></td> 550 <td class="right">March 2 8, 2012</td>550 <td class="right">March 29, 2012</td> 551 551 </tr> 552 552 </tbody> … … 578 578 in progress”. 579 579 </p> 580 <p>This Internet-Draft will expire on September 29, 2012.</p>580 <p>This Internet-Draft will expire on September 30, 2012.</p> 581 581 <h1><a id="rfc.copyrightnotice" href="#rfc.copyrightnotice">Copyright Notice</a></h1> 582 582 <p>Copyright © 2012 IETF Trust and the persons identified as the document authors. All rights reserved.</p> … … 955 955 <h4 id="rfc.section.2.3.1.1"><a href="#rfc.section.2.3.1.1">2.3.1.1</a> <a id="heuristic.freshness" href="#heuristic.freshness">Calculating Heuristic Freshness</a></h4> 956 956 <p id="rfc.section.2.3.1.1.p.1">If no explicit expiration time is present in a stored response that has a status code whose definition allows heuristic freshness 957 to be used (including the following in <a href="p2-semantics.html#status.code .and.reason.phrase" title="Status Code and Reason Phrase">Section 4</a> of <a href="#Part2" id="rfc.xref.Part2.4"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>: 200, 203, 206, 300, 301 and 410), a cache <em class="bcp14">MAY</em> calculate a heuristic expiration time. A cache <em class="bcp14">MUST NOT</em> use heuristics to determine freshness for responses with status codes that do not explicitly allow it.957 to be used (including the following in <a href="p2-semantics.html#status.codes" title="Status Codes">Section 4</a> of <a href="#Part2" id="rfc.xref.Part2.4"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>: 200, 203, 206, 300, 301 and 410), a cache <em class="bcp14">MAY</em> calculate a heuristic expiration time. A cache <em class="bcp14">MUST NOT</em> use heuristics to determine freshness for responses with status codes that do not explicitly allow it. 958 958 </p> 959 959 <p id="rfc.section.2.3.1.1.p.2">When a heuristic is used to calculate freshness lifetime, a cache <em class="bcp14">SHOULD</em> attach a Warning header field with a 113 warn-code to the response if its current_age is more than 24 hours and such a warning -
draft-ietf-httpbis/latest/p6-cache.xml
r1625 r1635 38 38 <!ENTITY weak-and-strong "<xref target='Part4' x:rel='#weak.and.strong.validators' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 39 39 <!ENTITY lastmod-comparison "<xref target='Part4' x:rel='#lastmod.comparison' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 40 <!ENTITY status-codes "<xref target='Part2' x:rel='#status.code .and.reason.phrase' xmlns:x='http://purl.org/net/xml2rfc/ext'/>">40 <!ENTITY status-codes "<xref target='Part2' x:rel='#status.codes' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 41 41 <!ENTITY status.2xx "<xref target='Part2' x:rel='#status.2xx' xmlns:x='http://purl.org/net/xml2rfc/ext'/>"> 42 42 ]>
Note: See TracChangeset
for help on using the changeset viewer.