Changeset 1291 for draft-ietf-httpbis
- Timestamp:
- 27/05/11 04:42:18 (11 years ago)
- Location:
- draft-ietf-httpbis/latest
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
draft-ietf-httpbis/latest/p6-cache.html
r1290 r1291 767 767 </li> 768 768 </ul> 769 <p id="rfc.section.2.1.p.2">In this context, a cache has "understood" a request method or a response status code if it recognises it and implements any 769 <p id="rfc.section.2.1.p.2">Note that any of the requirements listed above can be overridden by a cache-control extension; see <a href="#cache.control.extensions" title="Cache Control Extensions">Section 3.2.3</a>. 770 </p> 771 <p id="rfc.section.2.1.p.3">In this context, a cache has "understood" a request method or a response status code if it recognises it and implements any 770 772 cache-specific behaviour. In particular, 206 Partial Content responses cannot be cached by an implementation that does not 771 773 handle partial content (see <a href="#errors.or.incomplete.response.cache.behavior" title="Storing Partial and Incomplete Responses">Section 2.1.1</a>). 772 774 </p> 773 <p id="rfc.section.2.1.p. 3">Note that in normal operation, most caches will not store a response that has neither a cache validator nor an explicit expiration775 <p id="rfc.section.2.1.p.4">Note that in normal operation, most caches will not store a response that has neither a cache validator nor an explicit expiration 774 776 time, as such responses are not usually useful to store. However, caches are not prohibited from storing such responses. 775 777 </p> … … 802 804 </li> 803 805 </ul> 804 <p id="rfc.section.2.2.p.2">When a stored response is used to satisfy a request without validation, a cache <em class="bcp14">MUST</em> include a single Age header field (<a href="#header.age" id="rfc.xref.header.age.1" title="Age">Section 3.1</a>) in the response with a value equal to the stored response's current_age; see <a href="#age.calculations" title="Calculating Age">Section 2.3.2</a>. 805 </p> 806 <p id="rfc.section.2.2.p.3">A cache <em class="bcp14">MUST</em> write through requests with methods that are unsafe (<a href="p2-semantics.html#safe.methods" title="Safe Methods">Section 7.1.1</a> of <a href="#Part2" id="rfc.xref.Part2.1"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>) to the origin server; i.e., a cache must not generate a reply to such a request before having forwarded the request and 806 <p id="rfc.section.2.2.p.2">Note that any of the requirements listed above can be overridden by a cache-control extension; see <a href="#cache.control.extensions" title="Cache Control Extensions">Section 3.2.3</a>. 807 </p> 808 <p id="rfc.section.2.2.p.3">When a stored response is used to satisfy a request without validation, a cache <em class="bcp14">MUST</em> include a single Age header field (<a href="#header.age" id="rfc.xref.header.age.1" title="Age">Section 3.1</a>) in the response with a value equal to the stored response's current_age; see <a href="#age.calculations" title="Calculating Age">Section 2.3.2</a>. 809 </p> 810 <p id="rfc.section.2.2.p.4">A cache <em class="bcp14">MUST</em> write through requests with methods that are unsafe (<a href="p2-semantics.html#safe.methods" title="Safe Methods">Section 7.1.1</a> of <a href="#Part2" id="rfc.xref.Part2.1"><cite title="HTTP/1.1, part 2: Message Semantics">[Part2]</cite></a>) to the origin server; i.e., a cache must not generate a reply to such a request before having forwarded the request and 807 811 having received a corresponding response. 808 812 </p> 809 <p id="rfc.section.2.2.p. 4">Also, note that unsafe requests might invalidate already stored responses; see <a href="#invalidation.after.updates.or.deletions" title="Request Methods that Invalidate">Section 2.5</a>.810 </p> 811 <p id="rfc.section.2.2.p. 5">When more than one suitable response is stored, a cache <em class="bcp14">MUST</em> use the most recent response (as determined by the Date header field). It can also forward a request with "Cache-Control:813 <p id="rfc.section.2.2.p.5">Also, note that unsafe requests might invalidate already stored responses; see <a href="#invalidation.after.updates.or.deletions" title="Request Methods that Invalidate">Section 2.5</a>. 814 </p> 815 <p id="rfc.section.2.2.p.6">When more than one suitable response is stored, a cache <em class="bcp14">MUST</em> use the most recent response (as determined by the Date header field). It can also forward a request with "Cache-Control: 812 816 max-age=0" or "Cache-Control: no-cache" to disambiguate which response to use. 813 817 </p> 814 <p id="rfc.section.2.2.p. 6">A cache that does not have a clock available <em class="bcp14">MUST NOT</em> use stored responses without revalidating them on every use. A cache, especially a shared cache, <em class="bcp14">SHOULD</em> use a mechanism, such as NTP <a href="#RFC1305" id="rfc.xref.RFC1305.1"><cite title="Network Time Protocol (Version 3) Specification, Implementation">[RFC1305]</cite></a>, to synchronize its clock with a reliable external standard.818 <p id="rfc.section.2.2.p.7">A cache that does not have a clock available <em class="bcp14">MUST NOT</em> use stored responses without revalidating them on every use. A cache, especially a shared cache, <em class="bcp14">SHOULD</em> use a mechanism, such as NTP <a href="#RFC1305" id="rfc.xref.RFC1305.1"><cite title="Network Time Protocol (Version 3) Specification, Implementation">[RFC1305]</cite></a>, to synchronize its clock with a reliable external standard. 815 819 </p> 816 820 <h2 id="rfc.section.2.3"><a href="#rfc.section.2.3">2.3</a> <a id="expiration.model" href="#expiration.model">Freshness Model</a></h2> … … 1893 1897 <li> <<a href="http://tools.ietf.org/wg/httpbis/trac/ticket/197">http://tools.ietf.org/wg/httpbis/trac/ticket/197</a>>: "Effect of CC directives on history lists" 1894 1898 </li> 1899 <li> <<a href="http://tools.ietf.org/wg/httpbis/trac/ticket/291">http://tools.ietf.org/wg/httpbis/trac/ticket/291</a>>: "Cache Extensions can override no-store, etc." 1900 </li> 1895 1901 </ul> 1896 1902 <p id="rfc.section.C.10.p.2">Affected issues: </p> -
draft-ietf-httpbis/latest/p6-cache.xml
r1290 r1291 482 482 </t> 483 483 <t> 484 Note that any of the requirements listed above can be overridden by a 485 cache-control extension; see <xref target="cache.control.extensions" />. 486 </t> 487 <t> 484 488 In this context, a cache has "understood" a request method or a response 485 489 status code if it recognises it and implements any cache-specific … … 541 545 </t> 542 546 </list> 547 </t> 548 <t> 549 Note that any of the requirements listed above can be overridden by a 550 cache-control extension; see <xref target="cache.control.extensions" />. 543 551 </t> 544 552 <t> … … 2569 2577 "Effect of CC directives on history lists" 2570 2578 </t> 2579 <t> 2580 <eref target="http://tools.ietf.org/wg/httpbis/trac/ticket/291" />: 2581 "Cache Extensions can override no-store, etc." 2582 </t> 2571 2583 </list> 2572 2584 </t>
Note: See TracChangeset
for help on using the changeset viewer.