Cache-Control: used if provided, otherwise default will be set.
Surrogate-Control: augmented if provided, otherwise default will be set.
Perimeter will augment the provided
Surrogate-Control by appending
stale-if-error directives if they are not defined.
See also "Extensions" section below.
Surrogate-Control is provided, Perimeter will use the following default caching/stale directives:
max-age=%d, stale-while-revalidate=%d, stale-if-error=%d
%dis a placeholder for the actual value set in Perimeter's
There are a few exceptions to the defaults defined above:
- Static file requests (i.e. proxied to AWS S3) will have a longer
max-age(it uses the
- Smoke requests (see
config.yml) disables all caching.
Surrogate-Control have additional directives related to serving stale content, which are not part of the core HTTP caching standards document. These are
Fastly CDN supports both of these extension directives via
Surrogate-Control, but client compatibility (i.e. web browser support) via
Cache-Control is less consistent.
Perimeter will only augment
Surrogate-Control, it will not augment
The CDN will only cache the following status code responses:
203 Non-Authoritative Information
300 Multiple Choices
301 Moved Permanently
302 Moved Temporarily
404 Not Found