5.3 Configuring Custom Cache Control Headers

(Access Gateway Appliance) In addition to fine-tuning cache freshness by using the HTTP timers, as explained in Section 5.1, Configuring Caching Options, you can configure each proxy service to recognize custom headers in HTTP packets. Your Web server can then use these headers for transmitting caching instructions that only the Access Gateway can recognize and follow.

5.3.1 Understanding How Custom Cache Control Headers Work

Only the proxy service containing the custom header definition follows the cache policies specified in the custom headers.

All other proxy services, requesting browsers, and external proxy caches such as transparent caches and client accelerators do not recognize the custom headers. They follow only the cache policies specified by the standard cache control headers.

This means that you have the following options for configuring your Web server:

You can specify that browsers and external caches cannot cache the objects, but the proxy service can.

This lets you off-load request processing from the origin Web server while still requiring that users return to the site each time they request an object.

You can also specify separate cache times for browsers, external caches, and the proxy service.

5.3.2 Enabling Custom Cache Control Headers

To enable the use of custom headers, select Enable Custom Cache Control Header.

With this option selected, the proxy service searches HTTP packets for custom cache control headers, and caches the objects according to its policies. The policy contains a timer, which specifies how long the object can be cached before checking with the Web server for updates.

Select one of the following options to specify what occurs when the custom cache control expiration time expires.

Revalidate the object with a “Get-If-Modified”:
Causes the proxy service to update the object in cache only if the object has been modified.

Always obtain a fresh copy of the object:
Causes the proxy service to update the object in cache, even if the object has not been modified.

In the Cache Control Header List, select New and specify a name for the header, for example MYCACHE.

Ensure that the Web server continues to send the following standard HTTP cache-control headers:

Cache-Control: Max-Age headers that cause browsers to cache object for no longer than two minutes.

Cache-Control: Private headers that cause external caches to not cache the objects.

When your Web server sends an object with the MYCACHE header in response to a request made through the Access Gateway, the proxy service recognizes the custom header and caches the object for 10 minutes. Requesting browsers cache the object for only two minutes, and external caches do not cache the object.

Thus, the Access Gateway off-loads a processing burden from the Web server by caching the frequently requested objects for 10 minutes (the value you specified in Step 7). Browsers, on the other hand, must always access the Access Gateway to get the objects if their previous requests are older than two minutes. And the objects in the cache of the Access Gateway are kept fresh because of their relatively brief time-to-live value.