On Jul 29, 2007, at 11:14 AM, David Lawson wrote:
>
> On Jul 29, 2007, at 1:47 PM, Michael Pye wrote:
>
>> Ricardo Newbery wrote:
>>>> latest version. But I'm not sure I should do this via s-maxage
>>>> in the
>>>> response as this setting might also apply to other proxies
>>>> upstream of
>>>> me.
>>
>> If you want other caches to take note of the cache-control max age
>> headers, but you want your cache to cache for longer then set a
>> minimum
>> expiry time in a refresh_pattern for your site. I believe the minimum
>> expiry time will override the cache-control header.
>
> IIRC, refresh patterns are only applicable to objects that don't
> return enough information in the headers to determine the freshness
> or staleness of an object, i.e. they don't have a LastModified and
> a max-age or expires header. So an object with those headers set
> wouldn't be affected by a refresh pattern. You can use the
> override expires option in the refresh pattern to change that
> behavior. I may be wrong, please correct me if I am.
>
> --Dave Lawson
From the default squid.conf:
# TAG: refresh_pattern
# usage: refresh_pattern [-i] regex min percent max [options]
[snip]
# override-expire enforces min age even if the server
# sent a Expires: header. Doing this VIOLATES the HTTP
# standard. Enabling this feature could make you liable
# for problems which it causes.
[snip]
# ignore-no-cache ignores any ``Pragma: no-cache'' and
# ``Cache-control: no-cache'' headers received from a server.
# The HTTP RFC never allows the use of this (Pragma) header
# from a server, only a client, though plenty of servers
# send it anyway.
#
# ignore-private ignores any ``Cache-control: private''
# headers received from a server. Doing this VIOLATES
# the HTTP standard. Enabling this feature could make you
# liable for problems which it causes.
Again, I'm not sure refresh_pattern will solve my usecase since:
1) The docs above don't explicitly say that any of the options will
override max-age and s-maxage, and
2) It appears that refresh_pattern can only be applied to a regex-
matching URI, whereas I would like to apply it selectively based on
the initial response headers (perhaps a via a Cache-Control extension
or maybe just a custom header like X-Cache-TTL).
In other words, I want to do something like:
acl setTTL rep_header X-Cache-TTL [-1] ^on$
refresh_pattern [-i] setTTL 0 100% 86400 override-expire
or something equivalent. Even better would be if I could use the
value of X-Cache-TTL as sort of a local-only s-maxage.
Is there any way I can do this in Squid?
Ric
Received on Sun Jul 29 2007 - 13:58:13 MDT
This archive was generated by hypermail pre-2.1.9 : Wed Aug 01 2007 - 12:00:04 MDT