TAG NAME refresh_pattern

Description Used to define the manner how Squid treats the objects in the cache
Build Option
Default
Usage
refresh_pattern [-i] regex min percent max [options]
Default (Suggested)
refresh_pattern ^ftp:           1440    20%    10080
refresh_pattern ^gopher:      1440    0%      1440
refresh_pattern .                      0    20%    4320


Synopsis

The way how the objects in the cache be refreshed is defined using this tag. By default, regular expressions are CASE-SENSITIVE.  To make them case-insensitive, use the -i option.


Basically a cached object is:

FRESH if expires < now, else STALE
STALE if age > max
FRESH if lm-factor < percent, else STALE
FRESH
if age < min
else STALE

The refresh_pattern lines are checked in the order listed here. The first entry which matches is used.  If none of the entries match, then the default will be used.

Arguments

regex
regular expression
Min time (in minutes), an object without an explicit expire time should be considered fresh.
percent percentage of the objects age (time since last modification age) an object without explicit expire time will be considered fresh.
Max upper limit on how long objects without an explicit expiry time will be considered fresh.


Options:

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.
override-lastmod enforces min age even on objects that was modified recently.
reload-into-ims changes client no-cache or “reload” to If-Modified-Since requests. Doing this VIOLATES the HTTP standard. Enabling
this feature could make you liable for problems which it causes.
ignore-reload ignores a client no-cache or “reload” header. Doing this VIOLATES the HTTP standard. Enabling this feature could
make you liable for problems which it causes.
ignore-no-cache
ignores any “Pragma: no-cache” and “Cache-control: no-cache” headers received from a server.
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.
ignore-auth
caches responses to requests with authorization, irrespective of “Cache-control” headers received from a
server. Doing this VIOLATES the HTTP standard. Enabling this feature could make you liable for problems which it
causes.
stale-while-revalidate=NN Squid perform an asyncronous cache validation if the object isn’t more stale than NN.
ignore-stale-while-revalidate Squid ignore any ‘Cache-Control:stale-while-revalidate=NN’ headers received from a server.
max-stale=NN This option provides a maximum staleness factor.
negative-ttl=NN This overrides the global negative_ttl parameter selectively for URLs matching this pattern.

Example(s)
refresh_pattern ^ftp:        1440    20%    10080
refresh_pattern ^gopher:    1440    0%    1440
refresh_pattern .        0    20%    4320