* WGs marked with an * asterisk has had at least one new draft made available during the last 5 days

Ticket #430 (closed design: fixed)

Opened 21 months ago

Last modified 13 months ago

definition public cache-control directive is incompatible with RFC2616

Reported by: fielding@gbiv.com Owned by:
Priority: normal Milestone: 22
Component: p6-cache Severity: In WG Last Call
Keywords: cache-control, public Cc:
Origin:

Description

The cache-control directives have a defined meaning that must not be changed without changing the major protocol version. The definition of public in RFC2616 says

14.9.1 What is Cacheable

By default, a response is cacheable if the requirements of the request method, request header fields, and the response status indicate that it is cacheable. Section 13.4 summarizes these defaults for cacheability. The following Cache-Control response directives allow an origin server to override the default cacheability of a response:

public

Indicates that the response MAY be cached by any cache, even if it would normally be non-cacheable or cacheable only within a non- shared cache. (See also Authorization, section 14.8, for additional details.)

The current p6 says:

7.2.2.1. public

The "public" response directive indicates that a response whose associated request contains an 'Authentication' header MAY be stored (see Section 3.2).

Which is wrong: the parenthetical in the prior definition was just a cross-reference, not a constraint. The new definition removes all of the other cases where public is used to make a non-cacheable response cacheable. For example, in RFC2616, the following response is cacheable using a cache-selected (heuristic) expiration time:

  HTTP/1.1 302 Found
  Location: /somewhere
  Cache-Control: public

The original definition needs to be restored.

Change History

comment:1 Changed 21 months ago by fielding@gbiv.com

  • Summary changed from definition public and private cache-control directives are incompatible with RFC2616 to definition public cache-control directive is incompatible with RFC2616

comment:2 Changed 21 months ago by fielding@gbiv.com

From [2171]:

Restore the original semantics of the public and private cache directives as overriding non-cacheable defaults; Addresses #430; Reverts [1129] and #268

comment:3 Changed 21 months ago by fielding@gbiv.com

  • Status changed from new to closed
  • Resolution set to incorporated
  • Milestone changed from unassigned to 22

comment:4 Changed 21 months ago by mnot@pobox.com

  • Status changed from closed to reopened
  • Resolution incorporated deleted

comment:5 Changed 20 months ago by mnot@pobox.com

  • Status changed from reopened to closed
  • Resolution set to incorporated

comment:6 Changed 18 months ago by mnot@pobox.com

  • Status changed from closed to reopened
  • Resolution incorporated deleted

comment:7 Changed 18 months ago by mnot@pobox.com

  • Status changed from reopened to closed
  • Resolution set to fixed

comment:8 Changed 13 months ago by julian.reschke@gmx.de

From [2426]:

fix changelog (see #430)

Note: See TracTickets for help on using tickets.