summaryrefslogtreecommitdiff
path: root/docs/manual/mod/mod_cache.html.en
diff options
context:
space:
mode:
Diffstat (limited to 'docs/manual/mod/mod_cache.html.en')
-rw-r--r--docs/manual/mod/mod_cache.html.en191
1 files changed, 63 insertions, 128 deletions
diff --git a/docs/manual/mod/mod_cache.html.en b/docs/manual/mod/mod_cache.html.en
index c2db82af..1e88f99c 100644
--- a/docs/manual/mod/mod_cache.html.en
+++ b/docs/manual/mod/mod_cache.html.en
@@ -9,7 +9,7 @@
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
-<script src="../style/scripts/prettify.js" type="text/javascript">
+<script src="../style/scripts/prettify.min.js" type="text/javascript">
</script>
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
@@ -169,8 +169,7 @@
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="sampleconf" id="sampleconf">Sample Configuration</a></h2>
- <div class="example"><h3>Sample httpd.conf</h3><pre class="prettyprint lang-config">
-#
+ <div class="example"><h3>Sample httpd.conf</h3><pre class="prettyprint lang-config">#
# Sample Cache Configuration
#
LoadModule cache_module modules/mod_cache.so
@@ -182,11 +181,10 @@ LoadModule cache_module modules/mod_cache.so
CacheDirLevels 5
CacheDirLength 3
&lt;/IfModule&gt;
-
+
# When acting as a proxy, don't cache the list of security updates
CacheDisable http://security.update.server/update-list/
-&lt;/IfModule&gt;
- </pre>
+&lt;/IfModule&gt;</pre>
</div>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
@@ -239,16 +237,14 @@ LoadModule cache_module modules/mod_cache.so
<h3>Example configuration</h3>
- <div class="example"><h3>Enabling the cache lock</h3><pre class="prettyprint lang-config">
-#
+ <div class="example"><h3>Enabling the cache lock</h3><pre class="prettyprint lang-config">#
# Enable the cache lock
#
&lt;IfModule mod_cache.c&gt;
CacheLock on
CacheLockPath /tmp/mod_cache-lock
CacheLockMaxAge 5
-&lt;/IfModule&gt;
- </pre>
+&lt;/IfModule&gt;</pre>
</div>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
@@ -269,7 +265,7 @@ LoadModule cache_module modules/mod_cache.so
circumstances, an administrator is often forced to place independent reverse
proxy servers either behind or in front of the caching server to achieve this.</p>
- <p>To solve this problem the <code class="directive"><a href="#cachequickhandler&#10; ">CacheQuickHandler
+ <p>To solve this problem the <code class="directive"><a href="#cachequickhandler">CacheQuickHandler
</a></code> directive can be set to <strong>off</strong>, and the server will
process all phases normally handled by a non-cached request, including the
<strong>authentication and authorisation</strong> phases.</p>
@@ -282,11 +278,9 @@ LoadModule cache_module modules/mod_cache.so
place the <strong>CACHE</strong> filter before the <strong>DEFLATE</strong>
filter as in the example below:</p>
- <pre class="prettyprint lang-config">
-# Cache content before optional compression
+ <pre class="prettyprint lang-config"># Cache content before optional compression
CacheQuickHandler off
-AddOutputFilterByType CACHE;DEFLATE text/plain
- </pre>
+AddOutputFilterByType CACHE;DEFLATE text/plain</pre>
<p>Another option is to have content cached before personalisation is applied
@@ -294,11 +288,9 @@ AddOutputFilterByType CACHE;DEFLATE text/plain
example templates containing tags understood by
<code class="module"><a href="../mod/mod_include.html">mod_include</a></code> are cached before being parsed:</p>
- <pre class="prettyprint lang-config">
-# Cache content before mod_include and mod_deflate
+ <pre class="prettyprint lang-config"># Cache content before mod_include and mod_deflate
CacheQuickHandler off
-AddOutputFilterByType CACHE;INCLUDES;DEFLATE text/html
- </pre>
+AddOutputFilterByType CACHE;INCLUDES;DEFLATE text/html</pre>
<p>You may place the <strong>CACHE</strong> filter anywhere you wish within the
@@ -306,11 +298,9 @@ AddOutputFilterByType CACHE;INCLUDES;DEFLATE text/html
<code class="module"><a href="../mod/mod_include.html">mod_include</a></code>, but before being processed by
<code class="module"><a href="../mod/mod_deflate.html">mod_deflate</a></code>:</p>
- <pre class="prettyprint lang-config">
-# Cache content between mod_include and mod_deflate
+ <pre class="prettyprint lang-config"># Cache content between mod_include and mod_deflate
CacheQuickHandler off
-AddOutputFilterByType INCLUDES;CACHE;DEFLATE text/html
- </pre>
+AddOutputFilterByType INCLUDES;CACHE;DEFLATE text/html</pre>
<div class="warning"><h3>Warning:</h3>If the location of the
@@ -329,9 +319,7 @@ AddOutputFilterByType INCLUDES;CACHE;DEFLATE text/html
<code class="directive"><a href="../mod/mod_log_config.html#logformat">LogFormat</a></code> directive as
follows:</p>
- <pre class="prettyprint lang-config">
- LogFormat "%{cache-status}e ..."
- </pre>
+ <pre class="prettyprint lang-config">LogFormat "%{cache-status}e ..."</pre>
<p>Based on the caching decision made, the reason is also written to the
@@ -349,12 +337,10 @@ AddOutputFilterByType INCLUDES;CACHE;DEFLATE text/html
<p>This makes it possible to support conditional logging of cached requests
as per the following example:</p>
- <pre class="prettyprint lang-config">
-CustomLog cached-requests.log common env=cache-hit
+ <pre class="prettyprint lang-config">CustomLog cached-requests.log common env=cache-hit
CustomLog uncached-requests.log common env=cache-miss
CustomLog revalidated-requests.log common env=cache-revalidate
-CustomLog invalidated-requests.log common env=cache-invalidate
- </pre>
+CustomLog invalidated-requests.log common env=cache-invalidate</pre>
<p>For module authors, a hook called <var>cache_status</var> is available,
@@ -376,9 +362,7 @@ CustomLog invalidated-requests.log common env=cache-invalidate
with the document. The value specified with the <code class="directive">CacheMaxExpire</code>
directive does <em>not</em> override this setting.</p>
- <pre class="prettyprint lang-config">
- CacheDefaultExpire 86400
- </pre>
+ <pre class="prettyprint lang-config">CacheDefaultExpire 86400</pre>
</div>
@@ -403,15 +387,13 @@ CustomLog invalidated-requests.log common env=cache-invalidate
used by the service and client.</p>
<p>If the normal handler is used, this directive may appear within a
- <code class="directive"><a href="../mod/core.html#&lt;directory&gt;">&lt;Directory&gt;</a></code> or
- <code class="directive"><a href="../mod/core.html#&lt;location&gt;">&lt;Location&gt;</a></code> directive. If the quick handler
+ <code class="directive"><a href="../mod/core.html#directory">&lt;Directory&gt;</a></code> or
+ <code class="directive"><a href="../mod/core.html#location">&lt;Location&gt;</a></code> directive. If the quick handler
is used, this directive must appear within a server or virtual host context, otherwise
the setting will be ignored.</p>
- <pre class="prettyprint lang-config">
-# Enable the X-Cache-Detail header
-CacheDetailHeader on
- </pre>
+ <pre class="prettyprint lang-config"># Enable the X-Cache-Detail header
+CacheDetailHeader on</pre>
<div class="example"><p><code>
@@ -433,20 +415,16 @@ CacheDetailHeader on
<code class="module"><a href="../mod/mod_cache.html">mod_cache</a></code> to <em>not</em> cache urls at or below
<var>url-string</var>.</p>
- <div class="example"><h3>Example</h3><pre class="prettyprint lang-config">
- CacheDisable /local_files
- </pre>
+ <div class="example"><h3>Example</h3><pre class="prettyprint lang-config">CacheDisable /local_files</pre>
</div>
<p>If used in a <code class="directive">&lt;Location&gt;</code> directive,
the path needs to be specified below the Location, or if the word "on"
is used, caching for the whole location will be disabled.</p>
- <div class="example"><h3>Example</h3><pre class="prettyprint lang-config">
-&lt;Location /foo&gt;
+ <div class="example"><h3>Example</h3><pre class="prettyprint lang-config">&lt;Location /foo&gt;
CacheDisable on
-&lt;/Location&gt;
- </pre>
+&lt;/Location&gt;</pre>
</div>
<p>The <code>no-cache</code> environment variable can be set to
@@ -468,6 +446,8 @@ manager</td></tr>
<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory</td></tr>
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_cache</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>A url-string of '/' applied to forward proxy content in 2.2 and
+ earlier.</td></tr>
</table>
<p>The <code class="directive">CacheEnable</code> directive instructs
<code class="module"><a href="../mod/mod_cache.html">mod_cache</a></code> to cache urls at or below
@@ -493,12 +473,10 @@ manager</td></tr>
<code class="directive">&lt;LocationMatch&gt;</code> sections are processed
before globally defined <code class="directive">CacheEnable</code> directives.</p>
- <p>When acting as a forward proxy server, <var>url-string</var> can
- also be used to specify remote sites and proxy protocols which
- caching should be enabled for.</p>
+ <p>When acting as a forward proxy server, <var>url-string</var> must
+ minimally begin with a protocol for which caching should be enabled.</p>
- <pre class="prettyprint lang-config">
-# Cache content (normal handler only)
+ <pre class="prettyprint lang-config"># Cache content (normal handler only)
CacheQuickHandler off
&lt;Location /foo&gt;
CacheEnable disk
@@ -510,27 +488,24 @@ CacheQuickHandler off
CacheEnable disk
&lt;/LocationMatch&gt;
-# Cache proxied url's (normal or quick handler)
+# Cache all but forward proxy url's (normal or quick handler)
CacheEnable disk /
# Cache FTP-proxied url's (normal or quick handler)
CacheEnable disk ftp://
-# Cache content from www.example.org (normal or quick handler)
-CacheEnable disk http://www.example.org/
- </pre>
+# Cache forward proxy content from www.example.org (normal or quick handler)
+CacheEnable disk http://www.example.org/</pre>
<p>A hostname starting with a <strong>"*"</strong> matches all hostnames with
that suffix. A hostname starting with <strong>"."</strong> matches all
hostnames containing the domain components that follow.</p>
- <pre class="prettyprint lang-config">
-# Match www.example.org, and fooexample.org
+ <pre class="prettyprint lang-config"># Match www.example.org, and fooexample.org
CacheEnable disk http://*example.org/
# Match www.example.org, but not fooexample.org
-CacheEnable disk http://.example.org/
- </pre>
+CacheEnable disk http://.example.org/</pre>
<p> The <code>no-cache</code> environment variable can be set to
@@ -557,8 +532,8 @@ CacheEnable disk http://.example.org/
<p>When the <code class="directive"><a href="#cacheheader">CacheHeader</a></code> directive
is switched on, an <strong>X-Cache</strong> header will be added to the response
with the cache status of this response. If the normal handler is used, this
- directive may appear within a <code class="directive"><a href="../mod/core.html#&lt;directory&gt;">&lt;Directory&gt;</a></code>
- or <code class="directive"><a href="../mod/core.html#&lt;location&gt;">&lt;Location&gt;</a></code> directive. If the quick
+ directive may appear within a <code class="directive"><a href="../mod/core.html#directory">&lt;Directory&gt;</a></code>
+ or <code class="directive"><a href="../mod/core.html#location">&lt;Location&gt;</a></code> directive. If the quick
handler is used, this directive must appear within a server or virtual host
context, otherwise the setting will be ignored.</p>
@@ -571,15 +546,11 @@ CacheEnable disk http://.example.org/
server and was not served from cache.</dd>
</dl>
- <pre class="prettyprint lang-config">
-# Enable the X-Cache header
-CacheHeader on
- </pre>
+ <pre class="prettyprint lang-config"># Enable the X-Cache header
+CacheHeader on</pre>
- <pre class="prettyprint lang-config">
- X-Cache: HIT from localhost
- </pre>
+ <pre class="prettyprint lang-config">X-Cache: HIT from localhost</pre>
@@ -602,9 +573,7 @@ CacheHeader on
if the request contains no-cache header values. Resources requiring
authorization will <em>never</em> be cached.</p>
- <pre class="prettyprint lang-config">
- CacheIgnoreCacheControl On
- </pre>
+ <pre class="prettyprint lang-config">CacheIgnoreCacheControl On</pre>
<div class="warning"><h3>Warning:</h3>
@@ -656,14 +625,10 @@ CacheHeader on
behaviour), <code class="directive">CacheIgnoreHeaders</code> can be set to
<code>None</code>.</p>
- <div class="example"><h3>Example 1</h3><pre class="prettyprint lang-config">
- CacheIgnoreHeaders Set-Cookie
- </pre>
+ <div class="example"><h3>Example 1</h3><pre class="prettyprint lang-config">CacheIgnoreHeaders Set-Cookie</pre>
</div>
- <div class="example"><h3>Example 2</h3><pre class="prettyprint lang-config">
- CacheIgnoreHeaders None
- </pre>
+ <div class="example"><h3>Example 2</h3><pre class="prettyprint lang-config">CacheIgnoreHeaders None</pre>
</div>
<div class="warning"><h3>Warning:</h3>
@@ -696,9 +661,7 @@ header.</td></tr>
<code class="directive">CacheDefaultExpire</code> directive will be used to
generate an expiration date.</p>
- <pre class="prettyprint lang-config">
- CacheIgnoreNoLastMod On
- </pre>
+ <pre class="prettyprint lang-config">CacheIgnoreNoLastMod On</pre>
</div>
@@ -721,9 +684,7 @@ header.</td></tr>
view the request is treated as if having no query string when this
directive is enabled.</p>
- <pre class="prettyprint lang-config">
- CacheIgnoreQueryString On
- </pre>
+ <pre class="prettyprint lang-config">CacheIgnoreQueryString On</pre>
@@ -755,14 +716,10 @@ header.</td></tr>
<p><code>CacheIgnoreURLSessionIdentifiers None</code> clears the list of ignored
identifiers. Otherwise, each identifier is added to the list.</p>
- <div class="example"><h3>Example 1</h3><pre class="prettyprint lang-config">
- CacheIgnoreURLSessionIdentifiers jsessionid
- </pre>
+ <div class="example"><h3>Example 1</h3><pre class="prettyprint lang-config">CacheIgnoreURLSessionIdentifiers jsessionid</pre>
</div>
- <div class="example"><h3>Example 2</h3><pre class="prettyprint lang-config">
- CacheIgnoreURLSessionIdentifiers None
- </pre>
+ <div class="example"><h3>Example 2</h3><pre class="prettyprint lang-config">CacheIgnoreURLSessionIdentifiers None</pre>
</div>
@@ -786,10 +743,8 @@ header.</td></tr>
should be cached beneath the same cache key, a new base URL can be specified
with this directive.</p>
- <pre class="prettyprint lang-config">
-# Override the base URL of the cache key.
-CacheKeyBaseURL http://www.example.com/
- </pre>
+ <pre class="prettyprint lang-config"># Override the base URL of the cache key.
+CacheKeyBaseURL http://www.example.com/</pre>
<div class="warning">Take care when setting this directive. If two separate virtual
@@ -828,9 +783,7 @@ LastModified date.</td></tr>
<code class="directive">CacheMaxExpire</code>, then the latter takes
precedence.</p>
- <pre class="prettyprint lang-config">
- CacheLastModifiedFactor 0.5
- </pre>
+ <pre class="prettyprint lang-config">CacheLastModifiedFactor 0.5</pre>
</div>
@@ -851,10 +804,8 @@ LastModified date.</td></tr>
<p>In a minimal configuration the following directive is all that is needed to
enable the thundering herd lock in the default system temp directory.</p>
- <pre class="prettyprint lang-config">
-# Enable cache lock
-CacheLock on
- </pre>
+ <pre class="prettyprint lang-config"># Enable cache lock
+CacheLock on</pre>
@@ -912,9 +863,7 @@ CacheLock on
server. Thus, documents will be out of date at most this number of seconds. This maximum
value is enforced even if an expiry date was supplied with the document.</p>
- <pre class="prettyprint lang-config">
- CacheMaxExpire 604800
- </pre>
+ <pre class="prettyprint lang-config">CacheMaxExpire 604800</pre>
</div>
@@ -933,9 +882,7 @@ CacheLock on
server. This is only used if no valid expire time was supplied with the document.</p>
- <pre class="prettyprint lang-config">
- CacheMinExpire 3600
- </pre>
+ <pre class="prettyprint lang-config">CacheMinExpire 3600</pre>
</div>
@@ -964,10 +911,8 @@ CacheLock on
slower than the default, it allows the cache to be used in cases where full
processing is required, such as when content is subject to authorisation.</p>
- <pre class="prettyprint lang-config">
-# Run cache as a normal handler
-CacheQuickHandler off
- </pre>
+ <pre class="prettyprint lang-config"># Run cache as a normal handler
+CacheQuickHandler off</pre>
<p>It is also possible, when the quick handler is disabled, for the
@@ -975,11 +920,9 @@ CacheQuickHandler off
caching is to be performed, by adding the <strong>CACHE</strong> filter to
the chain.</p>
- <pre class="prettyprint lang-config">
-# Cache content before mod_include and mod_deflate
+ <pre class="prettyprint lang-config"># Cache content before mod_include and mod_deflate
CacheQuickHandler off
-AddOutputFilterByType CACHE;INCLUDES;DEFLATE text/html
- </pre>
+AddOutputFilterByType CACHE;INCLUDES;DEFLATE text/html</pre>
<p>If the CACHE filter is specified more than once, the last instance will
@@ -1005,10 +948,8 @@ AddOutputFilterByType CACHE;INCLUDES;DEFLATE text/html
and the raw 5xx responses returned to the client on request, the 5xx response so
returned to the client will not invalidate the content in the cache.</p>
- <pre class="prettyprint lang-config">
-# Serve stale data on error.
-CacheStaleOnError on
- </pre>
+ <pre class="prettyprint lang-config"># Serve stale data on error.
+CacheStaleOnError on</pre>
@@ -1032,9 +973,7 @@ CacheStaleOnError on
the origin server, and the response may be fulfilled from cache
if the backend resource has not changed.</p>
- <pre class="prettyprint lang-config">
- CacheStoreExpired On
- </pre>
+ <pre class="prettyprint lang-config">CacheStoreExpired On</pre>
</div>
@@ -1056,9 +995,7 @@ CacheStaleOnError on
no-store header values. Resources requiring authorization will
<em>never</em> be cached.</p>
- <pre class="prettyprint lang-config">
- CacheStoreNoStore On
- </pre>
+ <pre class="prettyprint lang-config">CacheStoreNoStore On</pre>
<div class="warning"><h3>Warning:</h3>
@@ -1092,9 +1029,7 @@ CacheStaleOnError on
private header values. Resources requiring authorization will
<em>never</em> be cached.</p>
- <pre class="prettyprint lang-config">
- CacheStorePrivate On
- </pre>
+ <pre class="prettyprint lang-config">CacheStorePrivate On</pre>
<div class="warning"><h3>Warning:</h3>
@@ -1133,7 +1068,7 @@ var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_cache.html';
}
})(window, document);
//--><!]]></script></div><div id="footer">
-<p class="apache">Copyright 2013 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="apache">Copyright 2014 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();