Ignore:
Timestamp:
Jun 28, 2011, 6:27:43 PM (8 years ago)
Author:
mnot@…
Message:

Cache invalidation only happens on non-error responses; addresses #235

File:
1 edited

Legend:

Unmodified
Added
Removed
  • draft-ietf-httpbis/latest/p6-cache.html

    r1303 r1314  
    362362  }
    363363  @bottom-center {
    364        content: "Expires December 3, 2011";
     364       content: "Expires December 31, 2011";
    365365  }
    366366  @bottom-right {
     
    408408      <meta name="dct.creator" content="Reschke, J. F.">
    409409      <meta name="dct.identifier" content="urn:ietf:id:draft-ietf-httpbis-p6-cache-latest">
    410       <meta name="dct.issued" scheme="ISO8601" content="2011-06-01">
     410      <meta name="dct.issued" scheme="ISO8601" content="2011-06-29">
    411411      <meta name="dct.replaces" content="urn:ietf:rfc:2616">
    412412      <meta name="dct.abstract" content="The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypermedia information systems. This document is Part 6 of the seven-part specification that defines the protocol referred to as &#34;HTTP/1.1&#34; 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.">
     
    434434            </tr>
    435435            <tr>
    436                <td class="left">Expires: December 3, 2011</td>
     436               <td class="left">Expires: December 31, 2011</td>
    437437               <td class="right">J. Mogul</td>
    438438            </tr>
     
    495495            <tr>
    496496               <td class="left"></td>
    497                <td class="right">June 1, 2011</td>
     497               <td class="right">June 29, 2011</td>
    498498            </tr>
    499499         </tbody>
     
    523523         in progress”.
    524524      </p>
    525       <p>This Internet-Draft will expire on December 3, 2011.</p>
     525      <p>This Internet-Draft will expire on December 31, 2011.</p>
    526526      <h1><a id="rfc.copyrightnotice" href="#rfc.copyrightnotice">Copyright Notice</a></h1>
    527527      <p>Copyright © 2011 IETF Trust and the persons identified as the document authors. All rights reserved.</p>
     
    968968         to keep their contents up-to-date.
    969969      </p>
    970       <p id="rfc.section.2.5.p.2">A cache <em class="bcp14">MUST</em> invalidate the effective Request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.13"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) as well as the URI(s) in the Location and Content-Location header fields (if present) when requests with unsafe methods
    971          are received.
     970      <p id="rfc.section.2.5.p.2">A cache <em class="bcp14">MUST</em> invalidate the effective Request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.13"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) as well as the URI(s) in the Location and Content-Location header fields (if present) when a non-error response to a request
     971         with an unsafe method is received.
    972972      </p>
    973973      <p id="rfc.section.2.5.p.3">However, a cache <em class="bcp14">MUST NOT</em> invalidate a URI from a Location or Content-Location header field if the host part of that URI differs from the host part
    974974         in the effective request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.14"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>). This helps prevent denial of service attacks.
    975975      </p>
    976       <p id="rfc.section.2.5.p.4">A cache <em class="bcp14">SHOULD</em> invalidate the effective request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.15"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) when passing through requests with methods whose safety is unknown.
    977       </p>
    978       <p id="rfc.section.2.5.p.5">Here, "invalidate" means that the cache will either remove all stored responses related to the effective request URI, or will
    979          mark these as "invalid" and in need of a mandatory validation before they can be returned in response to a subsequent request.
     976      <p id="rfc.section.2.5.p.4">A cache <em class="bcp14">SHOULD</em> invalidate the effective request URI (<a href="p1-messaging.html#effective.request.uri" title="Effective Request URI">Section 4.3</a> of <a href="#Part1" id="rfc.xref.Part1.15"><cite title="HTTP/1.1, part 1: URIs, Connections, and Message Parsing">[Part1]</cite></a>) when it receives a non-error response to a request with a method whose safety is unknown.
     977      </p>
     978      <p id="rfc.section.2.5.p.5">Here, a "non-error response" is one with a 2xx or 3xx status code. "Invalidate" means that the cache will either remove all
     979         stored responses related to the effective request URI, or will mark these as "invalid" and in need of a mandatory validation
     980         before they can be returned in response to a subsequent request.
    980981      </p>
    981982      <p id="rfc.section.2.5.p.6">Note that this does not guarantee that all appropriate responses are invalidated. For example, the request that caused the
     
    19711972         <li> &lt;<a href="http://tools.ietf.org/wg/httpbis/trac/ticket/289">http://tools.ietf.org/wg/httpbis/trac/ticket/289</a>&gt;: "Proxies don't 'understand' methods"
    19721973         </li>
     1974         <li> &lt;<a href="http://tools.ietf.org/wg/httpbis/trac/ticket/235">http://tools.ietf.org/wg/httpbis/trac/ticket/235</a>&gt;: "Cache Invalidation only happens upon successful responses"
     1975         </li>
    19731976      </ul>
    19741977      <h1 id="rfc.index"><a href="#rfc.index">Index</a></h1>
Note: See TracChangeset for help on using the changeset viewer.