Apache HTTP Server Version 2.0

| Description: | Content cache keyed to URIs. |
|---|---|
| Status: | Experimental |
| Module Identifier: | cache_module |
| Source File: | mod_cache.c |
mod_cache implements an RFC 2616 compliant HTTP
content cache that can be used to cache either local or proxied content.
mod_cache requires the services of one or more storage
management modules. Two storage management modules are included in
the base Apache distribution:
mod_disk_cachemod_proxymod_mem_cachemod_mem_cache can be configured to operate in two
modes: caching open file descriptors or caching objects in heap storage.
mod_mem_cache is most useful when used to cache
locally generated content or to cache backend server content for
mod_proxy configured for ProxyPass (aka reverse proxy)Content stored and retrived keyed to the URL. Content with access protections is not cached.
CacheDefaultExpire
CacheDisable
CacheEnable
CacheForceCompletion
CacheIgnoreCacheControl
CacheIgnoreNoLastMod
CacheLastModifiedFactor
CacheMaxExpire
CacheMaxStreamingBuffer| Related Modules | Related Directives |
|---|---|
#
# Sample Cache Configuration
#
LoadModule cache_module modules/mod_cache.so
<IfModule mod_cache.c>
#LoadModule disk_cache_module modules/mod_disk_cache.so
<IfModule mod_disk_cache.c>
CacheRoot c:/cacheroot
CacheSize 256
CacheEnable disk /
CacheDirLevels 5
CacheDirLength 3
</IfModule>
LoadModule mem_cache_module modules/mod_mem_cache.so
<IfModule mod_mem_cache.c>
MCacheEnable mem /
MCacheSize 4096
MCacheMaxObjectCount 100
MCacheMinObjectSize 1
MCacheMaxObjectSize 2048
</IfModule>
</IfModule>
| Description: | The default time in seconds to cache a document |
|---|---|
| Syntax: | CacheDefaultExpire seconds |
| Default: | CacheDefaultExpire 3600 (one hour) |
| Context: | server config, virtual host |
| Status: | Experimental |
| Module: | mod_cache |
The default time in seconds to cache a document if the page does not have
an expiry date in the Expires field.
CacheDefaultExpire 86400
| Description: | Disable caching of specified URLs by specified storage manager |
|---|---|
| Syntax: | CacheDisable cache_type url-string |
| Context: | server config, virtual host |
| Status: | Experimental |
| Module: | mod_cache |
The CacheDisable directive instructs
mod_cache to not cache urls at or below
url-string.
CacheDisable disk /local_files
| Description: | Enable caching specified URLs in a specified storage manager |
|---|---|
| Syntax: | CacheEnable cache_type url-string |
| Context: | server config, virtual host |
| Status: | Experimental |
| Module: | mod_cache |
The CacheEnable directive instructs
mod_cache to cache urls at or below
url-string. The cache store is specified with the
cache_type argument. cache_type mem
instructs mod_cache to use the in-memory cache storage
manager implemented by mod_mem_cache.
cache_type disk instructs
mod_cache to use the cache storage manager implemented
by mod_disk_cache.
CacheEnable disk /
CacheEnable mem /manual
CacheEnable fd /images
| Description: | Percentage of download to arrive for the cache to force complete transfer |
|---|---|
| Syntax: | CacheForceCompletion Percentage |
| Default: | CacheForceCompletion 60 |
| Context: | server config, virtual host |
| Status: | Experimental |
| Module: | mod_cache |
Percentage of download to arrive for the cache to force complete transfer.
CacheForceCompletion 80
| Description: | Ignore requests from the client for uncached content |
|---|---|
| Syntax: | CacheIgnoreCacheControl On|Off |
| Default: | CacheIgnoreCacheControl Off |
| Context: | server config, virtual host |
| Status: | Experimental |
| Module: | mod_cache |
Ignore requests from the client for uncached content
CacheIgnoreCacheControl On
| Description: | Ignore responses where there is no Last Modified Header |
|---|---|
| Syntax: | CacheIgnoreNoLastMod On|Off |
| Default: | CacheIgnoreNoLastMod Off |
| Context: | server config, virtual host |
| Status: | Experimental |
| Module: | mod_cache |
Ignore responses where there is no Last Modified Header.
CacheIgnoreNoLastMod On
| Description: | The factor used to estimate the Expires date from the LastModified date |
|---|---|
| Syntax: | CacheLastModifiedFactor float |
| Default: | CacheLastModifiedFactor 0.1 |
| Context: | server config, virtual host |
| Status: | Experimental |
| Module: | mod_cache |
The factor used to estimate the Expires date from the LastModified date.
CacheLastModifiedFactor 0.5
| Description: | The maximum time in seconds to cache a document |
|---|---|
| Syntax: | CacheMaxExpire seconds |
| Default: | CacheMaxExpire 86400 (one day) |
| Context: | server config, virtual host |
| Status: | Experimental |
| Module: | mod_cache |
The maximum time in seconds to cache a document. The
CacheMaxExpire takes precedence over the
Expires field from the header.
CacheMaxExpire 604800
| Description: | Maximum amount of a streamed response to buffer in memory before declaring the response uncacheable |
|---|---|
| Syntax: | CacheMaxStreamingBuffer size_in_bytes |
| Default: | CacheMaxStreamingBuffer 0 |
| Context: | server config, virtual host |
| Status: | Experimental |
| Module: | mod_cache |
Maximum number of bytes of a streamed response (i.e., a
response where the entire content is not available all at once, such
as a proxy or CGI response) to buffer before deciding if the response
is cacheable. By default, a streamed response will not be
cached unless it has a Content-Length header. The reason
for this is to avoid using a large amount of memory to buffer a partial
response that might end up being too large to fit in the cache anyway.
To enable caching of streamed responses, use CacheMaxStreamingBuffer to specify the maximum amount of
buffer space to use per request.
Using a nonzero value for CacheMaxStreamingBuffer will not delay the transmission
of the response to the client. As soon as mod_cache
copies a block of streamed content into a buffer, it sends the block
on to the next output filter for delivery to the client.
# Enable caching of streamed responses up to 64KB:
CacheMaxStreamingBuffer 65536