mod_cache.xml revision 1e5b300cc68389a18fe3762b1b980b0c86712ba1
<?xml version="1.0"?>
<modulesynopsis>
<name>mod_cache</name>
<description>Content cache keyed to URIs.</description>
<status>Experimental</status>
<identifier>cache_module</identifier>
<summary>
<note type="warning">
This module is experimental. Documentation is still under development...
</note>
<p>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:</p>
<dl>
<dt><em><module>mod_disk_cache</module></em></dt>
<dd>implements a disk based storage manager for use with <module>mod_proxy</module></dd>
<dt><em><module>mod_mem_cache</module></em></dt>
<dd>implements an in-memory based storage manager. mod_mem_cache
can be configured to operate in two modes: caching open file
descriptors or caching objects in heap storage. <em><module>mod_mem_cache</module></em>
is most useful when used to cache locally generated content or to cache
backend server content for mod_proxy configured for ProxyPass (aka <em>reverse proxy</em>)</dd>
</dl>
<p>Content stored and retrived keyed to the URL. Content with
access protections is not cached.</p>
<related>
<modulelist>
<module>mod_disk_cache</module>
<module>mod_mem_cache</module>
</modulelist>
<directivelist>
<directive module="mod_disk_cache">CacheRoot</directive>
<directive module="mod_disk_cache">CacheSize</directive>
<directive module="mod_disk_cache">CacheGcInterval</directive>
<directive module="mod_disk_cache">CacheDirLevels</directive>
<directive module="mod_disk_cache">CacheDirLength</directive>
<directive module="mod_disk_cache">CacheExpiryCheck</directive>
<directive module="mod_disk_cache">CacheMinFileSize</directive>
<directive module="mod_disk_cache">CacheMaxFileSize</directive>
<directive module="mod_disk_cache">CacheTimeMargin</directive>
<directive module="mod_disk_cache">CacheGcDaily</directive>
<directive module="mod_disk_cache">CacheGcUnused</directive>
<directive module="mod_disk_cache">CacheGcClean</directive>
<directive module="mod_disk_cache">CacheGcMemUsage</directive>
<directive module="mod_mem_cache">MCacheSize</directive>
<directive module="mod_mem_cache">MCacheMaxObjectCount</directive>
<directive module="mod_mem_cache">MCacheMinObjectSize</directive>
<directive module="mod_mem_cache">MCacheMaxObjectSize</directive>
<directive module="mod_mem_cache">MCacheRemovalAlgorithm</directive>
</directivelist>
</related>
</summary>
<section><title>Sample Configuration</title>
# <br />
# Sample Cache Configuration <br />
# <br />
<IfModule mod_cache.c><br />
CacheOn On<br />
<p />
<IfModule mod_disk_cache.c> <br />
CacheRoot c:/cacheroot <br />
CacheSize 256 <br />
CacheEnable disk / <br />
CacheDirLevels 5 <br />
CacheDirLength 3 <br />
</IfModule> <br />
<p />
<IfModule mod_mem_cache.c> <br />
MCacheEnable mem / <br />
MCacheSize 4096 <br />
MCacheMaxObjectCount 100 <br />
MCacheMinObjectSize 1 <br />
MCacheMaxObjectSize 2048 <br />
</IfModule> <br />
<p />
</IfModule> <br />
</example>
</section>
<directivesynopsis>
<name>CacheOn</name>
<description></description>
<syntax>CacheOn</syntax>
<contextlist><context>server config</context></contextlist>
<usage>
<p>
</p>
<example>
CacheOn
</example>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>CacheEnable</name>
<description>Enable caching specified URLs in a specified storage manager</description>
<syntax>CacheEnable <em>cache_type </em><em> url-string</em></syntax>
<contextlist><context>server config</context></contextlist>
<usage>
<p>The <directive>CacheEnable</directive> directive instructs
mod_cache to cache urls at or below <em>url-string</em>.
The cache store is specified with the <em>cache_type</em> argument.
<em>cache_type </em> <em> mem</em> instructs mod_cache to use the
in-memory cache storage manager implemented by <em>mod_mem_cache</em>.
<em>cache_type </em> <em> disk</em> instructs mod_cache to use the
cache storage manager implemented by <em>mod_disk_cache </em>. </p>
<example>
CacheEnable disk / <br />
CacheEnable mem /manual <br />
CacheEnable fd /images <br />
</example>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>CacheDisable</name>
<description>Disable caching of specified URLs by specified storage manager</description>
<syntax>CacheDisable <em>cache_type </em> <em> url-string</em></syntax>
<contextlist><context>server config</context></contextlist>
<usage>
<p>The <directive>CacheDisable</directive> directive instructs
mod_cache to <em>not</em> cache urls at or above <em>url-string</em>.</p>
<example><title>Example</title>
CacheDisable disk /local_files
</example>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>CacheMaxExpire</name>
<description>The maximum time in seconds to cache a document</description>
<syntax>CacheMaxExpire <em>seconds</em></syntax>
<default>CacheMaxExpire 86400 <em>(one day)</em></default>
<contextlist><context>server config</context></contextlist>
<usage>
<p>The maximum time in seconds to cache a document. The <directive>CacheMaxExpire</directive>
takes precedence over the <em>Expire</em> field from the header.</p>
<example>
CacheMaxExpire 604800
</example>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>CacheDefaultExpire</name>
<syntax>CacheDefaultExpire <em>seconds</em></syntax>
<default>CacheDefaultExpire 3600 <em>(one hour)</em></default>
<contextlist><context>server config</context></contextlist>
<usage>
<p>The default time in seconds to cache a document if the page does not have
an expiry date in the <em>Expires</em> field.</p>
<example>
CacheDefaultExpire 86400
</example>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>CacheIgnoreNoLastMod</name>
<description>Ignore responses where there is no Last Modified Header</description>
<syntax>CacheIgnoreNoLastMod</syntax>
<contextlist><context>server config</context></contextlist>
<usage>
<p>Ignore responses where there is no Last Modified Header</p>
<example>
CacheIgnoreNoLastMod
</example>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>CacheIgnoreCacheControl</name>
<description>Ignore requests from the client for uncached content</description>
<syntax>CacheIgnoreCacheControl</syntax>
<contextlist><context>server config</context></contextlist>
<usage>
<p>Ignore requests from the client for uncached content</p>
<example>
CacheIgnoreNoLastMod
</example>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>CacheLastModifiedFactor</name>
<description>The factor used to estimate the Expires date from the LastModified date</description>
<syntax>CacheLastModifiedFactor <em>float</em></syntax>
<default>CacheLastModifiedFactor 0.1</default>
<contextlist><context>server config</context></contextlist>
<usage>
<p>The factor used to estimate the Expires date from the LastModified date.</p>
<example>
CacheLastModifiedFactor
</example>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>CacheForceCompletion</name>
<description>Percentage of download to arrive for the cache to force complete transfert</description>
<syntax>CacheLastModifiedFactor <em>Percentage</em></syntax>
<default>CacheLastModifiedFactor 60</default>
<contextlist><context>server config</context></contextlist>
<usage>
<p>Percentage of download to arrive for the cache to force complete transfert.</p>
<example>
CacheForceCompletion
</example>
<note type="warning">
This feature is currently <em>not</em> implemented.
</note>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>CacheForceCompletion</name>
<description>Percentage of download to arrive for the cache to force complete transfert</description>
<syntax>CacheLastModifiedFactor <em>Percentage</em></syntax>
<default>CacheLastModifiedFactor 60</default>
<contextlist><context>server config</context></contextlist>
<usage>
<p>Percentage of download to arrive for the cache to force complete transfert.</p>
<example>
CacheForceCompletion
</example>
<note type="warning">
This feature is currently <em>not</em> implemented.
</note>
</usage>
</directivesynopsis>
</modulesynopsis>