Ignore:
Timestamp:
08/01/13 00:27:15 (10 years ago)
Author:
mnot@…
Message:

Clarify rules for 304 updates, motivate last point; addresses #406

File:
1 edited

Legend:

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

    r2088 r2100  
    452452  }
    453453  @bottom-center {
    454        content: "Expires July 9, 2013";
     454       content: "Expires July 12, 2013";
    455455  }
    456456  @bottom-right {
     
    492492      <link href="p5-range.html" rel="prev">
    493493      <link href="p7-auth.html" rel="next">
    494       <meta name="generator" content="http://greenbytes.de/tech/webdav/rfc2629.xslt, Revision 1.589, 2012-11-30 14:23:31, XSLT vendor: SAXON 8.9 from Saxonica http://www.saxonica.com/">
     494      <meta name="generator" content="http://greenbytes.de/tech/webdav/rfc2629.xslt, Revision 1.589, 2012-11-30 14:23:31, XSLT vendor: SAXON 9.1.0.8 from Saxonica http://www.saxonica.com/">
    495495      <link rel="schema.dct" href="http://purl.org/dc/terms/">
    496496      <meta name="dct.creator" content="Fielding, R.">
     
    498498      <meta name="dct.creator" content="Reschke, J. F.">
    499499      <meta name="dct.identifier" content="urn:ietf:id:draft-ietf-httpbis-p6-cache-latest">
    500       <meta name="dct.issued" scheme="ISO8601" content="2013-01-05">
     500      <meta name="dct.issued" scheme="ISO8601" content="2013-01-08">
    501501      <meta name="dct.replaces" content="urn:ietf:rfc:2616">
    502502      <meta name="dct.abstract" content="The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypertext information systems. This document defines requirements on HTTP caches and the associated header fields that control cache behavior or indicate cacheable response messages.">
     
    524524            </tr>
    525525            <tr>
    526                <td class="left">Expires: July 9, 2013</td>
     526               <td class="left">Expires: July 12, 2013</td>
    527527               <td class="right">J. Reschke, Editor</td>
    528528            </tr>
     
    533533            <tr>
    534534               <td class="left"></td>
    535                <td class="right">January 5, 2013</td>
     535               <td class="right">January 8, 2013</td>
    536536            </tr>
    537537         </tbody>
     
    559559         in progress”.
    560560      </p>
    561       <p>This Internet-Draft will expire on July 9, 2013.</p>
     561      <p>This Internet-Draft will expire on July 12, 2013.</p>
    562562      <h1><a id="rfc.copyrightnotice" href="#rfc.copyrightnotice">Copyright Notice</a></h1>
    563563      <p>Copyright © 2013 IETF Trust and the persons identified as the document authors. All rights reserved.</p>
     
    10641064      <h3 id="rfc.section.4.2.1"><a href="#rfc.section.4.2.1">4.2.1</a>&nbsp;<a id="freshening.responses" href="#freshening.responses">Freshening Responses with 304 Not Modified</a></h3>
    10651065      <p id="rfc.section.4.2.1.p.1">When a cache receives a <a href="p4-conditional.html#status.304" class="smpl">304 (Not Modified)</a> response and already has one or more stored <a href="p2-semantics.html#status.200" class="smpl">200 (OK)</a> responses for the same cache key, the cache needs to identify which of the stored responses are updated by this new response
    1066          and then update the stored response(s) with the new information provided in the <a href="p4-conditional.html#status.304" class="smpl">304</a> response.
    1067       </p>
     1066         and then update the stored response(s) with the new information provided in the <a href="p4-conditional.html#status.304" class="smpl">304</a> response.
     1067      </p>
     1068      <p id="rfc.section.4.2.1.p.2">The stored response to update is identified by using the first match (if any) of: </p>
    10681069      <ul>
    10691070         <li>If the new response contains a strong validator, then that strong validator identifies the selected representation. All of
     
    10741075            the most recent of those matching stored responses is selected.
    10751076         </li>
    1076          <li>If the new response does not include any form of validator, there is only one stored response, and that stored response also
    1077             lacks a validator, then that stored response is selected.
    1078          </li>
    1079       </ul>
    1080       <p id="rfc.section.4.2.1.p.2">If a stored response is selected for update, the cache <em class="bcp14">MUST</em>:
     1077         <li>If the new response does not include any form of validator (such as in the case where a client generates an If-Modified-Since
     1078            request from a source other than the Last-Modified response header field), and there is only one stored response, and that
     1079            stored response also lacks a validator, then that stored response is selected.
     1080         </li>
     1081      </ul>
     1082      <p id="rfc.section.4.2.1.p.3">If a stored response is selected for update, the cache <em class="bcp14">MUST</em>:
    10811083      </p>
    10821084      <ul>
Note: See TracChangeset for help on using the changeset viewer.