Cache Key Query Parameters

With this behavior enabled, you can control whether the query string (or portions of it) are used to differentiate objects in cache.

📘

Prior to working with this (and all caching related behaviors) we recommend that you read the topic: Learn about caching.

Features and options

BehaviorDescriptionParametersExact Match

Include all parameters (preserve order from request)

All of the query string parameters in a request are included, and they're applied in the order they exist in the request.

N/A

N/A

Include all parameters (reorder alphabetically

All of the query string parameters in a request are included, but they're reordered alphabetically and then applied.

N/A

N/A

Include only specified parameters...

Only specific query strings are included, and all others are ignored.

Enter the query string parameters you want to be included in the cache key. Matches are determined by the prefix matching each query string. If the query parameter's name=value& contains an item in this list (for example, name , name= , name=value, or name=value&), then the parameter and value are included. It also needs to match the case from the request URL, regardless of any other case-sensitivity settings.

Decide if you want requests to apply an Exact Match. This setting pertains to how we parse query strings for the Cache Key Query Parameters behavior.

  • Exact Match is set to Yes and a-string is defined as a query string in the Parameters field. Edge servers match on ?a-string=true but not on ?*a-string*b-string=true.

  • Exact Match is set to No and a-string is defined as a query string in the Parameters field. Edge servers match on ?*a-string*b-string=true.

Exclude only specified parameters

Specific query strings are excluded, and all others are applied.

Enter the query string parameters you want excluded from the cache key. Matches are determined by the prefix matching each query string. If the query parameter's name=value& contains an item in this list (for example, name , name=, name=value, or name=value&), then the parameter and value are excluded. It also needs to match the case from the request URL, regardless of any other case-sensitivity settings.

Decide if you want requests to apply an Exact Match. This setting pertains to how we parse query strings for the Cache Key Query Parameters behavior.

  • Exact Match is set to Yes and a-string is defined as a query string in the Parameters field. Edge servers match on ?a-string=true but not on ?*a-string*b-string=true. Otherwise, all query strings are included instead of being excluded.

  • Exact Match is set to No and a-string is defined as a query string in the Parameters field. Edge servers match on ?*a-string*b-string=true.

🚧

If you create a new version of your property that changes the cache key for all of your content, you can potentially create severe problems for your origin when you activate the new version on production. When you change the cache key, you invalidate cached content that uses existing cache key.

​Akamai​ edge servers request new objects from your origin at a level that can create severe spikes in bandwidth. If you need to change the cache keys on an active configuration, limit the changes and send them out a few changes at a time over an expanded time frame.

This behavior with AMD or Download Delivery

This is a recommended behavior if you're using Adaptive Media Delivery (AMD) or Download Delivery. It's included in the Default Rule, which applies to all of your content. You can remove it and include it in a lower-level, or nested custom rule to restrict it to specific URL paths, filenames, or other relevant conditions; or you can remove it from your configuration altogether.