]> git.ipfire.org Git - thirdparty/squid.git/commit - src/HttpHdrCc.cc
HTTP: initial support for Cache-Control:immutable
authorAmos Jeffries <squid3@treenet.co.nz>
Fri, 28 Oct 2016 07:56:00 +0000 (20:56 +1300)
committerAmos Jeffries <squid3@treenet.co.nz>
Fri, 28 Oct 2016 07:56:00 +0000 (20:56 +1300)
commitcaf653518ed88e91606b4eea451dc200ed81d0fe
tree33fa08bcc4000720289dab1557ce903bff6dd83f
parenta522894240236b9cca86320cbcf1cd257a9bc1f8
HTTP: initial support for Cache-Control:immutable

The 'immutable' cache control is a proposed standardization of
behaviour equivalent to the refresh_pattern 'ignore-reload' option.
Reducing latency delays from revalidation when an object is known not
to be updated until it expires.

When a server emits it on responses a recipient cache is expected to
treat the response as not requiring any revalidation until it becomes
stale. For the duration of its freshness period it may be used as-is
to respond to client requests - including reload (CC:max-age=0)
requests.

This initial code does not yet support preventing IMS conditional
requests behaviour when the 'immutable' signal is received.

Note that CC:no-cache in requests, and If-None-Match ETag based
conditionals can still make an 'immutable' response be irrelevant to
a particular client request. So server contact is not completely
prevented.

Use 'immutable' option in preference over the refresh_pattern
'ignore-reload' in order to track whether that override is still
relevant.
src/HttpHdrCc.cc
src/HttpHdrCc.h
src/refresh.cc