Changeset 2409 for draft-ietf-httpbis/latest/p6-cache.html
- Timestamp:
- 24/09/13 01:14:46 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/p6-cache.html
r2408 r2409 638 638 <li><a href="#rfc.section.5.4">5.4</a> <a href="#header.pragma">Pragma</a></li> 639 639 <li><a href="#rfc.section.5.5">5.5</a> <a href="#header.warning">Warning</a><ul> 640 <li><a href="#rfc.section.5.5.1">5.5.1</a> <a href="#warn.110">Warning: 110 means"Response is Stale"</a></li>641 <li><a href="#rfc.section.5.5.2">5.5.2</a> <a href="#warn.111">Warning: 111 means"Revalidation Failed"</a></li>642 <li><a href="#rfc.section.5.5.3">5.5.3</a> <a href="#warn.112">Warning: 112 means"Disconnected Operation"</a></li>643 <li><a href="#rfc.section.5.5.4">5.5.4</a> <a href="#warn.113">Warning: 113 means"Heuristic Expiration"</a></li>644 <li><a href="#rfc.section.5.5.5">5.5.5</a> <a href="#warn.199">Warning: 199 means"Miscellaneous Warning"</a></li>645 <li><a href="#rfc.section.5.5.6">5.5.6</a> <a href="#warn.214">Warning: 214 means"Transformation Applied"</a></li>646 <li><a href="#rfc.section.5.5.7">5.5.7</a> <a href="#warn.299">Warning: 299 means"Miscellaneous Persistent Warning"</a></li>640 <li><a href="#rfc.section.5.5.1">5.5.1</a> <a href="#warn.110">Warning: 110 - "Response is Stale"</a></li> 641 <li><a href="#rfc.section.5.5.2">5.5.2</a> <a href="#warn.111">Warning: 111 - "Revalidation Failed"</a></li> 642 <li><a href="#rfc.section.5.5.3">5.5.3</a> <a href="#warn.112">Warning: 112 - "Disconnected Operation"</a></li> 643 <li><a href="#rfc.section.5.5.4">5.5.4</a> <a href="#warn.113">Warning: 113 - "Heuristic Expiration"</a></li> 644 <li><a href="#rfc.section.5.5.5">5.5.5</a> <a href="#warn.199">Warning: 199 - "Miscellaneous Warning"</a></li> 645 <li><a href="#rfc.section.5.5.6">5.5.6</a> <a href="#warn.214">Warning: 214 - "Transformation Applied"</a></li> 646 <li><a href="#rfc.section.5.5.7">5.5.7</a> <a href="#warn.299">Warning: 299 - "Miscellaneous Persistent Warning"</a></li> 647 647 </ul> 648 648 </li> … … 953 953 time. A typical setting of this fraction might be 10%. 954 954 </p> 955 <p id="rfc.section.4.2.2.p.4">When a heuristic is used to calculate freshness lifetime, a cache <em class="bcp14">SHOULD</em> generate a <a href="#header.warning" class="smpl">Warning</a> header field with a 113 warn-code (see <a href="#warn.113" id="rfc.xref.warn.113.1" title="Warning: 113 means"Heuristic Expiration"">Section 5.5.4</a>) in the response if its current_age is more than 24 hours and such a warning is not already present.955 <p id="rfc.section.4.2.2.p.4">When a heuristic is used to calculate freshness lifetime, a cache <em class="bcp14">SHOULD</em> generate a <a href="#header.warning" class="smpl">Warning</a> header field with a 113 warn-code (see <a href="#warn.113" id="rfc.xref.warn.113.1" title="Warning: 113 - "Heuristic Expiration"">Section 5.5.4</a>) in the response if its current_age is more than 24 hours and such a warning is not already present. 956 956 </p> 957 957 <div class="note" id="rfc.section.4.2.2.p.5"> … … 1028 1028 or doing so is explicitly allowed (e.g., by the max-stale request directive; see <a href="#cache-request-directive" title="Request Cache-Control Directives">Section 5.2.1</a>). 1029 1029 </p> 1030 <p id="rfc.section.4.2.4.p.4">A cache <em class="bcp14">SHOULD</em> generate a <a href="#header.warning" class="smpl">Warning</a> header field with the 110 warn-code (see <a href="#warn.110" id="rfc.xref.warn.110.1" title="Warning: 110 means "Response is Stale"">Section 5.5.1</a>) in stale responses. Likewise, a cache <em class="bcp14">SHOULD</em> generate a 112 warn-code (see <a href="#warn.112" id="rfc.xref.warn.112.1" title="Warning: 112 means"Disconnected Operation"">Section 5.5.3</a>) in stale responses if the cache is disconnected.1030 <p id="rfc.section.4.2.4.p.4">A cache <em class="bcp14">SHOULD</em> generate a <a href="#header.warning" class="smpl">Warning</a> header field with the 110 warn-code (see <a href="#warn.110" id="rfc.xref.warn.110.1" title="Warning: 110 - "Response is Stale"">Section 5.5.1</a>) in stale responses. Likewise, a cache <em class="bcp14">SHOULD</em> generate a 112 warn-code (see <a href="#warn.112" id="rfc.xref.warn.112.1" title="Warning: 112 - "Disconnected Operation"">Section 5.5.3</a>) in stale responses if the cache is disconnected. 1031 1031 </p> 1032 1032 <p id="rfc.section.4.2.4.p.5">A cache <em class="bcp14">SHOULD NOT</em> generate a new <a href="#header.warning" class="smpl">Warning</a> header field when forwarding a response that does not have an <a href="#header.age" class="smpl">Age</a> header field, even if the response is already stale. A cache need not validate a response that merely became stale in transit. … … 1460 1460 ; the name or pseudonym of the server adding 1461 1461 ; the Warning header field, for use in debugging 1462 ; a single "-" is recommended when agent unknown 1462 1463 <a href="#header.warning" class="smpl">warn-text</a> = <a href="#imported.abnf" class="smpl">quoted-string</a> 1463 1464 <a href="#header.warning" class="smpl">warn-date</a> = <a href="#imported.abnf" class="smpl">DQUOTE</a> <a href="#imported.abnf" class="smpl">HTTP-date</a> <a href="#imported.abnf" class="smpl">DQUOTE</a> … … 1479 1480 </li> 1480 1481 </ul> 1481 <p id="rfc.section.5.5.p.8">If a sender generates one or more Warning header fields in a message to be sent to a recipient known to implement only HTTP/1.0, 1482 the sender <em class="bcp14">MUST</em> include in each generated warning-value a warn-date that matches the <a href="p2-semantics.html#header.date" class="smpl">Date</a> header field in the message. 1483 </p> 1484 <p id="rfc.section.5.5.p.9">If a recipient that uses, evaluates, or displays Warning header fields receives a warn-date that is different from the <a href="p2-semantics.html#header.date" class="smpl">Date</a> value in the same message, the recipient <em class="bcp14">MUST</em> exclude the warning-value containing that warn-date before storing, forwarding, or using the message. This allows recipients 1482 <p id="rfc.section.5.5.p.8">If a sender generates one or more 1xx warn-codes in a message to be sent to a recipient known to implement only HTTP/1.0, 1483 the sender <em class="bcp14">MUST</em> include in each corresponding warning-value a warn-date that matches the <a href="p2-semantics.html#header.date" class="smpl">Date</a> header field in the message. For example: 1484 </p> 1485 <div id="rfc.figure.u.14"></div><pre class="text">HTTP/1.1 200 OK 1486 Date: Sat, 25 Aug 2012 23:34:45 GMT 1487 Warning: 112 - "network down" "Sat, 25 Aug 2012 23:34:45 GMT" 1488 1489 </pre><p id="rfc.section.5.5.p.10">If a recipient that uses, evaluates, or displays Warning header fields receives a warn-date that is different from the <a href="p2-semantics.html#header.date" class="smpl">Date</a> value in the same message, the recipient <em class="bcp14">MUST</em> exclude the warning-value containing that warn-date before storing, forwarding, or using the message. This allows recipients 1485 1490 to exclude warning-values that were improperly retained after a cache validation. If all of the warning-values are excluded, 1486 1491 the recipient <em class="bcp14">MUST</em> exclude the Warning header field as well. 1487 1492 </p> 1488 <p id="rfc.section.5.5.p.1 0">The following warn-codes are defined by this specification, each with a recommended warn-text in English, and a description1493 <p id="rfc.section.5.5.p.11">The following warn-codes are defined by this specification, each with a recommended warn-text in English, and a description 1489 1494 of its meaning. The procedure for defining additional warn codes is described in <a href="#warn.code.registry.procedure" title="Procedure">Section 7.2.1</a>. 1490 1495 </p> 1491 1496 <div id="rfc.iref.49"></div> 1492 1497 <div id="rfc.iref.r.1"></div> 1493 <h3 id="rfc.section.5.5.1"><a href="#rfc.section.5.5.1">5.5.1</a> <a id="warn.110" href="#warn.110">Warning: 110 means"Response is Stale"</a></h3>1498 <h3 id="rfc.section.5.5.1"><a href="#rfc.section.5.5.1">5.5.1</a> <a id="warn.110" href="#warn.110">Warning: 110 - "Response is Stale"</a></h3> 1494 1499 <p id="rfc.section.5.5.1.p.1">A cache <em class="bcp14">SHOULD</em> generate this whenever the sent response is stale. 1495 1500 </p> 1496 1501 <div id="rfc.iref.50"></div> 1497 1502 <div id="rfc.iref.r.2"></div> 1498 <h3 id="rfc.section.5.5.2"><a href="#rfc.section.5.5.2">5.5.2</a> <a id="warn.111" href="#warn.111">Warning: 111 means"Revalidation Failed"</a></h3>1503 <h3 id="rfc.section.5.5.2"><a href="#rfc.section.5.5.2">5.5.2</a> <a id="warn.111" href="#warn.111">Warning: 111 - "Revalidation Failed"</a></h3> 1499 1504 <p id="rfc.section.5.5.2.p.1">A cache <em class="bcp14">SHOULD</em> generate this when sending a stale response because an attempt to validate the response failed, due to an inability to reach 1500 1505 the server. … … 1502 1507 <div id="rfc.iref.51"></div> 1503 1508 <div id="rfc.iref.d.1"></div> 1504 <h3 id="rfc.section.5.5.3"><a href="#rfc.section.5.5.3">5.5.3</a> <a id="warn.112" href="#warn.112">Warning: 112 means"Disconnected Operation"</a></h3>1509 <h3 id="rfc.section.5.5.3"><a href="#rfc.section.5.5.3">5.5.3</a> <a id="warn.112" href="#warn.112">Warning: 112 - "Disconnected Operation"</a></h3> 1505 1510 <p id="rfc.section.5.5.3.p.1">A cache <em class="bcp14">SHOULD</em> generate this if it is intentionally disconnected from the rest of the network for a period of time. 1506 1511 </p> 1507 1512 <div id="rfc.iref.52"></div> 1508 1513 <div id="rfc.iref.h.2"></div> 1509 <h3 id="rfc.section.5.5.4"><a href="#rfc.section.5.5.4">5.5.4</a> <a id="warn.113" href="#warn.113">Warning: 113 means"Heuristic Expiration"</a></h3>1514 <h3 id="rfc.section.5.5.4"><a href="#rfc.section.5.5.4">5.5.4</a> <a id="warn.113" href="#warn.113">Warning: 113 - "Heuristic Expiration"</a></h3> 1510 1515 <p id="rfc.section.5.5.4.p.1">A cache <em class="bcp14">SHOULD</em> generate this if it heuristically chose a freshness lifetime greater than 24 hours and the response's age is greater than 1511 1516 24 hours. … … 1513 1518 <div id="rfc.iref.53"></div> 1514 1519 <div id="rfc.iref.m.6"></div> 1515 <h3 id="rfc.section.5.5.5"><a href="#rfc.section.5.5.5">5.5.5</a> <a id="warn.199" href="#warn.199">Warning: 199 means"Miscellaneous Warning"</a></h3>1520 <h3 id="rfc.section.5.5.5"><a href="#rfc.section.5.5.5">5.5.5</a> <a id="warn.199" href="#warn.199">Warning: 199 - "Miscellaneous Warning"</a></h3> 1516 1521 <p id="rfc.section.5.5.5.p.1">The warning text can include arbitrary information to be presented to a human user, or logged. A system receiving this warning <em class="bcp14">MUST NOT</em> take any automated action, besides presenting the warning to the user. 1517 1522 </p> 1518 1523 <div id="rfc.iref.54"></div> 1519 1524 <div id="rfc.iref.t.1"></div> 1520 <h3 id="rfc.section.5.5.6"><a href="#rfc.section.5.5.6">5.5.6</a> <a id="warn.214" href="#warn.214">Warning: 214 means"Transformation Applied"</a></h3>1525 <h3 id="rfc.section.5.5.6"><a href="#rfc.section.5.5.6">5.5.6</a> <a id="warn.214" href="#warn.214">Warning: 214 - "Transformation Applied"</a></h3> 1521 1526 <p id="rfc.section.5.5.6.p.1"><em class="bcp14">MUST</em> be added by a proxy if it applies any transformation to the representation, such as changing the content-coding, media-type, 1522 1527 or modifying the representation data, unless this Warning code already appears in the response. … … 1524 1529 <div id="rfc.iref.55"></div> 1525 1530 <div id="rfc.iref.m.7"></div> 1526 <h3 id="rfc.section.5.5.7"><a href="#rfc.section.5.5.7">5.5.7</a> <a id="warn.299" href="#warn.299">Warning: 299 means"Miscellaneous Persistent Warning"</a></h3>1531 <h3 id="rfc.section.5.5.7"><a href="#rfc.section.5.5.7">5.5.7</a> <a id="warn.299" href="#warn.299">Warning: 299 - "Miscellaneous Persistent Warning"</a></h3> 1527 1532 <p id="rfc.section.5.5.7.p.1">The warning text can include arbitrary information to be presented to a human user, or logged. A system receiving this warning <em class="bcp14">MUST NOT</em> take any automated action. 1528 1533 </p> … … 1675 1680 <td class="left">110</td> 1676 1681 <td class="left">Response is Stale</td> 1677 <td class="left"><a href="#warn.110" id="rfc.xref.warn.110.2" title="Warning: 110 means"Response is Stale"">Section 5.5.1</a>1682 <td class="left"><a href="#warn.110" id="rfc.xref.warn.110.2" title="Warning: 110 - "Response is Stale"">Section 5.5.1</a> 1678 1683 </td> 1679 1684 </tr> … … 1681 1686 <td class="left">111</td> 1682 1687 <td class="left">Revalidation Failed</td> 1683 <td class="left"><a href="#warn.111" id="rfc.xref.warn.111.1" title="Warning: 111 means"Revalidation Failed"">Section 5.5.2</a>1688 <td class="left"><a href="#warn.111" id="rfc.xref.warn.111.1" title="Warning: 111 - "Revalidation Failed"">Section 5.5.2</a> 1684 1689 </td> 1685 1690 </tr> … … 1687 1692 <td class="left">112</td> 1688 1693 <td class="left">Disconnected Operation</td> 1689 <td class="left"><a href="#warn.112" id="rfc.xref.warn.112.2" title="Warning: 112 means"Disconnected Operation"">Section 5.5.3</a>1694 <td class="left"><a href="#warn.112" id="rfc.xref.warn.112.2" title="Warning: 112 - "Disconnected Operation"">Section 5.5.3</a> 1690 1695 </td> 1691 1696 </tr> … … 1693 1698 <td class="left">113</td> 1694 1699 <td class="left">Heuristic Expiration</td> 1695 <td class="left"><a href="#warn.113" id="rfc.xref.warn.113.2" title="Warning: 113 means"Heuristic Expiration"">Section 5.5.4</a>1700 <td class="left"><a href="#warn.113" id="rfc.xref.warn.113.2" title="Warning: 113 - "Heuristic Expiration"">Section 5.5.4</a> 1696 1701 </td> 1697 1702 </tr> … … 1699 1704 <td class="left">199</td> 1700 1705 <td class="left">Miscellaneous Warning</td> 1701 <td class="left"><a href="#warn.199" id="rfc.xref.warn.199.1" title="Warning: 199 means"Miscellaneous Warning"">Section 5.5.5</a>1706 <td class="left"><a href="#warn.199" id="rfc.xref.warn.199.1" title="Warning: 199 - "Miscellaneous Warning"">Section 5.5.5</a> 1702 1707 </td> 1703 1708 </tr> … … 1705 1710 <td class="left">214</td> 1706 1711 <td class="left">Transformation Applied</td> 1707 <td class="left"><a href="#warn.214" id="rfc.xref.warn.214.1" title="Warning: 214 means"Transformation Applied"">Section 5.5.6</a>1712 <td class="left"><a href="#warn.214" id="rfc.xref.warn.214.1" title="Warning: 214 - "Transformation Applied"">Section 5.5.6</a> 1708 1713 </td> 1709 1714 </tr> … … 1711 1716 <td class="left">299</td> 1712 1717 <td class="left">Miscellaneous Persistent Warning</td> 1713 <td class="left"><a href="#warn.299" id="rfc.xref.warn.299.1" title="Warning: 299 means"Miscellaneous Persistent Warning"">Section 5.5.7</a>1718 <td class="left"><a href="#warn.299" id="rfc.xref.warn.299.1" title="Warning: 299 - "Miscellaneous Persistent Warning"">Section 5.5.7</a> 1714 1719 </td> 1715 1720 </tr> … … 1934 1939 <p id="rfc.section.B.p.2">The rules below are defined in <a href="#Part1" id="rfc.xref.Part1.13"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>: 1935 1940 </p> 1936 <div id="rfc.figure.u.1 4"></div><pre class="inline"> <a href="#imported.abnf" class="smpl">OWS</a> = <OWS, defined in <a href="#Part1" id="rfc.xref.Part1.14"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>, <a href="p1-messaging.html#whitespace" title="Whitespace">Section 3.2.3</a>>1941 <div id="rfc.figure.u.15"></div><pre class="inline"> <a href="#imported.abnf" class="smpl">OWS</a> = <OWS, defined in <a href="#Part1" id="rfc.xref.Part1.14"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>, <a href="p1-messaging.html#whitespace" title="Whitespace">Section 3.2.3</a>> 1937 1942 <a href="#imported.abnf" class="smpl">field-name</a> = <field-name, defined in <a href="#Part1" id="rfc.xref.Part1.15"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>, <a href="p1-messaging.html#header.fields" title="Header Fields">Section 3.2</a>> 1938 1943 <a href="#imported.abnf" class="smpl">quoted-string</a> = <quoted-string, defined in <a href="#Part1" id="rfc.xref.Part1.16"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>, <a href="p1-messaging.html#field.components" title="Field value components">Section 3.2.6</a>> … … 1943 1948 <a href="#imported.abnf" class="smpl">uri-host</a> = <uri-host, defined in <a href="#Part1" id="rfc.xref.Part1.20"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>, <a href="p1-messaging.html#uri" title="Uniform Resource Identifiers">Section 2.7</a>> 1944 1949 </pre><p id="rfc.section.B.p.4">The rules below are defined in other parts:</p> 1945 <div id="rfc.figure.u.1 5"></div><pre class="inline"> <a href="#imported.abnf" class="smpl">HTTP-date</a> = <HTTP-date, defined in <a href="#Part2" id="rfc.xref.Part2.9"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content">[Part2]</cite></a>, <a href="p2-semantics.html#http.date" title="Date/Time Formats">Section 7.1.1.1</a>>1950 <div id="rfc.figure.u.16"></div><pre class="inline"> <a href="#imported.abnf" class="smpl">HTTP-date</a> = <HTTP-date, defined in <a href="#Part2" id="rfc.xref.Part2.9"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content">[Part2]</cite></a>, <a href="p2-semantics.html#http.date" title="Date/Time Formats">Section 7.1.1.1</a>> 1946 1951 </pre><h1 id="rfc.section.C"><a href="#rfc.section.C">C.</a> <a id="collected.abnf" href="#collected.abnf">Collected ABNF</a></h1> 1947 1952 <p id="rfc.section.C.p.1">In the collected ABNF below, list rules are expanded as per <a href="p1-messaging.html#notation" title="Syntax Notation">Section 1.2</a> of <a href="#Part1" id="rfc.xref.Part1.21"><cite title="Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing">[Part1]</cite></a>. 1948 1953 </p> 1949 <div id="rfc.figure.u.1 6"></div><pre class="inline"><a href="#header.age" class="smpl">Age</a> = delta-seconds1954 <div id="rfc.figure.u.17"></div><pre class="inline"><a href="#header.age" class="smpl">Age</a> = delta-seconds 1950 1955 1951 1956 <a href="#header.cache-control" class="smpl">Cache-Control</a> = *( "," OWS ) cache-directive *( OWS "," [ OWS
Note: See TracChangeset
for help on using the changeset viewer.