Client Caching
To reduce bandwidth usage and latency, clients are encouraged to cache the data retrieved from a web server.
On sites with proxy servers, the proxy can also work as a cache. This allows a user of the proxy server to use documents that might have been previously retrieved and cached by other users of the proxy.
A complication with caching, however, is that the client or proxy needs to know when the document has changed on the server. HTTP provides a mechanism for cache management through a set of headers. There are two general methods for determining if a server resource has changed. One method checks for the most recent modification time of the document. Another method checks for modifications in the entity tag associated with the document.
The server can also use the Cache-Control and
Pragma
headers to indicate caching properties to the client. Some documents
aren’t appropriate for caching, either for security reasons or
because they are dynamic documents (e.g., created on the fly by a CGI
script). Under HTTP 1.0, the Pragma header with a
no-cache value indicates the document should not
be cached. Under HTTP 1.1, the Cache-Control
header supplants Pragma, with several caching
directives in addition to no-cache.
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access