Default settings for the integrated cache
Default caching policies
View default policies
Default request policies
!HTTP.REQ.METHOD.eq(GET)
HTTP.REQ.HEADER("If-Match").EXISTS || HTTP.REQ.HEADER("If-Unmodified-Since").EXISTS
HTTP.REQ.HEADER("Cookie").EXISTS || HTTP.REQ.HEADER("Authorization").EXISTS || HTTP.REQ.HEADER("Proxy-Authorization").EXISTS || HTTP.REQ.IS_NTLM_OR_NEGOTIATE
Default response policies
-
Do not cache HTTP responses unless they are of type 200, 304, 307, 203 or if the types are between 400 and 499 or between 300 and 302.The policy name is _uncacheableStatusRes. The following is the policy rule:
!((HTTP.RES.STATUS.EQ(200)) || (HTTP.RES.STATUS.EQ(304)) || (HTTP.RES.STATUS.BETWEEN(400,499)) || (HTTP.RES.STATUS.BETWEEN(300, 302)) || (HTTP.RES.STATUS.EQ(307))|| (HTTP.RES.STATUS.EQ(203))) -
Do not cache an HTTP response if it has a Vary header with a value of anything other than Accept-Encoding.The compression module inserts the Vary: Accept_Encoding header. The name of this expression is _uncacheableVaryRes. The following is the policy rule:
((HTTP.RES.HEADER("Vary").EXISTS) && ((HTTP.RES.HEADER("Vary").INSTANCE(1).LENGTH > 0) || (!HTTP.RES.HEADER("Vary").STRIP_END\_WS.SET_TEXT_MODE(IGNORECASE).eq("Accept-Encoding")))) -
Do not cache a response if its Cache-Control header value is No-Cache, No-Store, or Private, or if the Cache-Control header is not valid.The policy name is _uncacheableCacheControlRes. The following is the policy rule:
((HTTP.RES.CACHE\_CONTROL.IS\_PRIVATE) || (HTTP.RES.CACHE\_CONTROL.IS\_NO\_CACHE) || (HTTP.RES.CACHE\_CONTROL.IS\_NO\_STORE) || (HTTP.RES.CACHE\_CONTROL.IS\_INVALID)) -
Cache responses if the Cache-Control header has one of the following values: Public, Must-Revalidate, Proxy-Revalidate, Max-Age, S-Maxage.The policy name is _cacheableCacheControlRes. The following is the policy rule:
((HTTP.RES.CACHE_CONTROL.IS_PUBLIC) || (HTTP.RES.CACHE_CONTROL.IS_MAX_AGE) || (HTTP.RES.CACHE_CONTROL.IS_MUST_REVALIDATE) || (HTTP.RES.CACHE_CONTROL.IS_PROXY_REVALIDATE) || (HTTP.RES.CACHE_CONTROL.IS_S_MAXAGE)) -
Do not cache responses that contain a Pragma header.The name of the policy is _uncacheablePragmaRes. The following is the policy rule:
HTTP.RES.HEADER("Pragma").EXISTS -
Cache responses that contain an Expires header.The name of the policy is _cacheableExpiryRes. The following is the policy rule:
HTTP.RES.HEADER("Expires").EXISTS -
If the response contains a Content-Type header with a value of Image, remove any cookies in the header and cache it.The name of the policy is _imageRes. The following is the policy rule:
HTTP.RES.HEADER("Content-Type").SET_TEXT_MODE(IGNORECASE).STARTSWITH("image/")You can configure the following content group to work with this policy:add cache contentgroup nocookie -group -removeCookies YES -
Do not cache a response that contains a Set-Cookie header.The name of the policy is _ personalizedRes. The following is the policy rule:HTTP.RES.HEADER("Set-Cookie").EXISTS || HTTP.RES.HEADER("Set-Cookie2").EXISTS
Restrictions on default policies
-
Do not cache any responses if the corresponding HTTP request lacks a GET or POST method.
-
Do not cache any responses for a request if the HTTP request URL length plus host name exceeds 1744 byes.
-
Do not cache a response for a request that contains an If-Match header.
-
Do not cache a request that contains an If-Unmodified-Since header.
-
Do not cache a response if the server does not set an expiry header.
-
Do not cache responses that have an HTTP response status code of 201, 202, 204, 205, or 206.
-
Do not cache responses that have an HTTP response status code of 4xx, with the exceptions of status codes 403, 404, and 410.
-
Do not cache responses if the response type is FIN terminated, or the response does not have one of the following attributes: Content-Length, or Transfer-Encoding: Chunked.
-
Do not cache the response if the caching module cannot parse its Cache-Control header.