<code class="directive"><a href="../mod/mod_filter.html#addoutputfilterbytype">AddOutputFilterByType</a></code> directives.</p>
<div class="example"><h3>Using buffer with mod_include</h3><p><code>
- AddOutputFilterByType INCLUDES;BUFFER text/html<br />
+ <pre class="prettyprint lang-config">
+ AddOutputFilterByType INCLUDES;BUFFER text/html
+ </pre>
+
</code></p></div>
<div class="warning">The buffer filters read the request/response into
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1174747 -->
+<!-- English Revision: 1174747:1330964 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
</variants>
</metafile>
<div class="section">
<h2><a name="sampleconf" id="sampleconf">Sample Configuration</a></h2>
<div class="example"><h3>Sample httpd.conf</h3><p><code>
- #<br />
- # Sample Cache Configuration<br />
- #<br />
- LoadModule cache_module modules/mod_cache.so<br />
- <br />
- <IfModule mod_cache.c><br />
- <span class="indent">
- LoadModule cache_disk_module modules/mod_cache_disk.so<br />
- <IfModule mod_cache_disk.c><br />
- <span class="indent">
- CacheRoot c:/cacheroot<br />
- CacheEnable disk /<br />
- CacheDirLevels 5<br />
- CacheDirLength 3<br />
- </span>
- </IfModule> <br />
- <br />
- # When acting as a proxy, don't cache the list of security updates<br />
- CacheDisable http://security.update.server/update-list/<br />
- </span>
- </IfModule>
+ <pre class="prettyprint lang-config">
+#
+# Sample Cache Configuration
+#
+LoadModule cache_module modules/mod_cache.so
+<IfModule mod_cache.c>
+ LoadModule cache_disk_module modules/mod_cache_disk.so
+ <IfModule mod_cache_disk.c>
+ CacheRoot c:/cacheroot
+ CacheEnable disk /
+ CacheDirLevels 5
+ CacheDirLength 3
+ </IfModule>
+
+ # When acting as a proxy, don't cache the list of security updates
+ CacheDisable http://security.update.server/update-list/
+</IfModule>
+ </pre>
+
</code></p></div>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h3>Example configuration</h3>
<div class="example"><h3>Enabling the cache lock</h3><p><code>
- #<br />
- # Enable the cache lock<br />
- #<br />
- <IfModule mod_cache.c><br />
- <span class="indent">
- CacheLock on<br />
- CacheLockPath /tmp/mod_cache-lock<br />
- CacheLockMaxAge 5<br />
- </span>
- </IfModule>
+ <pre class="prettyprint lang-config">
+#
+# Enable the cache lock
+#
+<IfModule mod_cache.c>
+ CacheLock on
+ CacheLockPath /tmp/mod_cache-lock
+ CacheLockMaxAge 5
+</IfModule>
+ </pre>
+
</code></p></div>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
place the <strong>CACHE</strong> filter before the <strong>DEFLATE</strong>
filter as in the example below:</p>
- <div class="example"><p><code>
- # Cache content before optional compression<br />
- CacheQuickHandler off<br />
- AddOutputFilterByType CACHE;DEFLATE text/plain<br /><br />
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# Cache content before optional compression
+CacheQuickHandler off
+AddOutputFilterByType CACHE;DEFLATE text/plain
+ </pre>
+
<p>Another option is to have content cached before personalisation is applied
by <code class="module"><a href="../mod/mod_include.html">mod_include</a></code> (or another content processing filter). In this
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>
- <div class="example"><p><code>
- # Cache content before mod_include and mod_deflate<br />
- CacheQuickHandler off<br />
- AddOutputFilterByType CACHE;INCLUDES;DEFLATE text/html<br /><br />
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# Cache content before mod_include and mod_deflate
+CacheQuickHandler off
+AddOutputFilterByType CACHE;INCLUDES;DEFLATE text/html
+ </pre>
+
<p>You may place the <strong>CACHE</strong> filter anywhere you wish within the
filter chain. In this example, content is cached after being parsed by
<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>
- <div class="example"><p><code>
- # Cache content between mod_include and mod_deflate<br />
- CacheQuickHandler off<br />
- AddOutputFilterByType INCLUDES;CACHE;DEFLATE text/html<br /><br />
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# Cache content between mod_include and mod_deflate
+CacheQuickHandler off
+AddOutputFilterByType INCLUDES;CACHE;DEFLATE text/html
+ </pre>
+
<div class="warning"><h3>Warning:</h3>If the location of the
<strong>CACHE</strong> filter in the filter chain is changed for any reason,
<code class="directive"><a href="../mod/mod_log_config.html#logformat">LogFormat</a></code> directive as
follows:</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
LogFormat "%{cache-status}e ..."
- </code></p></div>
+ </pre>
+
<p>Based on the caching decision made, the reason is also written to the
subprocess environment under one the following four keys, as appropriate:</p>
<p>This makes it possible to support conditional logging of cached requests
as per the following example:</p>
- <div class="example"><p><code>
- CustomLog cached-requests.log common env=cache-hit<br />
- CustomLog uncached-requests.log common env=cache-miss<br />
- CustomLog revalidated-requests.log common env=cache-revalidate<br />
- CustomLog invalidated-requests.log common env=cache-invalidate<br />
- </code></p></div>
+ <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>
+
<p>For module authors, a hook called <var>cache_status</var> is available,
allowing modules to respond to the caching outcomes above in customised
with the document. The value specified with the <code class="directive">CacheMaxExpire</code>
directive does <em>not</em> override this setting.</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
CacheDefaultExpire 86400
- </code></p></div>
+ </pre>
+
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
is used, this directive must appear within a server or virtual host context, otherwise
the setting will be ignored.</p>
- <div class="example"><p><code>
- # Enable the X-Cache-Detail header<br />
- CacheDetailHeader on<br />
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# Enable the X-Cache-Detail header
+CacheDetailHeader on
+ </pre>
+
<div class="example"><p><code>
X-Cache-Detail: "conditional cache hit: entity refreshed" from localhost<br />
<var>url-string</var>.</p>
<div class="example"><h3>Example</h3><p><code>
+ <pre class="prettyprint lang-config">
CacheDisable /local_files
+ </pre>
+
</code></p></div>
<p>If used in a <code class="directive"><Location></code> directive,
is used, caching for the whole location will be disabled.</p>
<div class="example"><h3>Example</h3><p><code>
- <Location /foo><br />
- <span class="indent">
- CacheDisable on<br />
- </span>
- </Location><br />
+ <pre class="prettyprint lang-config">
+<Location /foo>
+ CacheDisable on
+</Location>
+ </pre>
+
</code></p></div>
<p>The <code>no-cache</code> environment variable can be set to
also be used to specify remote sites and proxy protocols which
caching should be enabled for.</p>
- <div class="example"><p><code>
- # Cache content<br />
- <Location /foo><br />
- <span class="indent">
- CacheEnable disk<br />
- </span>
- </Location><br /><br />
- # Cache regex<br />
- <LocationMatch foo$><br />
- <span class="indent">
- CacheEnable disk<br />
- </span>
- </LocationMatch><br /><br />
- # Cache proxied url's<br />
- CacheEnable disk /<br /><br />
- # Cache FTP-proxied url's<br />
- CacheEnable disk ftp://<br /><br />
- # Cache content from www.example.org<br />
- CacheEnable disk http://www.example.org/<br />
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# Cache content
+<Location /foo>
+ CacheEnable disk
+</Location>
+
+# Cache regex
+<LocationMatch foo$>
+ CacheEnable disk
+</LocationMatch>
+
+# Cache proxied url's
+CacheEnable disk /
+
+# Cache FTP-proxied url's
+CacheEnable disk ftp://
+
+# Cache content from www.example.org
+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>
- <div class="example"><p><code>
- # Match www.example.org, and fooexample.org<br />
- CacheEnable disk http://*example.org/<br />
- # Match www.example.org, but not fooexample.org<br />
- CacheEnable disk http://.example.org/<br />
- </code></p></div>
+ <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>
+
<p> The <code>no-cache</code> environment variable can be set to
disable caching on a finer grained set of resources in versions
server and was not served from cache.</dd>
</dl>
- <div class="example"><p><code>
- # Enable the X-Cache header<br />
- CacheHeader on<br />
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# Enable the X-Cache header
+CacheHeader on
+ </pre>
+
+
+ <pre class="prettyprint lang-config">
+ X-Cache: HIT from localhost
+ </pre>
- <div class="example"><p><code>
- X-Cache: HIT from localhost<br />
- </code></p></div>
</div>
if the request contains no-cache header values. Resources requiring
authorization will <em>never</em> be cached.</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
CacheIgnoreCacheControl On
- </code></p></div>
+ </pre>
+
<div class="warning"><h3>Warning:</h3>
This directive will allow serving from the cache even if the client has
<code>None</code>.</p>
<div class="example"><h3>Example 1</h3><p><code>
+ <pre class="prettyprint lang-config">
CacheIgnoreHeaders Set-Cookie
+ </pre>
+
</code></p></div>
<div class="example"><h3>Example 2</h3><p><code>
+ <pre class="prettyprint lang-config">
CacheIgnoreHeaders None
+ </pre>
+
</code></p></div>
<div class="warning"><h3>Warning:</h3>
<code class="directive">CacheDefaultExpire</code> directive will be used to
generate an expiration date.</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
CacheIgnoreNoLastMod On
- </code></p></div>
+ </pre>
+
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
view the request is treated as if having no query string when this
directive is enabled.</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
CacheIgnoreQueryString On
- </code></p></div>
+ </pre>
+
</div>
identifiers. Otherwise, each identifier is added to the list.</p>
<div class="example"><h3>Example 1</h3><p><code>
+ <pre class="prettyprint lang-config">
CacheIgnoreURLSessionIdentifiers jsessionid
+ </pre>
+
</code></p></div>
<div class="example"><h3>Example 2</h3><p><code>
+ <pre class="prettyprint lang-config">
CacheIgnoreURLSessionIdentifiers None
+ </pre>
+
</code></p></div>
should be cached beneath the same cache key, a new base URL can be specified
with this directive.</p>
- <div class="example"><p><code>
- # Override the base URL of the cache key.<br />
- CacheKeyBaseURL http://www.example.com/<br />
- </code></p></div>
+ <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
hosts are accidentally given the same base URL, entries from one virtual host
<code class="directive">CacheMaxExpire</code>, then the latter takes
precedence.</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
CacheLastModifiedFactor 0.5
- </code></p></div>
+ </pre>
+
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<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>
- <div class="example"><p><code>
- # Enable cache lock<br />
- CacheLock on<br /><br />
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# Enable cache lock
+CacheLock on
+ </pre>
+
</div>
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>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
CacheMaxExpire 604800
- </code></p></div>
+ </pre>
+
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
server. This is only used if no valid expire time was supplied with the document.</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
CacheMinExpire 3600
- </code></p></div>
+ </pre>
+
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
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>
- <div class="example"><p><code>
- # Run cache as a normal handler<br />
- CacheQuickHandler off<br /><br />
- </code></p></div>
+ <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
administrator to choose the precise location within the filter chain where
caching is to be performed, by adding the <strong>CACHE</strong> filter to
the chain.</p>
- <div class="example"><p><code>
- # Cache content before mod_include and mod_deflate<br />
- CacheQuickHandler off<br />
- AddOutputFilterByType CACHE;INCLUDES;DEFLATE text/html<br /><br />
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# Cache content before mod_include and mod_deflate
+CacheQuickHandler off
+AddOutputFilterByType CACHE;INCLUDES;DEFLATE text/html
+ </pre>
+
<p>If the CACHE filter is specified more than once, the last instance will
apply.</p>
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>
- <div class="example"><p><code>
- # Serve stale data on error.<br />
- CacheStaleOnError on<br />
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# Serve stale data on error.
+CacheStaleOnError on
+ </pre>
+
</div>
the origin server, and the response may be fulfilled from cache
if the backend resource has not changed.</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
CacheStoreExpired On
- </code></p></div>
+ </pre>
+
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
no-store header values. Resources requiring authorization will
<em>never</em> be cached.</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
CacheStoreNoStore On
- </code></p></div>
+ </pre>
+
<div class="warning"><h3>Warning:</h3>
As described in RFC 2616, the no-store directive is intended to
private header values. Resources requiring authorization will
<em>never</em> be cached.</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
CacheStorePrivate On
- </code></p></div>
+ </pre>
+
<div class="warning"><h3>Warning:</h3>
This directive will allow caching even if the upstream server has
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1305167 -->
+<!-- English Revision: 1305167:1330964 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 504183:1305167 (outdated) -->
+<!-- English Revision: 504183:1330964 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 105569:1305167 (outdated) -->
+<!-- English Revision: 105569:1330964 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
</variants>
maximum size, in bytes, for a document to be considered for storage in
the cache.</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
CacheMaxFileSize 64000
- </code></p></div>
+ </pre>
+
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
minimum size, in bytes, for a document to be considered for storage
in the cache.</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
CacheMinFileSize 64
- </code></p></div>
+ </pre>
+
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<p>This directive only takes effect when the data is being saved to the
cache, as opposed to data being served from the cache.</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
CacheReadSize 102400
- </code></p></div>
+ </pre>
+
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
ensure that the server does not buffer excessively should data arrive faster
than expected.</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
CacheReadTime 1000
- </code></p></div>
+ </pre>
+
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
a configuration file processing error. The <code class="directive"><a href="#cachedirlevels">CacheDirLevels</a></code> and <code class="directive"><a href="#cachedirlength">CacheDirLength</a></code> directives define
the structure of the directories under the specified root directory.</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
CacheRoot c:/cacheroot
- </code></p></div>
+ </pre>
+
</div>
</div>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1305167 -->
+<!-- English Revision: 1305167:1330964 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 515267:1305167 (outdated) -->
+<!-- English Revision: 515267:1330964 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 105989:1305167 (outdated) -->
+<!-- English Revision: 105989:1330964 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
</variants>
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 420990:1326961 (outdated) -->
+<!-- English Revision: 420990:1330964 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 558718:1300876 (outdated) -->
+<!-- English Revision: 558718:1330964 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 105989:1300876 (outdated) -->
+<!-- English Revision: 105989:1330964 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 425124:736298 (outdated) -->
+<!-- English Revision: 425124:1330964 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 105989:736298 (outdated) -->
+<!-- English Revision: 105989:1330964 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 151408:1174747 (outdated) -->
+<!-- English Revision: 151408:1330964 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 659902:1329615 (outdated) -->
+<!-- English Revision: 659902:1330980 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 151408:1329615 (outdated) -->
+<!-- English Revision: 151408:1330980 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 420990:1174747 (outdated) -->
+<!-- English Revision: 420990:1330980 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 420990:1174747 (outdated) -->
+<!-- English Revision: 420990:1330980 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 662627:1174747 (outdated) -->
+<!-- English Revision: 662627:1330980 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<p>This is a simple sample configuration for the impatient.</p>
<div class="example"><h3>Compress only a few types</h3><p><code>
+ <pre class="prettyprint lang-config">
AddOutputFilterByType DEFLATE text/html text/plain text/xml
+ </pre>
+
</code></p></div>
<p>The following configuration, while resulting in more compressed content,
all the configuration details.</p>
<div class="example"><h3>Compress everything except images</h3><p><code>
- <Location /><br />
- <span class="indent">
- # Insert filter<br />
- SetOutputFilter DEFLATE<br />
- <br />
- # Netscape 4.x has some problems...<br />
- BrowserMatch ^Mozilla/4 gzip-only-text/html<br />
- <br />
- # Netscape 4.06-4.08 have some more problems<br />
- BrowserMatch ^Mozilla/4\.0[678] no-gzip<br />
- <br />
- # MSIE masquerades as Netscape, but it is fine<br />
- BrowserMatch \bMSIE !no-gzip !gzip-only-text/html<br />
- # Don't compress images<br />
- SetEnvIfNoCase Request_URI \<br />
- <span class="indent">
- \.(?:gif|jpe?g|png)$ no-gzip dont-vary<br />
- </span>
- <br />
- # Make sure proxies don't deliver the wrong content<br />
- Header append Vary User-Agent env=!dont-vary<br />
- </span>
- </Location>
+ <pre class="prettyprint lang-config">
+<Location />
+ # Insert filter
+ SetOutputFilter DEFLATE
+
+ # Netscape 4.x has some problems...
+ BrowserMatch ^Mozilla/4 gzip-only-text/html
+
+ # Netscape 4.06-4.08 have some more problems
+ BrowserMatch ^Mozilla/4\.0[678] no-gzip
+
+ # MSIE masquerades as Netscape, but it is fine
+ BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
+ # Don't compress images
+ SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
+
+ # Make sure proxies don't deliver the wrong content
+ Header append Vary User-Agent env=!dont-vary
+</Location>
+ </pre>
+
</code></p></div>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
will enable compression for documents in the container where it
is placed:</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
SetOutputFilter DEFLATE
- </code></p></div>
+ </pre>
+
<p>Some popular browsers cannot handle compression of all content
so you may want to set the <code>gzip-only-text/html</code> note to
enabling compression only for the html files of the Apache
documentation:</p>
- <div class="example"><p><code>
- <Directory "/your-server-root/manual"><br />
- <span class="indent">
- AddOutputFilterByType DEFLATE text/html<br />
- </span>
- </Directory>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<Directory "/your-server-root/manual">
+ AddOutputFilterByType DEFLATE text/html
+</Directory>
+ </pre>
+
<p>For browsers that have problems even with compression of all file
types, use the <code class="directive"><a href="../mod/mod_setenvif.html#browsermatch">BrowserMatch</a></code> directive to set the <code>no-gzip</code>
excerpt from the <a href="#recommended">configuration example</a>
defined in the section above:</p>
- <div class="example"><p><code>
- BrowserMatch ^Mozilla/4 gzip-only-text/html<br />
- BrowserMatch ^Mozilla/4\.0[678] no-gzip<br />
- BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
- </code></p></div>
+ <pre class="prettyprint lang-config">
+BrowserMatch ^Mozilla/4 gzip-only-text/html
+BrowserMatch ^Mozilla/4\.0[678] no-gzip
+BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
+ </pre>
+
<p>At first we probe for a <code>User-Agent</code> string that
indicates a Netscape Navigator version of 4.x. These versions
this feature you have to insert the <code>INFLATE</code> filter into
the outputfilter chain using <code class="directive"><a href="../mod/core.html#setoutputfilter">SetOutputFilter</a></code> or <code class="directive"><a href="../mod/mod_mime.html#addoutputfilter">AddOutputFilter</a></code>, for example:</p>
- <div class="example"><p><code>
- <Location /dav-area><br />
- <span class="indent">
- ProxyPass http://example.com/<br />
- SetOutputFilter INFLATE<br />
- </span>
- </Location>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<Location /dav-area>
+ ProxyPass http://example.com/
+ SetOutputFilter INFLATE
+</Location>
+ </pre>
+
<p>This Example will uncompress gzip'ed output from example.com, so other
filters can do further processing with it.
this feature you have to insert the <code>DEFLATE</code> filter into
the input filter chain using <code class="directive"><a href="../mod/core.html#setinputfilter">SetInputFilter</a></code> or <code class="directive"><a href="../mod/mod_mime.html#addinputfilter">AddInputFilter</a></code>, for example:</p>
- <div class="example"><p><code>
- <Location /dav-area><br />
- <span class="indent">
- SetInputFilter DEFLATE<br />
- </span>
- </Location>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<Location /dav-area>
+ SetInputFilter DEFLATE
+</Location>
+ </pre>
+
<p>Now if a request contains a <code>Content-Encoding:
gzip</code> header, the body will be automatically decompressed.
in a typical configuration where the addition of the <code>DEFLATE</code>
filter depends on the <code>User-Agent</code>, you should add:</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
Header append Vary User-Agent
- </code></p></div>
+ </pre>
+
<p>If your decision about compression depends on other information
than request headers (<em>e.g.</em> HTTP version), you have to set the
compliant proxies from caching entirely.</p>
<div class="example"><h3>Example</h3><p><code>
+ <pre class="prettyprint lang-config">
Header set Vary *
+ </pre>
+
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
adding the value to your <a href="../logs.html#accesslog">access log</a>.</p>
<div class="example"><h3>Example</h3><p><code>
- DeflateFilterNote ratio<br />
- <br />
- LogFormat '"%r" %b (%{ratio}n) "%{User-agent}i"' deflate<br />
+ <pre class="prettyprint lang-config">
+ DeflateFilterNote ratio
+
+ LogFormat '"%r" %b (%{ratio}n) "%{User-agent}i"' deflate
CustomLog logs/deflate_log deflate
+ </pre>
+
</code></p></div>
<p>If you want to extract more accurate values from your logs, you
<p>Thus you may log it this way:</p>
<div class="example"><h3>Accurate Logging</h3><p><code>
- DeflateFilterNote Input instream<br />
- DeflateFilterNote Output outstream<br />
- DeflateFilterNote Ratio ratio<br />
- <br />
- LogFormat '"%r" %{outstream}n/%{instream}n (%{ratio}n%%)' deflate<br />
- CustomLog logs/deflate_log deflate
+ <pre class="prettyprint lang-config">
+DeflateFilterNote Input instream
+DeflateFilterNote Output outstream
+DeflateFilterNote Ratio ratio
+
+LogFormat '"%r" %{outstream}n/%{instream}n (%{ratio}n%%)' deflate
+CustomLog logs/deflate_log deflate
+</pre>
+
</code></p></div>
<h3>See also</h3>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1300876 -->
+<!-- English Revision: 1300876:1330980 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 420990:1300876 (outdated) -->
+<!-- English Revision: 420990:1330980 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 151408:1300876 (outdated) -->
+<!-- English Revision: 151408:1330980 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
</variants>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 420990:1326758 (outdated) -->
+<!-- English Revision: 420990:1330980 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 151408:1326758 (outdated) -->
+<!-- English Revision: 151408:1330980 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
-<!-- English Revision: 1307726:1326758 (outdated) -->
+<!-- English Revision: 1307726:1330980 (outdated) -->
<!-- =====================================================
Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
Reviewed by: Orhan Berent <berent belgeler.org>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 559006:1328323 (outdated) -->
+<!-- English Revision: 559006:1330980 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
disables the echo server.</p>
<div class="example"><h3>Example</h3><p><code>
+ <pre class="prettyprint lang-config">
ProtocolEcho On
+ </pre>
+
</code></p></div>
</div>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 654507:1174747 (outdated) -->
+<!-- English Revision: 654507:1330988 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 1174747 -->
+<!-- English Revision: 1174747:1330988 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 420990:1174747 (outdated) -->
+<!-- English Revision: 420990:1330988 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variants>
<variant>en</variant>
<variant outdated="yes">fr</variant>
- <variant>ja</variant>
+ <variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
</variants>
</metafile>
<code class="program"><a href="../programs/httpd.html">httpd</a></code> process.</p>
<div class="example"><h3>Example</h3><p><code>
+ <pre class="prettyprint lang-config">
PassEnv LD_LIBRARY_PATH
+ </pre>
+
</code></p></div>
</div>
HTTP Server modules, and passed on to CGI scripts and SSI pages.</p>
<div class="example"><h3>Example</h3><p><code>
+ <pre class="prettyprint lang-config">
SetEnv SPECIAL_PATH /foo/bin
+ </pre>
+
</code></p></div>
<div class="note"><p>The internal environment variables set by this directive are set
on to CGI scripts and SSI pages.</p>
<div class="example"><h3>Example</h3><p><code>
+ <pre class="prettyprint lang-config">
UnsetEnv LD_LIBRARY_PATH
+ </pre>
+
</code></p></div>
</div>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1174747 -->
+<!-- English Revision: 1174747:1330988 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 420990:1174747 (outdated) -->
+<!-- English Revision: 420990:1330988 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 105989:1174747 (outdated) -->
+<!-- English Revision: 105989:1330988 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
- <variant>tr</variant>
+ <variant outdated="yes">tr</variant>
</variants>
</metafile>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
-<!-- English Revision: 1174747 -->
+<!-- English Revision: 1174747:1330988 (outdated) -->
<!-- =====================================================
Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
Reviewed by: Orhan Berent <berent belgeler.org>
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 105989:420990 (outdated) -->
+<!-- English Revision: 105989:1330988 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<code class="directive"><a href="#expiresbytype">ExpiresByType</a></code> directives
can also be defined in a more readable syntax of the form:</p>
- <div class="example"><p><code>
- ExpiresDefault "<var>base</var> [plus <var>num</var> <var>type</var>]
- [<var>num</var> <var>type</var>] ..."<br />
- ExpiresByType type/encoding "<var>base</var> [plus <var>num</var> <var>type</var>]
- [<var>num</var> <var>type</var>] ..."
- </code></p></div>
+ <pre class="prettyprint lang-config">
+ExpiresDefault "<var>base</var> [plus <var>num</var> <var>type</var>] [<var>num</var> <var>type</var>] ..."
+ExpiresByType type/encoding "<var>base</var> [plus <var>num</var> <var>type</var>] [<var>num</var> <var>type</var>] ..."
+ </pre>
+
<p>where <var>base</var> is one of:</p>
make documents expire 1 month after being accessed, by
default:</p>
- <div class="example"><p><code>
- ExpiresDefault "access plus 1 month"<br />
- ExpiresDefault "access plus 4 weeks"<br />
- ExpiresDefault "access plus 30 days"
- </code></p></div>
+ <pre class="prettyprint lang-config">
+ExpiresDefault "access plus 1 month"
+ExpiresDefault "access plus 4 weeks"
+ExpiresDefault "access plus 30 days"
+ </pre>
+
<p>The expiry time can be fine-tuned by adding several
'<var>num</var> <var>type</var>' clauses:</p>
- <div class="example"><p><code>
- ExpiresByType text/html "access plus 1 month 15
- days 2 hours"<br />
- ExpiresByType image/gif "modification plus 5 hours 3
- minutes"
- </code></p></div>
+ <pre class="prettyprint lang-config">
+ExpiresByType text/html "access plus 1 month 15 days 2 hours"
+ExpiresByType image/gif "modification plus 5 hours 3 minutes"
+ </pre>
+
<p>Note that if you use a modification date based setting, the
Expires header will <strong>not</strong> be added to content
repeatedly within a relatively short timespan).</p>
<div class="example"><h3>Example:</h3><p><code>
- # enable expirations<br />
- ExpiresActive On<br />
- # expire GIF images after a month in the client's cache<br />
- ExpiresByType image/gif A2592000<br />
- # HTML documents are good for a week from the<br />
- # time they were changed<br />
- ExpiresByType text/html M604800
+ <pre class="prettyprint lang-config">
+# enable expirations
+ExpiresActive On
+# expire GIF images after a month in the client's cache
+ExpiresByType image/gif A2592000
+# HTML documents are good for a week from the
+# time they were changed
+ExpiresByType text/html M604800
+ </pre>
+
</code></p></div>
<p>Note that this directive only has effect if
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1307365 -->
+<!-- English Revision: 1307365:1330988 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 420990:1307365 (outdated) -->
+<!-- English Revision: 420990:1330988 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 420990:1307365 (outdated) -->
+<!-- English Revision: 420990:1330988 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
</variants>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 420990:1174747 (outdated) -->
+<!-- English Revision: 420990:1330988 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 105989:1174747 (outdated) -->
+<!-- English Revision: 105989:1330988 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 420990:1174747 (outdated) -->
+<!-- English Revision: 420990:1330994 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
order in the configuration file and by placement in <a href="../sections.html#mergin">configuration sections</a>. These
two directives have a different effect if reversed:</p>
- <div class="example"><p><code>
- RequestHeader append MirrorID "mirror 12"<br />
- RequestHeader unset MirrorID
- </code></p></div>
+ <pre class="prettyprint lang-config">
+RequestHeader append MirrorID "mirror 12"
+RequestHeader unset MirrorID
+ </pre>
+
<p>This way round, the <code>MirrorID</code> header is not set. If
reversed, the MirrorID header is set to "mirror 12".</p>
Copy all request headers that begin with "TS" to the
response headers:
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
Header echo ^TS
- </code></p></div>
+ </pre>
+
</li>
<li>
the client to intuit load on the server or in isolating
bottlenecks between the client and the server.
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
Header set MyHeader "%D %t"
- </code></p></div>
+ </pre>
+
<p>results in this header being added to the response:</p>
<li>
Say hello to Joe
- <div class="example"><p><code>
- Header set MyHeader "Hello Joe. It took %D microseconds \<br />
- for Apache to serve this request."
- </code></p></div>
+ <pre class="prettyprint lang-config">
+Header set MyHeader "Hello Joe. It took %D microseconds for Apache to serve this request."
+ </pre>
+
<p>results in this header being added to the response:</p>
stimulus. Note that this example requires the services of the
<code class="module"><a href="../mod/mod_setenvif.html">mod_setenvif</a></code> module.
- <div class="example"><p><code>
- SetEnvIf MyRequestHeader myvalue HAVE_MyRequestHeader<br />
- Header set MyHeader "%D %t mytext" env=HAVE_MyRequestHeader
- </code></p></div>
+ <pre class="prettyprint lang-config">
+SetEnvIf MyRequestHeader myvalue HAVE_MyRequestHeader
+Header set MyHeader "%D %t mytext" env=HAVE_MyRequestHeader
+ </pre>
+
<p>If the header <code>MyRequestHeader: myvalue</code> is present on
the HTTP request, the response will contain the following header:</p>
description</a>) by replacing <var>https:</var> with
<var>http:</var> in the <var>Destination</var> header:
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
RequestHeader edit Destination ^https: http: early
- </code></p></div>
+ </pre>
+
</li>
<li>
<code>NO_STORE</code> environment variables all existed for the
request):
- <div class="example"><p><code>
- Header merge Cache-Control no-cache env=CGI<br />
- Header merge Cache-Control no-cache env=NO_CACHE<br />
- Header merge Cache-Control no-store env=NO_STORE
- </code></p></div>
+ <pre class="prettyprint lang-config">
+Header merge Cache-Control no-cache env=CGI
+Header merge Cache-Control no-cache env=NO_CACHE
+Header merge Cache-Control no-store env=NO_STORE
+ </pre>
+
<p>then the response would contain the following header:</p>
</li>
<li>
Set a test cookie if and only if the client didn't send us a cookie
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
Header set Set-Cookie testcookie "expr=-z %{req:Cookie}"
- </code></p></div>
+ </pre>
+
</li>
</ol>
</div>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1231446 -->
+<!-- English Revision: 1231446:1331006 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 151408:1231446 (outdated) -->
+<!-- English Revision: 151408:1331006 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 151408:1231446 (outdated) -->
+<!-- English Revision: 151408:1331006 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
</variants>
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 151408:1174747 (outdated) -->
+<!-- English Revision: 151408:1331006 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 656287:1204183 (outdated) -->
+<!-- English Revision: 656287:1331006 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<p>To configure <code class="module"><a href="../mod/mod_info.html">mod_info</a></code>, add the following to your
<code>httpd.conf</code> file.</p>
- <div class="example"><p><code>
- <Location /server-info><br />
- <span class="indent">
- SetHandler server-info<br />
- </span>
- </Location>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<Location /server-info>
+ SetHandler server-info
+</Location>
+ </pre>
+
<p>You may wish to use <code class="module"><a href="../mod/mod_access.html">mod_access</a></code> inside the
<code class="directive"><a href="../mod/core.html#location"><Location></a></code>
directive to limit access to your server configuration
information:</p>
- <div class="example"><p><code>
- <Location /server-info><br />
- <span class="indent">
- SetHandler server-info<br />
- Require host example.com<br />
- </span>
- </Location>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<Location /server-info>
+ SetHandler server-info
+ Require host example.com
+</Location>
+ </pre>
+
<p>Once configured, the server information is obtained by
accessing <code>http://your.host.example.com/server-info</code></p>
to limit access to your server configuration information.</p>
<div class="example"><h3>Access control</h3><p><code>
- <Location /server-info><br />
- <span class="indent">
- SetHandler server-info<br />
- Order allow,deny<br />
- # Allow access from server itself<br />
- Allow from 127.0.0.1<br />
- # Additionally, allow access from local workstation<br />
- Allow from 192.168.1.17<br />
- </span>
- </Location>
+ <pre class="prettyprint lang-config">
+<Location /server-info>
+ SetHandler server-info
+ Order allow,deny
+ # Allow access from server itself
+ Allow from 127.0.0.1
+ # Additionally, allow access from local workstation
+ Allow from 192.168.1.17
+</Location>
+ </pre>
+
</code></p></div>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
HTML interpreted, <strong>Additional Information</strong> for
the module <var>module-name</var>. Example:</p>
- <div class="example"><p><code>
- AddModuleInfo mod_deflate.c 'See <a \<br />
- <span class="indent">
- href="http://www.apache.org/docs/trunk/mod/mod_deflate.html">\<br />
- http://www.apache.org/docs/trunk/mod/mod_deflate.html</a>'
- </span>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+AddModuleInfo mod_deflate.c 'See <a \
+ href="http://www.apache.org/docs/trunk/mod/mod_deflate.html">\
+ http://www.apache.org/docs/trunk/mod/mod_deflate.html</a>'
+ </pre>
+
</div>
</div>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1174747 -->
+<!-- English Revision: 1174747:1331006 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 450473:1174747 (outdated) -->
+<!-- English Revision: 450473:1331006 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 125277:1174747 (outdated) -->
+<!-- English Revision: 125277:1331006 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
</variants>
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 395228:1041030 (outdated) -->
+<!-- English Revision: 395228:1331006 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> to increase the performance of HTTP Basic
authentication provided by <code class="module"><a href="../mod/mod_authnz_ldap.html">mod_authnz_ldap</a></code>.</p>
- <div class="example"><p><code>
- # Enable the LDAP connection pool and shared<br />
- # memory cache. Enable the LDAP cache status<br />
- # handler. Requires that mod_ldap and mod_authnz_ldap<br />
- # be loaded. Change the "yourdomain.example.com" to<br />
- # match your domain.<br />
- <br />
- LDAPSharedCacheSize 500000<br />
- LDAPCacheEntries 1024<br />
- LDAPCacheTTL 600<br />
- LDAPOpCacheEntries 1024<br />
- LDAPOpCacheTTL 600<br />
- <br />
- <Location /ldap-status><br />
- <span class="indent">
- SetHandler ldap-status<br />
-
- Require host yourdomain.example.com<br />
-
- Satisfy any<br />
- AuthType Basic<br />
- AuthName "LDAP Protected"<br />
- AuthBasicProvider ldap<br />
- AuthLDAPURL ldap://127.0.0.1/dc=example,dc=com?uid?one<br />
- Require valid-user<br />
- </span>
- </Location>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# Enable the LDAP connection pool and shared
+# memory cache. Enable the LDAP cache status
+# handler. Requires that mod_ldap and mod_authnz_ldap
+# be loaded. Change the "yourdomain.example.com" to
+# match your domain.
+
+LDAPSharedCacheSize 500000
+LDAPCacheEntries 1024
+LDAPCacheTTL 600
+LDAPOpCacheEntries 1024
+LDAPOpCacheTTL 600
+
+<Location /ldap-status>
+ SetHandler ldap-status
+
+ Require host yourdomain.example.com
+
+ Satisfy any
+ AuthType Basic
+ AuthName "LDAP Protected"
+ AuthBasicProvider ldap
+ AuthLDAPURL ldap://127.0.0.1/dc=example,dc=com?uid?one
+ Require valid-user
+</Location>
+ </pre>
+
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="pool" id="pool">LDAP Connection Pool</a></h2>
following directives could be used to access the
<code class="module"><a href="../mod/mod_ldap.html">mod_ldap</a></code> cache information:</p>
- <div class="example"><p><code>
- <Location /server/cache-info><br />
- <span class="indent">
- SetHandler ldap-status<br />
- </span>
- </Location>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<Location /server/cache-info>
+ SetHandler ldap-status
+</Location>
+ </pre>
+
<p>By fetching the URL <code>http://servername/cache-info</code>,
the administrator can get a status report of every cache that is used
optional client certificates to be used, as well as the type of
encryption to be used on the connection (none, SSL or TLS/STARTTLS).</p>
- <div class="example"><p><code>
- # Establish an SSL LDAP connection on port 636. Requires that <br />
- # mod_ldap and mod_authnz_ldap be loaded. Change the <br />
- # "yourdomain.example.com" to match your domain.<br />
- <br />
- LDAPTrustedGlobalCert CA_DER /certs/certfile.der<br />
- <br />
- <Location /ldap-status><br />
- <span class="indent">
- SetHandler ldap-status<br />
-
- Require host yourdomain.example.com<br />
-
- Satisfy any<br />
- AuthType Basic<br />
- AuthName "LDAP Protected"<br />
- AuthBasicProvider ldap<br />
- AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?one<br />
- Require valid-user<br />
- </span>
- </Location>
- </code></p></div>
-
- <div class="example"><p><code>
- # Establish a TLS LDAP connection on port 389. Requires that <br />
- # mod_ldap and mod_authnz_ldap be loaded. Change the <br />
- # "yourdomain.example.com" to match your domain.<br />
- <br />
- LDAPTrustedGlobalCert CA_DER /certs/certfile.der<br />
- <br />
- <Location /ldap-status><br />
- <span class="indent">
- SetHandler ldap-status<br />
-
- Require host yourdomain.example.com<br />
-
- Satisfy any<br />
- AuthType Basic<br />
- AuthName "LDAP Protected"<br />
- AuthBasicProvider ldap<br />
- AuthLDAPURL ldap://127.0.0.1/dc=example,dc=com?uid?one TLS<br />
- Require valid-user<br />
- </span>
- </Location>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# Establish an SSL LDAP connection on port 636. Requires that
+# mod_ldap and mod_authnz_ldap be loaded. Change the
+# "yourdomain.example.com" to match your domain.
+
+LDAPTrustedGlobalCert CA_DER /certs/certfile.der
+
+<Location /ldap-status>
+ SetHandler ldap-status
+
+ Require host yourdomain.example.com
+
+ Satisfy any
+ AuthType Basic
+ AuthName "LDAP Protected"
+ AuthBasicProvider ldap
+ AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?one
+ Require valid-user
+</Location>
+ </pre>
+
+
+ <pre class="prettyprint lang-config">
+# Establish a TLS LDAP connection on port 389. Requires that
+# mod_ldap and mod_authnz_ldap be loaded. Change the
+# "yourdomain.example.com" to match your domain.
+
+LDAPTrustedGlobalCert CA_DER /certs/certfile.der
+
+<Location /ldap-status>
+ SetHandler ldap-status
+
+ Require host yourdomain.example.com
+
+ Satisfy any
+ AuthType Basic
+ AuthName "LDAP Protected"
+ AuthBasicProvider ldap
+ AuthLDAPURL ldap://127.0.0.1/dc=example,dc=com?uid?one TLS
+ Require valid-user
+</Location>
+ </pre>
+
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
an error when an attempt is made to contact the LDAP server at
runtime.</p>
- <div class="example"><p><code>
- # Specify a Netscape CA certificate file<br />
- LDAPTrustedGlobalCert CA_CERT7_DB /certs/cert7.db<br />
- # Specify an optional key3.db file for client certificate support<br />
- LDAPTrustedGlobalCert CERT_KEY3_DB /certs/key3.db<br />
- # Specify the secmod file if required<br />
- LDAPTrustedGlobalCert CA_SECMOD /certs/secmod<br />
- <Location /ldap-status><br />
- <span class="indent">
- SetHandler ldap-status<br />
-
- Require host yourdomain.example.com<br />
-
- Satisfy any<br />
- AuthType Basic<br />
- AuthName "LDAP Protected"<br />
- AuthBasicProvider ldap<br />
- LDAPTrustedClientCert CERT_NICKNAME <nickname> [password]<br />
- AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?one<br />
- Require valid-user<br />
- </span>
- </Location>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# Specify a Netscape CA certificate file
+LDAPTrustedGlobalCert CA_CERT7_DB /certs/cert7.db
+# Specify an optional key3.db file for client certificate support
+LDAPTrustedGlobalCert CERT_KEY3_DB /certs/key3.db
+# Specify the secmod file if required
+LDAPTrustedGlobalCert CA_SECMOD /certs/secmod
+<Location /ldap-status>
+ SetHandler ldap-status
+
+ Require host yourdomain.example.com
+
+ Satisfy any
+ AuthType Basic
+ AuthName "LDAP Protected"
+ AuthBasicProvider ldap
+ LDAPTrustedClientCert CERT_NICKNAME <nickname> [password]
+ AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?one
+ Require valid-user
+</Location>
+ </pre>
+
LDAPTrustedMode parameter. If an ldaps:// URL is specified,
SSL mode is forced, override this directive.</p>
- <div class="example"><p><code>
- # Specify two CA certificate files<br />
- LDAPTrustedGlobalCert CA_DER /certs/cacert1.der<br />
- LDAPTrustedGlobalCert CA_BASE64 /certs/cacert2.pem<br />
- # Specify a client certificate file and key<br />
- LDAPTrustedGlobalCert CERT_BASE64 /certs/cert1.pem<br />
- LDAPTrustedGlobalCert KEY_BASE64 /certs/key1.pem [password]<br />
- # Do not use this directive, as it will throw an error<br />
- #LDAPTrustedClientCert CERT_BASE64 /certs/cert1.pem<br />
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# Specify two CA certificate files
+LDAPTrustedGlobalCert CA_DER /certs/cacert1.der
+LDAPTrustedGlobalCert CA_BASE64 /certs/cacert2.pem
+# Specify a client certificate file and key
+LDAPTrustedGlobalCert CERT_BASE64 /certs/cert1.pem
+LDAPTrustedGlobalCert KEY_BASE64 /certs/key1.pem [password]
+# Do not use this directive, as it will throw an error
+#LDAPTrustedClientCert CERT_BASE64 /certs/cert1.pem
+ </pre>
+
(ldaps://) support has been deprecated to be replaced with TLS,
although the SSL functionality still works.</p>
- <div class="example"><p><code>
- # Specify two CA certificate files<br />
- LDAPTrustedGlobalCert CA_DER /certs/cacert1.der<br />
- LDAPTrustedGlobalCert CA_BASE64 /certs/cacert2.pem<br />
- <Location /ldap-status><br />
- <span class="indent">
- SetHandler ldap-status<br />
-
- Require host yourdomain.example.com<br />
-
- LDAPTrustedClientCert CERT_BASE64 /certs/cert1.pem<br />
- LDAPTrustedClientCert KEY_BASE64 /certs/key1.pem<br />
- # CA certs respecified due to per-directory client certs<br />
- LDAPTrustedClientCert CA_DER /certs/cacert1.der<br />
- LDAPTrustedClientCert CA_BASE64 /certs/cacert2.pem<br />
- Satisfy any<br />
- AuthType Basic<br />
- AuthName "LDAP Protected"<br />
- AuthBasicProvider ldap<br />
- AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?one<br />
- Require valid-user<br />
- </span>
- </Location>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# Specify two CA certificate files
+LDAPTrustedGlobalCert CA_DER /certs/cacert1.der
+LDAPTrustedGlobalCert CA_BASE64 /certs/cacert2.pem
+<Location /ldap-status>
+ SetHandler ldap-status
+
+ Require host yourdomain.example.com
+
+ LDAPTrustedClientCert CERT_BASE64 /certs/cert1.pem
+ LDAPTrustedClientCert KEY_BASE64 /certs/key1.pem
+ # CA certs respecified due to per-directory client certs
+ LDAPTrustedClientCert CA_DER /certs/cacert1.der
+ LDAPTrustedClientCert CA_BASE64 /certs/cacert2.pem
+ Satisfy any
+ AuthType Basic
+ AuthName "LDAP Protected"
+ AuthBasicProvider ldap
+ AuthLDAPURL ldaps://127.0.0.1/dc=example,dc=com?uid?one
+ Require valid-user
+</Location>
+ </pre>
+
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1300924 -->
+<!-- English Revision: 1300924:1331035 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
</variants>
</metafile>
<p>For example, the following two sets of directives have
exactly the same effect:</p>
- <div class="example"><p><code>
- # CustomLog with format nickname<br />
- LogFormat "%h %l %u %t \"%r\" %>s %b" common<br />
- CustomLog logs/access_log common<br />
- <br />
- # CustomLog with explicit format string<br />
- CustomLog logs/access_log "%h %l %u %t \"%r\" %>s %b"
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# CustomLog with format nickname
+LogFormat "%h %l %u %t \"%r\" %>s %b" common
+CustomLog logs/access_log common
+
+# CustomLog with explicit format string
+CustomLog logs/access_log "%h %l %u %t \"%r\" %>s %b"
+ </pre>
+
<p>The third argument is optional and controls whether or
not to log a particular request. The condition can be the
images on your server in a separate logfile but not in your main
log, you can use:</p>
- <div class="example"><p><code>
- SetEnvIf Request_URI \.gif$ gif-image<br />
- CustomLog gif-requests.log common env=gif-image<br />
- CustomLog nongif-requests.log common env=!gif-image
- </code></p></div>
+ <pre class="prettyprint lang-config">
+SetEnvIf Request_URI \.gif$ gif-image
+CustomLog gif-requests.log common env=gif-image
+CustomLog nongif-requests.log common env=!gif-image
+ </pre>
+
<p>Or, to reproduce the behavior of the old RefererIgnore
directive, you might use the following:</p>
- <div class="example"><p><code>
- SetEnvIf Referer example\.com localreferer<br />
- CustomLog referer.log referer env=!localreferer
- </code></p></div>
+ <pre class="prettyprint lang-config">
+SetEnvIf Referer example\.com localreferer
+CustomLog referer.log referer env=!localreferer
+ </pre>
+
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
percent signs (<code>%</code>).</p>
<div class="example"><h3>Example</h3><p><code>
+ <pre class="prettyprint lang-config">
LogFormat "%v %h %l %u %t \"%r\" %>s %b" vhost_common
+ </pre>
+
</code></p></div>
+
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
other format has been specified.</p>
<div class="example"><h3>Example</h3><p><code>
- LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\""<br />
- TransferLog logs/access_log
+ <pre class="prettyprint lang-config">
+LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\""
+TransferLog logs/access_log
+ </pre>
+
</code></p></div>
</div>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 579425:1310330 (outdated) -->
+<!-- English Revision: 579425:1331035 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 105989:1310330 (outdated) -->
+<!-- English Revision: 105989:1331035 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variant>en</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
- <variant>tr</variant>
+ <variant outdated="yes">tr</variant>
</variants>
</metafile>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
-<!-- English Revision: 1310330 -->
+<!-- English Revision: 1310330:1331035 (outdated) -->
<!-- =====================================================
Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
Reviewed by: Orhan Berent <berent belgeler.org>
<p>The basic module loading directive is</p>
-<div class="example"><p><code>
+<pre class="prettyprint lang-config">
LoadModule lua_module modules/mod_lua.so
-</code></p></div>
+</pre>
+
<p>
<code>mod_lua</code> provides a handler named <code>lua-script</code>,
which can be used with an <code>AddHandler</code> directive:</p>
-<div class="example"><p><code>
+<pre class="prettyprint lang-config">
AddHandler lua-script .lua
-</code></p></div>
+</pre>
+
<p>
This will cause <code>mod_lua</code> to handle requests for files
for development.</p>
<div class="example"><h3>Examples:</h3><p><code>
- LuaCodeCache stat<br />
- LuaCodeCache forever<br />
- LuaCodeCache never<br />
+ <pre class="prettyprint lang-config">
+LuaCodeCache stat
+LuaCodeCache forever
+LuaCodeCache never
+ </pre>
+
</code></p></div>
<p>Example:</p>
-<div class="example"><pre>
+<pre class="prettyprint lang-config">
# httpd.conf
LuaHookTranslateName /scripts/conf/hooks.lua silly_mapper
-</pre></div>
+</pre>
+
<pre class="prettyprint lang-lua">
-- /scripts/conf/hooks.lua --
be careful writing your regular expressions to avoid security
issues.</p>
<div class="example"><h3>Examples:</h3><p><code>
+ <pre class="prettyprint lang-config">
LuaMapHandler /(\w+)/(/w+) /scripts/$1.lua handle_$2
+ </pre>
+
</code></p></div>
<p>This would match uri's such as /photos/show?id=9
to the file /scripts/photos.lua and invoke the
handler function handle_show on the lua vm after
loading that file.</p>
-<div class="example"><p><code>
+<pre class="prettyprint lang-config">
LuaMapHandler /bingo /scripts/wombat.lua
-</code></p></div>
+</pre>
+
<p>This would invoke the "handle" function, which
is the default if no specific function name is
provided.</p>
lua vms.</p>
<div class="example"><h3>Examples:</h3><p><code>
- LuaPackagePath /scripts/lib/?.lua<br />
- LuaPackagePath /scripts/lib/?/init.lua
+ <pre class="prettyprint lang-config">
+LuaPackagePath /scripts/lib/?.lua
+LuaPackagePath /scripts/lib/?/init.lua
+ </pre>
+
</code></p></div>
</div>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1238738:1330137 (outdated) -->
+<!-- English Revision: 1238738:1331035 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 659902:1301732 (outdated) -->
+<!-- English Revision: 659902:1331214 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
and the <code>.var</code> file should be associated with the
<code>type-map</code> handler with an <code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code> directive:</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
AddHandler type-map .var
- </code></p></div>
+ </pre>
+
<p>A request for <code>document.html</code> in this directory will
result in <code>document.html.var</code> being consulted, and the
(equally acceptable) then the first matching variant, <code>en</code>,
will be served.</p>
- <div class="example"><p><code>
- LanguagePriority en fr de<br />
- ForceLanguagePriority Prefer
- </code></p></div>
+ <pre class="prettyprint lang-config">
+LanguagePriority en fr de
+ForceLanguagePriority Prefer
+ </pre>
+
<p><code>ForceLanguagePriority Fallback</code> uses
<code class="directive"><a href="#languagepriority">LanguagePriority</a></code> to
language response, but such a variant isn't found, then the first
variant from the <code class="directive"><a href="#languagepriority">LanguagePriority</a></code> list below will be served.</p>
- <div class="example"><p><code>
- LanguagePriority en fr de<br />
- ForceLanguagePriority Fallback
- </code></p></div>
+ <pre class="prettyprint lang-config">
+LanguagePriority en fr de
+ForceLanguagePriority Fallback
+ </pre>
+
<p>Both options, <code>Prefer</code> and <code>Fallback</code>, may be
specified, so either the first matching variant from <code class="directive"><a href="#languagepriority">LanguagePriority</a></code> will be served if
express a preference, when handling a Multiviews request. The list
of <var>MIME-lang</var> are in order of decreasing preference.</p>
- <div class="example"><h3>Example:</h3><p><code>
+ <pre class="prettyprint lang-config">
LanguagePriority en fr de
- </code></p></div>
+ </pre>
+
<p>For a request for <code>foo.html</code>, where
<code>foo.html.fr</code> and <code>foo.html.de</code> both
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1174747 -->
+<!-- English Revision: 1174747:1331215 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 420990:1174747 (outdated) -->
+<!-- English Revision: 420990:1331215 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
<variant outdated="yes">ja</variant>
</variants>
</metafile>
the documentation from <code class="module"><a href="../mod/mod_cache.html">mod_cache</a></code>.</p>
<div class="example"><h3>Reverse Proxy</h3><p><code>
- ProxyPass /foo http://foo.example.com/bar<br />
- ProxyPassReverse /foo http://foo.example.com/bar
+ <pre class="prettyprint lang-config">
+ProxyPass /foo http://foo.example.com/bar
+ProxyPassReverse /foo http://foo.example.com/bar
+ </pre>
+
</code></p></div>
<div class="example"><h3>Forward Proxy</h3><p><code>
- ProxyRequests On<br />
- ProxyVia On<br />
- <br />
- <Proxy *><br />
- <span class="indent">
- Require host internal.example.com<br />
- </span>
- </Proxy>
+ <pre class="prettyprint lang-config">
+ProxyRequests On
+ProxyVia On
+
+<Proxy *>
+ Require host internal.example.com
+</Proxy>
+ </pre>
+
</code></p></div>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<code class="directive"><a href="#proxypassmatch">ProxyPassMatch</a></code> when used
for a reverse proxy:</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
ProxyPass /example http://backend.example.com connectiontimeout=5 timeout=30
- </code></p></div>
+ </pre>
+
<p>This will create a worker associated with the origin server URL
<code>http://backend.example.com</code> and using the given timeout
values. When used in a forward proxy, workers are usually defined
via the <code class="directive"><a href="#proxyset">ProxySet</a></code> directive:</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
ProxySet http://backend.example.com connectiontimeout=5 timeout=30
- </code></p></div>
+ </pre>
+
<p>or alternatively using <code class="directive"><a href="#proxy">Proxy</a></code>
and <code class="directive"><a href="#proxyset">ProxySet</a></code>:</p>
- <div class="example"><p><code>
- <Proxy http://backend.example.com><br />
- <span class="indent">
- ProxySet connectiontimeout=5 timeout=30
- </span>
- </Proxy>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<Proxy http://backend.example.com>
+ ProxySet connectiontimeout=5 timeout=30
+</Proxy>
+ </pre>
+
<p>Using explicitly configured workers in the forward mode is
not very common, because forward proxies usually communicate with many
<p>The URL identifying a direct worker is the URL of its
origin server including any path components given:</p>
- <div class="example"><p><code>
- ProxyPass /examples http://backend.example.com/examples<br />
- ProxyPass /docs http://backend.example.com/docs
- </code></p></div>
+ <pre class="prettyprint lang-config">
+ProxyPass /examples http://backend.example.com/examples
+ProxyPass /docs http://backend.example.com/docs
+ </pre>
+
<p>This example defines two different workers, each using a separate
connection pool and configuration.</p>
the URL of some worker is a leading substring of the URL of another
worker defined later in the configuration file. In the following example</p>
- <div class="example"><p><code>
- ProxyPass /apps http://backend.example.com/ timeout=60<br />
- ProxyPass /examples http://backend.example.com/examples timeout=10
- </code></p></div>
+ <pre class="prettyprint lang-config">
+ProxyPass /apps http://backend.example.com/ timeout=60
+ProxyPass /examples http://backend.example.com/examples timeout=10
+ </pre>
+
<p>the second worker isn't actually created. Instead the first
worker is used. The benefit is, that there is only one connection pool,
<p>You can control who can access your proxy via the <code class="directive"><a href="#proxy"><Proxy></a></code> control block as in
the following example:</p>
- <div class="example"><p><code>
- <Proxy *><br />
- <span class="indent">
- Require ip 192.168.0<br />
- </span>
- </Proxy>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<Proxy *>
+ Require ip 192.168.0
+</Proxy>
+ </pre>
+
<p>For more information on access control directives, see
<code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code>.</p>
<p>These are the <code>force-proxy-request-1.0</code> and
<code>proxy-nokeepalive</code> notes.</p>
- <div class="example"><p><code>
- <Location /buggyappserver/><br />
- <span class="indent">
- ProxyPass http://buggyappserver:7001/foo/<br />
- SetEnv force-proxy-request-1.0 1<br />
- SetEnv proxy-nokeepalive 1<br />
- </span>
- </Location>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<Location /buggyappserver/>
+ ProxyPass http://buggyappserver:7001/foo/
+ SetEnv force-proxy-request-1.0 1
+ SetEnv proxy-nokeepalive 1
+</Location>
+ </pre>
+
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<code class="directive"><a href="#proxyremote">ProxyRemote</a></code> proxy server(s).</p>
<div class="example"><h3>Example</h3><p><code>
- ProxyRemote * http://firewall.example.com:81<br />
- NoProxy .example.com 192.168.112.0/21
+ <pre class="prettyprint lang-config">
+ProxyRemote * http://firewall.example.com:81
+NoProxy .example.com 192.168.112.0/21
+ </pre>
+
</code></p></div>
<p>The <var>host</var> arguments to the <code class="directive">NoProxy</code>
<code>yournetwork.example.com</code> to access content via your proxy
server:</p>
- <div class="example"><p><code>
- <Proxy *><br />
- <span class="indent">
- Require host yournetwork.example.com<br />
- </span>
- </Proxy>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<Proxy *>
+ Require host yournetwork.example.com
+</Proxy>
+ </pre>
+
<p>The following example will process all files in the <code>foo</code>
directory of <code>example.com</code> through the <code>INCLUDES</code>
filter when they are sent through the proxy server:</p>
- <div class="example"><p><code>
- <Proxy http://example.com/foo/*><br />
- <span class="indent">
- SetOutputFilter INCLUDES<br />
- </span>
- </Proxy>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<Proxy http://example.com/foo/*>
+ SetOutputFilter INCLUDES
+</Proxy>
+ </pre>
+
<h3>See also</h3>
well. That may slow down the startup time of the server.</p>
<div class="example"><h3>Example</h3><p><code>
+ <pre class="prettyprint lang-config">
ProxyBlock news.example.com auctions.example.com friends.example.com
+ </pre>
+
</code></p></div>
<p>Note that <code>example</code> would also be sufficient to match any
<p>Note also that</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
ProxyBlock *
- </code></p></div>
+ </pre>
+
<p>blocks connections to all sites.</p>
will be generated.</p>
<div class="example"><h3>Example</h3><p><code>
+ <pre class="prettyprint lang-config">
ProxyRemote * http://firewall.example.com:81<br />
NoProxy .example.com 192.168.112.0/21<br />
ProxyDomain .example.com
+ </pre>
+
</code></p></div>
</div>
be set to prevent infinite proxy loops, or a DoS attack.</p>
<div class="example"><h3>Example</h3><p><code>
+ <pre class="prettyprint lang-config">
ProxyMaxForwards 15
+ </pre>
+
</code></p></div>
<p>Note that setting <code class="directive">ProxyMaxForwards</code> is a
<p>Suppose the local server has address <code>http://example.com/</code>;
then</p>
- <div class="example"><p><code>
- <Location /mirror/foo/><br />
- <span class="indent">
- ProxyPass http://backend.example.com/<br />
- </span>
- </Location><br />
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<Location /mirror/foo/>
+ ProxyPass http://backend.example.com/
+</Location>
+ </pre>
+
<p>will cause a local request for
<code>http://example.com/mirror/foo/bar</code> to be internally converted
the below syntax is that it allows for dynamic control via the
<a href="mod_proxy_balancer.html#balancer_manager">Balancer Manager</a> interface:</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
ProxyPass /mirror/foo/ http://backend.example.com/
- </code></p></div>
+ </pre>
+
<div class="warning">
<p>If the first argument ends with a trailing <strong>/</strong>, the second
<p>The <code>!</code> directive is useful in situations where you don't want
to reverse-proxy a subdirectory, <em>e.g.</em></p>
- <div class="example"><p><code>
- <Location /mirror/foo/><br />
- <span class="indent">
- ProxyPass http://backend.example.com/<br />
- </span>
- </Location><br />
- <Location /mirror/foo/i><br />
- <span class="indent">
- ProxyPass !<br />
- </span>
- </Location><br />
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<Location /mirror/foo/>
+ ProxyPass http://backend.example.com/
+</Location>
+<Location /mirror/foo/i>
+ ProxyPass !
+</Location>
+ </pre>
+
+
+ <pre class="prettyprint lang-config">
+ProxyPass /mirror/foo/i !
+ProxyPass /mirror/foo http://backend.example.com
+ </pre>
- <div class="example"><p><code>
- ProxyPass /mirror/foo/i !<br />
- ProxyPass /mirror/foo http://backend.example.com
- </code></p></div>
<p>will proxy all requests to <code>/mirror/foo</code> to
<code>backend.example.com</code> <em>except</em> requests made to
</table>
<p>A sample balancer setup</p>
- <div class="example"><p><code>
- ProxyPass /special-area http://special.example.com smax=5 max=10<br />
- ProxyPass / balancer://mycluster/ stickysession=JSESSIONID|jsessionid nofailover=On<br />
- <Proxy balancer://mycluster><br />
- <span class="indent">
- BalancerMember ajp://1.2.3.4:8009<br />
- BalancerMember ajp://1.2.3.5:8009 loadfactor=20<br />
- # Less powerful server, don't send as many requests there,<br />
- BalancerMember ajp://1.2.3.6:8009 loadfactor=5<br />
- </span>
- </Proxy>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+ProxyPass /special-area http://special.example.com smax=5 max=10
+ProxyPass / balancer://mycluster/ stickysession=JSESSIONID|jsessionid nofailover=On
+<Proxy balancer://mycluster>
+ BalancerMember ajp://1.2.3.4:8009
+ BalancerMember ajp://1.2.3.5:8009 loadfactor=20
+ # Less powerful server, don't send as many requests there,
+ BalancerMember ajp://1.2.3.6:8009 loadfactor=5
+</Proxy>
+ </pre>
+
<p>Setting up a hot-standby, that will only be used if no other
members are available</p>
- <div class="example"><p><code>
- ProxyPass / balancer://hotcluster/ <br />
- <Proxy balancer://hotcluster><br />
- <span class="indent">
- BalancerMember ajp://1.2.3.4:8009 loadfactor=1<br />
- BalancerMember ajp://1.2.3.5:8009 loadfactor=2<br />
- # The below is the hot standby<br />
- BalancerMember ajp://1.2.3.6:8009 status=+H<br />
- ProxySet lbmethod=bytraffic
- </span>
- </Proxy>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+ProxyPass / balancer://hotcluster/
+<Proxy balancer://hotcluster>
+ BalancerMember ajp://1.2.3.4:8009 loadfactor=1
+ BalancerMember ajp://1.2.3.5:8009 loadfactor=2
+ # The below is the hot standby
+ BalancerMember ajp://1.2.3.6:8009 status=+H
+ ProxySet lbmethod=bytraffic
+</Proxy>
+ </pre>
+
<p>Normally, mod_proxy will canonicalise ProxyPassed URLs.
But this may be incompatible with some backends, particularly those
<p>Suppose the local server has address <code>http://example.com/</code>;
then</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
ProxyPassMatch ^(/.*\.gif)$ http://backend.example.com$1
- </code></p></div>
+ </pre>
+
<p>will cause a local request for
<code>http://example.com/foo/bar.gif</code> to be internally converted
<p>The URL argument must be parsable as a URL <em>before</em> regexp
substitutions (as well as after). This limits the matches you can use.
For instance, if we had used</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
ProxyPassMatch ^(/.*\.gif)$ http://backend.example.com:8000$1
- </code></p></div>
+ </pre>
+
<p>in our previous example, it would fail with a syntax error
at server startup. This is a bug (PR 46665 in the ASF bugzilla),
and the workaround is to reformulate the match:</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
ProxyPassMatch ^/(.*\.gif)$ http://backend.example.com:8000/$1
- </code></p></div>
+ </pre>
+
</div>
<p>The <code>!</code> directive is useful in situations where you don't want
to reverse-proxy a subdirectory.</p>
<p>For example, suppose the local server has address
<code>http://example.com/</code>; then</p>
- <div class="example"><p><code>
- ProxyPass /mirror/foo/ http://backend.example.com/<br />
- ProxyPassReverse /mirror/foo/ http://backend.example.com/<br />
- ProxyPassReverseCookieDomain backend.example.com public.example.com<br />
- ProxyPassReverseCookiePath / /mirror/foo/
- </code></p></div>
+ <pre class="prettyprint lang-config">
+ProxyPass /mirror/foo/ http://backend.example.com/
+ProxyPassReverse /mirror/foo/ http://backend.example.com/
+ProxyPassReverseCookieDomain backend.example.com public.example.com
+ProxyPassReverseCookiePath / /mirror/foo/
+ </pre>
+
<p>will not only cause a local request for the
<code>http://example.com/mirror/foo/bar</code> to be internally converted
In the example given with
<code class="directive"><a href="#proxypassreverse">ProxyPassReverse</a></code>, the directive:
</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
ProxyPassReverseCookiePath / /mirror/foo/
- </code></p></div>
+ </pre>
+
<p>
will rewrite a cookie with backend path <code>/</code> (or
<code>/example</code> or, in fact, anything) to <code>/mirror/foo/</code>.
be used.</p>
<div class="example"><h3>Example</h3><p><code>
+ <pre class="prettyprint lang-config">
ProxyReceiveBufferSize 2048
+ </pre>
+
</code></p></div>
</div>
are forwarded through the remote proxy using the HTTP CONNECT method.</p>
<div class="example"><h3>Example</h3><p><code>
- ProxyRemote http://goodguys.example.com/ http://mirrorguys.example.com:8000<br />
- ProxyRemote * http://cleverproxy.localdomain<br />
- ProxyRemote ftp http://ftpproxy.mydomain:8080
+ <pre class="prettyprint lang-config">
+ProxyRemote http://goodguys.example.com/ http://mirrorguys.example.com:8000
+ProxyRemote * http://cleverproxy.localdomain
+ProxyRemote ftp http://ftpproxy.mydomain:8080
+ </pre>
+
</code></p></div>
<p>In the last example, the proxy will forward FTP requests, encapsulated
<code class="directive"><a href="#proxypass">ProxyPass</a></code> directive.</p>
<div class="example"><p><code>
- <Proxy balancer://hotcluster><br />
- <span class="indent">
- BalancerMember http://www2.example.com:8080 loadfactor=1<br />
- BalancerMember http://www3.example.com:8080 loadfactor=2<br />
- ProxySet lbmethod=bytraffic<br />
- </span>
- </Proxy>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<Proxy balancer://hotcluster>
+ BalancerMember http://www2.example.com:8080 loadfactor=1
+ BalancerMember http://www3.example.com:8080 loadfactor=2
+ ProxySet lbmethod=bytraffic
+</Proxy>
+ </pre>
- <div class="example"><p><code>
- <Proxy http://backend><br />
- <span class="indent">
- ProxySet keepalive=On<br />
- </span>
- </Proxy>
</code></p></div>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
+<Proxy http://backend>
+ ProxySet keepalive=On
+</Proxy>
+ </pre>
+
+
+ <pre class="prettyprint lang-config">
ProxySet balancer://foo lbmethod=bytraffic timeout=15
- </code></p></div>
+ </pre>
- <div class="example"><p><code>
+
+ <pre class="prettyprint lang-config">
ProxySet ajp://backend:7001 timeout=15
- </code></p></div>
+ </pre>
+
<div class="warning"><h3>Warning</h3>
<p>Keep in mind that the same parameter key can have a different meaning
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1306409 -->
+<!-- English Revision: 1306409:1331217 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 344971:1306409 (outdated) -->
+<!-- English Revision: 344971:1331217 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
<variant outdated="yes">ja</variant>
</variants>
</metafile>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 669473:1199948 (outdated) -->
+<!-- English Revision: 669473:1331217 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 395228:1238726 (outdated) -->
+<!-- English Revision: 395228:1331217 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
hosts presenting a <code class="directive">RemoteIPHeader</code> IP value.</p>
<div class="example"><h3>Internal (Load Balancer) Example</h3><p><code>
+ <pre class="prettyprint lang-config">
RemoteIPHeader X-Client-IP
+ </pre>
+
</code></p></div>
<div class="example"><h3>Proxy Example</h3><p><code>
+ <pre class="prettyprint lang-config">
RemoteIPHeader X-Forwarded-For
+ </pre>
+
</code></p></div>
</div>
trusted when passed from these proxies.</p>
<div class="example"><h3>Internal (Load Balancer) Example</h3><p><code>
- RemoteIPHeader X-Client-IP<br />
- RemoteIPTrustedProxy 10.0.2.0/24<br />
- RemoteIPTrustedProxy gateway.localdomain
+ <pre class="prettyprint lang-config">
+RemoteIPHeader X-Client-IP
+RemoteIPTrustedProxy 10.0.2.0/24
+RemoteIPTrustedProxy gateway.localdomain
+ </pre>
+
</code></p></div>
</div>
RemoteIPTrustedProxyList conf/trusted-proxies.lst
</code></p></div>
- <div class="example"><h3>conf/trusted-proxies.lst contents</h3><p><code>
- # Our internally trusted proxies;<br />
- 10.0.2.0/24 #Everyone in the testing group<br />
- gateway.localdomain #The front end balancer
- </code></p></div>
+ <div class="example"><h3>conf/trusted-proxies.lst contents</h3><div class="example"><pre>
+# Our internally trusted proxies;
+10.0.2.0/24 #Everyone in the testing group
+gateway.localdomain #The front end balancer
+ </pre></div></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<code class="directive">RemoteIPInternalProxy</code> addresses are discarded.</p>
<div class="example"><h3>Example</h3><p><code>
- RemoteIPHeader X-Forwarded-For<br />
- RemoteIPProxiesHeader X-Forwarded-By
+ <pre class="prettyprint lang-config">
+RemoteIPHeader X-Forwarded-For
+RemoteIPProxiesHeader X-Forwarded-By
+ </pre>
+
</code></p></div>
</div>
<code class="directive">RemoteIPHeader</code> header's value.</p>
<div class="example"><h3>Trusted (Load Balancer) Example</h3><p><code>
- RemoteIPHeader X-Forwarded-For<br />
- RemoteIPTrustedProxy 10.0.2.16/28<br />
- RemoteIPTrustedProxy proxy.example.com
+ <pre class="prettyprint lang-config">
+RemoteIPHeader X-Forwarded-For
+RemoteIPTrustedProxy 10.0.2.16/28
+RemoteIPTrustedProxy proxy.example.com
+ </pre>
+
</code></p></div>
</div>
the <code class="directive">RemoteIPTrustedProxy</code> directive.</p>
<div class="example"><h3>Trusted (Load Balancer) Example</h3><p><code>
- RemoteIPHeader X-Forwarded-For<br />
- RemoteIPTrustedProxyList conf/trusted-proxies.lst
+ <pre class="prettyprint lang-config">
+RemoteIPHeader X-Forwarded-For
+RemoteIPTrustedProxyList conf/trusted-proxies.lst
+ </pre>
+
</code></p></div>
<div class="example"><h3>conf/trusted-proxies.lst contents</h3><p><code>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1328333 -->
+<!-- English Revision: 1328333:1331219 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
</variants>
</metafile>
</div>
<div class="example"><h3>Example</h3><p><code>
+ <pre class="prettyprint lang-config">
LogLevel alert rewrite:trace3
+ </pre>
+
</code></p></div>
<div class="note"><h3>RewriteLog</h3>
since the resource was not relative to the document root. This
misconfiguration would normally cause the server to look for an "opt"
directory under the document root.</p>
-<div class="example"><pre>
+<pre class="prettyprint lang-config">
DocumentRoot /var/www/example.com
Alias /myapp /opt/myapp-1.2.3
<Directory /opt/myapp-1.2.3>
-RewriteEngine On
-RewriteBase /myapp/
-RewriteRule ^index\.html$ welcome.html
+ RewriteEngine On
+ RewriteBase /myapp/
+ RewriteRule ^index\.html$ welcome.html
</Directory>
-</pre></div>
+</pre>
+
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
to block unwanted hotlinking.
</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
RewriteCond expr "! %{HTTP_REFERER} -strmatch '*://%{HTTP_HOST}/*'"<br />
RewriteRule ^/images - [F]
- </code></p></div>
+ </pre>
+
</li>
<li>You can also set special flags for
Use this to combine rule conditions with a local OR
instead of the implicit AND. Typical example:
-<div class="example"><pre>
+<pre class="prettyprint lang-config">
RewriteCond %{REMOTE_HOST} ^host1 [OR]
RewriteCond %{REMOTE_HOST} ^host2 [OR]
RewriteCond %{REMOTE_HOST} ^host3
RewriteRule ...some special stuff for any of these hosts...
-</pre></div>
+</pre>
+
Without this flag you would have to write the condition/rule
pair three times.
``<code>User-Agent:</code>'' header of the request, you can
use the following: </p>
-<div class="example"><pre>
+<pre class="prettyprint lang-config">
RewriteCond %{HTTP_USER_AGENT} ^Mozilla
RewriteRule ^/$ /homepage.max.html [L]
RewriteRule ^/$ /homepage.min.html [L]
RewriteRule ^/$ /homepage.std.html [L]
-</pre></div>
+</pre>
+
<p>Explanation: If you use a browser which identifies itself
as 'Mozilla' (including Netscape Navigator, Mozilla etc), then you
<p>For example, you might define a
<code class="directive">RewriteMap</code> as:</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
RewriteMap examplemap txt:/path/to/file/map.txt
- </code></p></div>
+ </pre>
+
<p>You would then be able to use this map in a
<code class="directive">RewriteRule</code> as follows:</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
RewriteRule ^/ex/(.*) ${examplemap:$1}
- </code></p></div>
+ </pre>
+
<p>The following combinations for <em>MapType</em> and
<em>MapSource</em> can be used:</p>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1325680 -->
+<!-- English Revision: 1325680:1331219 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
</variants>
</metafile>
<div class="section">
<h2><a name="sampleconf" id="sampleconf">Sample Configuration</a></h2>
<div class="example"><h3>Adding an output filter </h3><p><code>
- # In the following example, the sed filter will change the string<br />
- # "monday" to "MON" and the string "sunday" to SUN in html documents<br />
- # before sending to the client.<br />
- <span class="indent">
- <Directory "/var/www/docs/sed"> <br />
- <span class="indent">
- AddOutputFilter Sed html <br />
- OutputSed "s/monday/MON/g" <br />
- OutputSed "s/sunday/SUN/g" <br />
- </span>
- </Directory> <br />
- </span>
+ <pre class="prettyprint lang-config">
+# In the following example, the sed filter will change the string
+# "monday" to "MON" and the string "sunday" to SUN in html documents
+# before sending to the client.
+<Directory "/var/www/docs/sed">
+ AddOutputFilter Sed html
+ OutputSed "s/monday/MON/g"
+ OutputSed "s/sunday/SUN/g"
+</Directory>
+ </pre>
+
</code></p></div>
<div class="example"><h3>Adding an input filter </h3><p><code>
- # In the following example, the sed filter will change the string<br />
- # "monday" to "MON" and the string "sunday" to SUN in the POST data<br />
- # sent to PHP.<br />
- <span class="indent">
- <Directory "/var/www/docs/sed"> <br />
- <span class="indent">
- AddInputFilter Sed php <br />
- InputSed "s/monday/MON/g" <br />
- InputSed "s/sunday/SUN/g" <br />
- </span>
- </Directory> <br />
- </span>
+ <pre class="prettyprint lang-config">
+# In the following example, the sed filter will change the string
+# "monday" to "MON" and the string "sunday" to SUN in the POST data
+# sent to PHP.
+<Directory "/var/www/docs/sed">
+ AddInputFilter Sed php
+ InputSed "s/monday/MON/g"
+ InputSed "s/sunday/SUN/g"
+</Directory>
+ </pre>
+
</code></p></div>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1299328 -->
+<!-- English Revision: 1299328:1331227 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
</variants>
</metafile>
such as this example, which sets <code>netscape</code> if the
browser is mozilla but not MSIE.</p>
-<div class="example"><p><code>
- BrowserMatch ^Mozilla netscape<br />
- BrowserMatch MSIE !netscape<br />
-</code></p></div>
+<pre class="prettyprint lang-config">
+BrowserMatch ^Mozilla netscape
+BrowserMatch MSIE !netscape
+</pre>
+
</div>
<div id="quickview"><h3 class="directives">Directives</h3>
<ul id="toc">
sets environment variables conditional on the
<code>User-Agent</code> HTTP request header. The following two
lines have the same effect:</p>
-<div class="example"><p><code>
- BrowserMatchNoCase Robot is_a_robot<br />
- SetEnvIfNoCase User-Agent Robot is_a_robot<br />
-</code></p></div>
+<pre class="prettyprint lang-config">
+BrowserMatchNoCase Robot is_a_robot
+SetEnvIfNoCase User-Agent Robot is_a_robot
+</pre>
+
<p>Some additional examples:</p>
-<div class="example"><p><code>
- BrowserMatch ^Mozilla forms jpeg=yes browser=netscape<br />
- BrowserMatch "^Mozilla/[2-3]" tables agif frames javascript<br />
- BrowserMatch MSIE !javascript<br />
-</code></p></div>
+<pre class="prettyprint lang-config">
+BrowserMatch ^Mozilla forms jpeg=yes browser=netscape
+BrowserMatch "^Mozilla/[2-3]" tables agif frames javascript
+BrowserMatch MSIE !javascript
+</pre>
+
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
semantically identical to the <code class="directive"><a href="#browsermatch">BrowserMatch</a></code> directive.
However, it provides for case-insensitive matching. For
example:</p>
-<div class="example"><p><code>
- BrowserMatchNoCase mac platform=macintosh<br />
- BrowserMatchNoCase win platform=windows<br />
-</code></p></div>
+<pre class="prettyprint lang-config">
+BrowserMatchNoCase mac platform=macintosh
+BrowserMatchNoCase win platform=windows
+</pre>
+
<p>The <code class="directive">BrowserMatch</code> and
<code class="directive">BrowserMatchNoCase</code> directives are special cases of
the <code class="directive"><a href="#setenvif">SetEnvIf</a></code> and <code class="directive"><a href="#setenvifnocase">SetEnvIfNoCase</a></code>
directives. The following two lines have the same effect:</p>
-<div class="example"><p><code>
- BrowserMatchNoCase Robot is_a_robot<br />
- SetEnvIfNoCase User-Agent Robot is_a_robot<br />
-</code></p></div>
+<pre class="prettyprint lang-config">
+BrowserMatchNoCase Robot is_a_robot
+SetEnvIfNoCase User-Agent Robot is_a_robot
+</pre>
+
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<var>value</var> and replace them by parenthesized subexpressions
of <var>regex</var>.</p>
-<div class="example"><h3>Example:</h3><p><code>
+<pre class="prettyprint lang-config">
+SetEnvIf Request_URI "\.gif$" object_is_image=gif
+SetEnvIf Request_URI "\.jpg$" object_is_image=jpg
+SetEnvIf Request_URI "\.xbm$" object_is_image=xbm
+
+SetEnvIf Referer www\.mydomain\.example\.com intra_site_referral
+
+SetEnvIf object_is_image xbm XBIT_PROCESSING=1
+
+SetEnvIf ^TS ^[a-z] HAVE_TS
+</pre>
- SetEnvIf Request_URI "\.gif$" object_is_image=gif<br />
- SetEnvIf Request_URI "\.jpg$" object_is_image=jpg<br />
- SetEnvIf Request_URI "\.xbm$" object_is_image=xbm<br />
- :<br />
- SetEnvIf Referer www\.mydomain\.example\.com intra_site_referral<br />
- :<br />
- SetEnvIf object_is_image xbm XBIT_PROCESSING=1<br />
- :<br />
- SetEnvIf ^TS ^[a-z] HAVE_TS<br />
-</code></p></div>
<p>The first three will set the environment variable
<code>object_is_image</code> if the request was for an image
<code>ap_expr</code>. These expressions will be evaluated at runtime,
and applied <em>env-variable</em> in the same fashion as <code class="directive">SetEnvIf</code>.</p>
-<div class="example"><p><code>
+<pre class="prettyprint lang-config">
SetEnvIfExpr "tolower(req('X-Sendfile')) == 'd:\images\very_big.iso')" iso_delivered
-</code></p></div>
+</pre>
+
<p>This would set the environment variable <code>iso_delivered</code>
every time our application attempts to send it via <code>X-Sendfile</code></p>
<p>A more useful example would be to set the variable rfc1918 if the
remote IP address is a private address according to RFC 1918:</p>
-<div class="example"><p><code>
+<pre class="prettyprint lang-config">
SetEnvIfExpr "-R '10.0.0.0/8' || -R '172.16.0.0/12' || -R '192.168.0.0/16'" rfc1918
-</code></p></div>
+</pre>
+
<h3>See also</h3>
<ul>
the <code class="directive"><a href="#setenvif">SetEnvIf</a></code> directive,
and differs only in that the regular expression matching is
performed in a case-insensitive manner. For example:</p>
-<div class="example"><p><code>
+<pre class="prettyprint lang-config">
SetEnvIfNoCase Host Example\.Org site=example
-</code></p></div>
+</pre>
+
<p>This will cause the <code>site</code> environment variable
to be set to "<code>example</code>" if the HTTP request header
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1180828 -->
+<!-- English Revision: 1180828:1331227 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 658546:1180828 (outdated) -->
+<!-- English Revision: 658546:1331227 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 151408:1180828 (outdated) -->
+<!-- English Revision: 151408:1331227 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
- <variant>tr</variant>
+ <variant outdated="yes">tr</variant>
</variants>
</metafile>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
-<!-- English Revision: 1180828 -->
+<!-- English Revision: 1180828:1331227 (outdated) -->
<!-- =====================================================
Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
Reviewed by: Orhan Berent <berent belgeler.org>
<p>For example:</p>
- <div class="example"><p><code>LoadFile libexec/libxmlparse.so</code></p></div>
+ <pre class="prettyprint lang-config">LoadFile libexec/libxmlparse.so</pre>
+
</div>
<code>module</code> in the file, and is listed as the <a href="module-dict.html#ModuleIdentifier">Module Identifier</a>
in the module documentation. Example:</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
LoadModule status_module modules/mod_status.so
- </code></p></div>
+ </pre>
+
<p>loads the named module from the modules subdirectory of the
ServerRoot.</p>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1174747 -->
+<!-- English Revision: 1174747:1331227 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 420990:1174747 (outdated) -->
+<!-- English Revision: 420990:1331227 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 420990:1174747 (outdated) -->
+<!-- English Revision: 420990:1331227 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
- <variant>tr</variant>
+ <variant outdated="yes">tr</variant>
</variants>
</metafile>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
-<!-- English Revision: 1174747 -->
+<!-- English Revision: 1174747:1331227 (outdated) -->
<!-- =====================================================
Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
Reviewed by: Orhan Berent <berent belgeler.org>
<p>To enable status reports only for browsers from the example.com
domain add this code to your <code>httpd.conf</code>
configuration file</p>
-<div class="example"><p><code>
- <Location /server-status><br />
- <span class="indent">
- SetHandler server-status<br />
-<br />
- Require host example.com<br />
- </span>
- </Location>
-</code></p></div>
+<pre class="prettyprint lang-config">
+<Location /server-status>
+ SetHandler server-status
+ Require host example.com
+</Location>
+</pre>
+
<p>You can now access server statistics by using a Web browser
to access the page
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision : 1174747 -->
+<!-- English Revision: 1174747:1331227 (outdated) -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
<modulesynopsis metafile="mod_status.xml.meta">
-<!-- English Revision: 668628:1174747 (outdated) -->
+<!-- English Revision: 668628:1331227 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 420990:1174747 (outdated) -->
+<!-- English Revision: 420990:1331227 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variants>
<variant>en</variant>
- <variant>fr</variant>
+ <variant outdated="yes">fr</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
- <variant>tr</variant>
+ <variant outdated="yes">tr</variant>
</variants>
</metafile>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
-<!-- English Revision: 1174747 -->
+<!-- English Revision: 1174747:1331227 (outdated) -->
<!-- =====================================================
Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
Reviewed by: Orhan Berent <berent belgeler.org>
<div class="example"><h3>Example</h3><p><code>
+ <pre class="prettyprint lang-config">
SuexecUserGroup nobody nogroup
+ </pre>
+
</code></p></div>
<p>In Apache httpd 2.3.9 and later, startup will fail if this
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 420990:1041030 (outdated) -->
+<!-- English Revision: 420990:1331227 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 105989:1041030 (outdated) -->
+<!-- English Revision: 105989:1331227 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variant>en</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
- <variant>tr</variant>
+ <variant outdated="yes">tr</variant>
</variants>
</metafile>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
-<!-- English Revision: 1041030 -->
+<!-- English Revision: 1041030:1331227 (outdated) -->
<!-- =====================================================
Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
Reviewed by: Orhan Berent <berent belgeler.org>
</dl>
<div class="example"><h3>Example</h3><p><code>
+ <pre class="prettyprint lang-config">
Group www-group
+ </pre>
+
</code></p></div>
<p>It is recommended that you set up a new group specifically for
<variants>
<variant>en</variant>
- <variant>tr</variant>
+ <variant outdated="yes">tr</variant>
</variants>
</metafile>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
-<!-- English Revision: 1045321 -->
+<!-- English Revision: 1045321:1331229 (outdated) -->
<!-- =====================================================
Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
Reviewed by: Orhan Berent <berent belgeler.org>
<p>To allow a few users to have <code>UserDir</code> directories, but
not anyone else, use the following:</p>
- <div class="example"><p><code>
- UserDir disabled<br />
- UserDir enabled user1 user2 user3
- </code></p></div>
+ <pre class="prettyprint lang-config">
+UserDir disabled
+UserDir enabled user1 user2 user3
+ </pre>
+
<p>To allow most users to have <code>UserDir</code> directories, but
deny this to a few, use the following:</p>
- <div class="example"><p><code>
+ <pre class="prettyprint lang-config">
UserDir disabled user4 user5 user6
- </code></p></div>
+ </pre>
+
<p>It is also possible to specify alternative user directories.
If you use a command like:</p>
- <div class="example"><p><code>
- Userdir public_html /usr/web http://www.example.com/
- </code></p></div>
+ <pre class="prettyprint lang-config">
+ UserDir public_html /usr/web http://www.example.com/
+ </pre>
+
<p>With a request for
<code>http://www.example.com/~bob/one/two.html</code>, will try to
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 657842:1174747 (outdated) -->
+<!-- English Revision: 657842:1331229 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 151408:1174747 (outdated) -->
+<!-- English Revision: 151408:1331229 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variant>en</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
- <variant>tr</variant>
+ <variant outdated="yes">tr</variant>
</variants>
</metafile>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
-<!-- English Revision: 1174747 -->
+<!-- English Revision: 1174747:1331229 (outdated) -->
<!-- =====================================================
Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
Reviewed by: Orhan Berent <berent belgeler.org>
regular expressions.</p>
<div class="example"><h3>Examples</h3><p><code>
- <IfVersion 2.1.0><br />
- <span class="indent">
- # current httpd version is exactly 2.1.0<br />
- </span>
- </IfVersion><br />
- <br />
- <IfVersion >= 2.2><br />
- <span class="indent">
- # use really new features :-)<br />
- </span>
- </IfVersion>
+ <pre class="prettyprint lang-config">
+<IfVersion 2.4.2>
+ # current httpd version is exactly 2.4.2
+</IfVersion>
+
+<IfVersion >= 2.5>
+ # use really new features :-)
+</IfVersion>
+ </pre>
+
</code></p></div>
<p>See below for further possibilities.</p>
</table>
<div class="example"><h3>Example</h3><p><code>
- <IfVersion >= 2.1><br />
- <span class="indent">
- # this happens only in versions greater or<br />
- # equal 2.1.0.<br />
- </span>
- </IfVersion>
+ <pre class="prettyprint lang-config">
+<IfVersion >= 2.3>
+ # this happens only in versions greater or
+ # equal 2.3.0.
+</IfVersion>
+ </pre>
+
</code></p></div>
<p>Besides the numerical comparison it is possible to match a
</table>
<div class="example"><h3>Example</h3><p><code>
- <IfVersion = /^2.1.[01234]$/><br />
- <span class="indent">
- # e.g. workaround for buggy versions
- </span>
- </IfVersion>
+ <pre class="prettyprint lang-config">
+<IfVersion = /^2.4.[01234]$/>
+ # e.g. workaround for buggy versions
+</IfVersion>
+ </pre>
+
</code></p></div>
<p>In order to reverse the meaning, all operators can be preceded by an
exclamation mark (<code>!</code>):</p>
- <div class="example"><p><code>
- <IfVersion !~ ^2.1.[01234]$><br />
- <span class="indent">
- # not for those versions<br />
- </span>
- </IfVersion>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<IfVersion !~ ^2.4.[01234]$>
+ # not for those versions
+</IfVersion>
+ </pre>
+
<p>If the <var>operator</var> is omitted, it is assumed to be
<code>=</code>.</p>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 1174747 -->
+<!-- English Revision: 1174747:1331230 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
-<!-- English Revision: 105989:1174747 (outdated) -->
+<!-- English Revision: 105989:1331230 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<variants>
<variant>en</variant>
- <variant>ja</variant>
+ <variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
</variants>
</metafile>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
-<!-- English Revision: 1174747:1326697 (outdated) -->
+<!-- English Revision: 1174747:1331230 (outdated) -->
<!-- =====================================================
Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
Reviewed by: Orhan Berent <berent belgeler.org>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.de.xsl"?>
-<!-- English Revision: 151408:1326763 (outdated) -->
+<!-- English Revision: 151408:1331232 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
-<!-- English Revision: 674934:1326763 (outdated) -->
+<!-- English Revision: 674934:1331232 (outdated) -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
-<!-- English Revision: 1308409:1326763 (outdated) -->
+<!-- English Revision: 1308409:1331232 (outdated) -->
<!-- =====================================================
Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
Reviewed by: Orhan Berent <berent belgeler.org>