GuideReference
TrainingSupportCommunity
Reference

caching

  • Property Manager name: Caching
  • Behavior version: The v2023-01-05 rule format supports the caching behavior v1.12.
  • Rule format status: GA, stable
  • Access: Read/Write
  • Allowed in includes: Yes

Control content caching on edge servers: whether or not to cache, whether to honor the origin's caching headers, and for how long to cache. Note that any NO_​STORE or BYPASS_​CACHE HTTP headers set on the origin's content overrides this behavior.

OptionTypeDescriptionRequires
behaviorenum

Specify the caching option.

{"displayType":"enum","options":["MAX_AGE","NO_STORE","BYPASS_CACHE","CACHE_CONTROL_AND_EXPIRES","CACHE_CONTROL","EXPIRES"],"tag":"select"}
MAX_​AGE

Honor the origin's MAX_​AGE header.

NO_​STORE

Clears the cache and serves from the origin.

BYPASS_​CACHE

Retains the cache but serves from the origin.

CACHE_​CONTROL_​AND_​EXPIRES

Honor the origin's CACHE_​CONTROL or EXPIRES header, whichever comes last. This adds support for the s-maxage response directive specified in RFC 7234. Use this alternative value to instruct a downstream CDN how long to cache content.

CACHE_​CONTROL

Honor the origin's CACHE_​CONTROL header. This adds support for the s-maxage response directive specified in RFC 7234. Use this alternative value to instruct a downstream CDN how long to cache content.

EXPIRES

Honor the origin's EXPIRES header.

must_​revalidateboolean

Determines what to do once the cached content has expired, by which time the Akamai platform should have re-fetched and validated content from the origin. If enabled, only allows the re-fetched content to be served. If disabled, may serve stale content if the origin is unavailable.

behavior is either: CACHE_​CONTROL_​AND_​EXPIRES, CACHE_​CONTROL, EXPIRES, MAX_​AGE
{"displayType":"boolean","tag":"input","type":"checkbox"}
{"if":{"attribute":"behavior","op":"in","value":["CACHE_CONTROL_AND_EXPIRES","CACHE_CONTROL","EXPIRES","MAX_AGE"]}}
ttlstring (duration)

The maximum time content may remain cached. Setting the value to 0 is the same as setting a no-cache header, which forces content to revalidate.

behavior is MAX_​AGE
{"displayType":"string","tag":"input","type":"text"}
{"if":{"attribute":"behavior","op":"eq","value":"MAX_AGE"}}
default_​ttlstring (duration)

Set the MAX_​AGE header for the cached content.

behavior is either: CACHE_​CONTROL_​AND_​EXPIRES, CACHE_​CONTROL, EXPIRES
{"displayType":"string","tag":"input","type":"text"}
{"if":{"attribute":"behavior","op":"in","value":["CACHE_CONTROL_AND_EXPIRES","CACHE_CONTROL","EXPIRES"]}}
enhanced_​rfc_​supportboolean

This enables honoring particular Cache-Control header directives from the origin. Supports all official RFC 7234 directives except for no-transform.

behavior is either: CACHE_​CONTROL, CACHE_​CONTROL_​AND_​EXPIRES
{"displayType":"boolean","tag":"input","type":"checkbox"}
{"if":{"op":"and","params":[{"attribute":"behavior","op":"in","value":["CACHE_CONTROL","CACHE_CONTROL_AND_EXPIRES"]},{"attribute":"productName","op":"neq","scope":"global","value":"Wholesale_Delivery"},{"attribute":"product.name","op":"neq","scope":"global","value":"Wholesale_Delivery"}]}}
honor_​no_​storeboolean

Instructs edge servers not to cache the response when the origin response includes the no-store directive.

enhanced_​rfc_​support is true
{"displayType":"boolean","tag":"input","type":"checkbox"}
{"if":{"attribute":"enhancedRfcSupport","op":"eq","value":true}}
honor_​privateboolean

Instructs edge servers not to cache the response when the origin response includes the private directive.

behavior is either: CACHE_​CONTROL, CACHE_​CONTROL_​AND_​EXPIRES
{"displayType":"boolean","tag":"input","type":"checkbox"}
{"if":{"attribute":"behavior","op":"in","value":["CACHE_CONTROL","CACHE_CONTROL_AND_EXPIRES"]}}
honor_​no_​cacheboolean

With the no-cache directive present in the response, this instructs edge servers to validate or refetch the response for each request. Effectively, set the time to live ttl to zero seconds.

enhanced_​rfc_​support is true
{"displayType":"boolean","tag":"input","type":"checkbox"}
{"if":{"attribute":"enhancedRfcSupport","op":"eq","value":true}}
honor_​max_​ageboolean

This instructs edge servers to cache the object for a length of time set by the max-age directive in the response. When present in the origin response, this directive takes precedence over the max-age directive and the default_​ttl setting.

enhanced_​rfc_​support is true
{"displayType":"boolean","tag":"input","type":"checkbox"}
{"if":{"attribute":"enhancedRfcSupport","op":"eq","value":true}}
honor_​s_​maxageboolean

Instructs edge servers to cache the object for a length of time set by the s-maxage directive in the response. When present in the origin response, this directive takes precedence over the max-age directive and the default_​ttl setting.

enhanced_​rfc_​support is true
{"displayType":"boolean","tag":"input","type":"checkbox"}
{"if":{"attribute":"enhancedRfcSupport","op":"eq","value":true}}
honor_​must_​revalidateboolean

This instructs edge servers to successfully revalidate with the origin server before using stale objects in the cache to satisfy new requests.

behavior is either: CACHE_​CONTROL, CACHE_​CONTROL_​AND_​EXPIRES
{"displayType":"boolean","tag":"input","type":"checkbox"}
{"if":{"attribute":"behavior","op":"in","value":["CACHE_CONTROL","CACHE_CONTROL_AND_EXPIRES"]}}
honor_​proxy_​revalidateboolean

With the proxy-revalidate directive present in the response, this instructs edge servers to successfully revalidate with the origin server before using stale objects in the cache to satisfy new requests.

enhanced_​rfc_​support is true
{"displayType":"boolean","tag":"input","type":"checkbox"}
{"if":{"attribute":"enhancedRfcSupport","op":"eq","value":true}}