]> granicus.if.org Git - apache/blobdiff - docs/manual/mod/core.html.en
Update xforms!
[apache] / docs / manual / mod / core.html.en
index 152605a72be855eaaead516c21cd19ae3b7defab..7962218122830b4b97b1fe3ccadd45226f8acc33 100644 (file)
@@ -1,18 +1,23 @@
 <?xml version="1.0" encoding="ISO-8859-1"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><!--
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head>
+<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
+<!--
         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
               This file is generated from xml source: DO NOT EDIT
         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
       -->
-<title>core - Apache HTTP Server</title>
+<title>core - Apache HTTP Server Version 2.5</title>
 <link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
 <link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
-<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
+<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
+<script src="../style/scripts/prettify.min.js" type="text/javascript">
+</script>
+
 <link href="../images/favicon.ico" rel="shortcut icon" /></head>
 <body>
 <div id="page-header">
-<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p>
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p>
 <p class="apache">Apache HTTP Server Version 2.5</p>
 <img alt="" src="../images/feather.gif" /></div>
 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
@@ -41,7 +46,9 @@ available</td></tr>
 <li><img alt="" src="../images/down.gif" /> <a href="#allowencodedslashes">AllowEncodedSlashes</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#allowoverride">AllowOverride</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#allowoverridelist">AllowOverrideList</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#asyncfilter">AsyncFilter</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#cgimapextension">CGIMapExtension</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#cgipassauth">CGIPassAuth</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#contentdigest">ContentDigest</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#defaultruntimedir">DefaultRuntimeDir</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#defaulttype">DefaultType</a></li>
@@ -82,14 +89,20 @@ available</td></tr>
 <li><img alt="" src="../images/down.gif" /> <a href="#location">&lt;Location&gt;</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#locationmatch">&lt;LocationMatch&gt;</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#loglevel">LogLevel</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#logleveloverride">LogLevelOverride</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#maxkeepaliverequests">MaxKeepAliveRequests</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#maxrangeoverlaps">MaxRangeOverlaps</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#maxrangereversals">MaxRangeReversals</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#maxranges">MaxRanges</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#mergetrailers">MergeTrailers</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#mutex">Mutex</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#namevirtualhost">NameVirtualHost</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#options">Options</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#protocol">Protocol</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#protocols">Protocols</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#protocolshonororder">ProtocolsHonorOrder</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#qualifyredirecturl">QualifyRedirectURL</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#registerhttpmethod">RegisterHttpMethod</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#rlimitcpu">RLimitCPU</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#rlimitmem">RLimitMEM</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#rlimitnproc">RLimitNPROC</a></li>
@@ -111,8 +124,9 @@ available</td></tr>
 <li><img alt="" src="../images/down.gif" /> <a href="#usecanonicalname">UseCanonicalName</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#virtualhost">&lt;VirtualHost&gt;</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#warning">Warning</a></li>
 </ul>
-</div>
+<ul class="seealso"><li><a href="#comments_section">Comments</a></li></ul></div>
 
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
 <div class="directive-section"><h2><a name="AcceptFilter" id="AcceptFilter">AcceptFilter</a> <a name="acceptfilter" id="acceptfilter">Directive</a></h2>
@@ -122,11 +136,9 @@ available</td></tr>
 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache httpd 2.1.5 and later.
-On Windows from Apache httpd 2.3.3 and later.</td></tr>
 </table>
     <p>This directive enables operating system specific optimizations for a
-       listening socket by the <code class="directive">Protocol</code>type.
+       listening socket by the <code class="directive">Protocol</code> type.
        The basic premise is for the kernel to not send a socket to the server
        process until either data is received or an entire HTTP Request is buffered.
        Only <a href="http://www.freebsd.org/cgi/man.cgi?query=accept_filter&amp;sektion=9">
@@ -137,33 +149,32 @@ On Windows from Apache httpd 2.3.3 and later.</td></tr>
     <p>Using <code>none</code> for an argument will disable any accept filters
        for that protocol.  This is useful for protocols that require a server
        send data first, such as <code>ftp:</code> or <code>nntp</code>:</p>
-    <div class="example"><p><code>AcceptFilter nntp none</code></p></div>
+    <pre class="prettyprint lang-config">AcceptFilter nntp none</pre>
+
 
     <p>The default protocol names are <code>https</code> for port 443
-       and <code>http</code> for all other ports.  To specify another protocol
-       is being used with a listening port, add the <var>protocol</var>
+       and <code>http</code> for all other ports.  To specify that another
+       protocol is being used with a listening port, add the <var>protocol</var>
        argument to the <code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code>
        directive.</p>
 
     <p>The default values on FreeBSD are:</p>
-    <div class="example"><p><code>
-        AcceptFilter http httpready <br />
-        AcceptFilter https dataready
-    </code></p></div>
+    <pre class="prettyprint lang-config">AcceptFilter http httpready
+AcceptFilter https dataready</pre>
+
 
     <p>The <code>httpready</code> accept filter buffers entire HTTP requests at
        the kernel level.  Once an entire request is received, the kernel then
        sends it to the server. See the
        <a href="http://www.freebsd.org/cgi/man.cgi?query=accf_http&amp;sektion=9">
        accf_http(9)</a> man page for more details.  Since HTTPS requests are
-       encrypted only the <a href="http://www.freebsd.org/cgi/man.cgi?query=accf_data&amp;sektion=9">
+       encrypted, only the <a href="http://www.freebsd.org/cgi/man.cgi?query=accf_data&amp;sektion=9">
        accf_data(9)</a> filter is used.</p>
 
     <p>The default values on Linux are:</p>
-    <div class="example"><p><code>
-        AcceptFilter http data <br />
-        AcceptFilter https data
-    </code></p></div>
+    <pre class="prettyprint lang-config">AcceptFilter http data
+AcceptFilter https data</pre>
+
 
     <p>Linux's <code>TCP_DEFER_ACCEPT</code> does not support buffering http
        requests.  Any value besides <code>none</code> will enable
@@ -173,10 +184,9 @@ On Windows from Apache httpd 2.3.3 and later.</td></tr>
        tcp(7)</a> man page.</p>
 
     <p>The default values on Windows are:</p>
-    <div class="example"><p><code>
-        AcceptFilter http data <br />
-        AcceptFilter https data
-    </code></p></div>
+    <pre class="prettyprint lang-config">AcceptFilter http data
+AcceptFilter https data</pre>
+
 
     <p>Window's mpm_winnt interprets the AcceptFilter to toggle the AcceptEx()
        API, and does not support http protocol buffering.  There are two values
@@ -198,7 +208,7 @@ On Windows from Apache httpd 2.3.3 and later.</td></tr>
 
 <h3>See also</h3>
 <ul>
-<li><code class="directive">Protocol</code></li>
+<li><code class="directive"><a href="#protocol">Protocol</a></code></li>
 </ul>
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
@@ -211,7 +221,6 @@ On Windows from Apache httpd 2.3.3 and later.</td></tr>
 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>FileInfo</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache httpd 2.0.30 and later</td></tr>
 </table>
 
     <p>This directive controls whether requests that contain trailing
@@ -258,15 +267,12 @@ On Windows from Apache httpd 2.3.3 and later.</td></tr>
     the request, so you can use the following configuration to enable
     such a script:</p>
 
-    <div class="example"><p><code>
-      &lt;Files "mypaths.shtml"&gt;<br />
-      <span class="indent">
-        Options +Includes<br />
-        SetOutputFilter INCLUDES<br />
-        AcceptPathInfo On<br />
-      </span>
-      &lt;/Files&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Files "mypaths.shtml"&gt;
+  Options +Includes
+  SetOutputFilter INCLUDES
+  AcceptPathInfo On
+&lt;/Files&gt;</pre>
+
 
 
 </div>
@@ -280,29 +286,25 @@ On Windows from Apache httpd 2.3.3 and later.</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
 </table>
-    <p>While processing a request the server looks for
+    <p>While processing a request, the server looks for
     the first existing configuration file from this list of names in
     every directory of the path to the document, if distributed
     configuration files are <a href="#allowoverride">enabled for that
     directory</a>. For example:</p>
 
-    <div class="example"><p><code>
-      AccessFileName .acl
-    </code></p></div>
+    <pre class="prettyprint lang-config">AccessFileName .acl</pre>
 
-    <p>before returning the document
+
+    <p>Before returning the document
     <code>/usr/local/web/index.html</code>, the server will read
     <code>/.acl</code>, <code>/usr/.acl</code>,
     <code>/usr/local/.acl</code> and <code>/usr/local/web/.acl</code>
-    for directives, unless they have been disabled with</p>
+    for directives unless they have been disabled with:</p>
+
+    <pre class="prettyprint lang-config">&lt;Directory "/"&gt;
+    AllowOverride None
+&lt;/Directory&gt;</pre>
 
-    <div class="example"><p><code>
-      &lt;Directory /&gt;<br />
-      <span class="indent">
-        AllowOverride None<br />
-      </span>
-      &lt;/Directory&gt;
-    </code></p></div>
 
 <h3>See also</h3>
 <ul>
@@ -337,9 +339,8 @@ content-type is <code>text/plain</code> or <code>text/html</code></td></tr>
     charset values</a> for use in Internet media types (MIME types).
     For example:</p>
 
-    <div class="example"><p><code>
-      AddDefaultCharset utf-8
-    </code></p></div>
+    <pre class="prettyprint lang-config">AddDefaultCharset utf-8</pre>
+
 
     <p><code class="directive">AddDefaultCharset</code> should only be used when all
     of the text resources to which it applies are known to be in that
@@ -367,12 +368,12 @@ be passed through</td></tr>
 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache httpd 2.0.46 and later.
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>
 NoDecode option available in 2.3.12 and later.</td></tr>
 </table>
     <p>The <code class="directive">AllowEncodedSlashes</code> directive allows URLs
     which contain encoded path separators (<code>%2F</code> for <code>/</code>
-    and additionally <code>%5C</code> for <code>\</code> on according systems)
+    and additionally <code>%5C</code> for <code>\</code> on accordant systems)
     to be used in the path info.</p>
 
     <p>With the default value, <code>Off</code>, such URLs are refused
@@ -411,7 +412,7 @@ NoDecode option available in 2.3.12 and later.</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
 </table>
     <p>When the server finds an <code>.htaccess</code> file (as
-    specified by <code class="directive"><a href="#accessfilename">AccessFileName</a></code>)
+    specified by <code class="directive"><a href="#accessfilename">AccessFileName</a></code>),
     it needs to know which directives declared in that file can override
     earlier configuration directives.</p>
 
@@ -423,7 +424,7 @@ NoDecode option available in 2.3.12 and later.</td></tr>
     </div>
 
     <p>When this directive is set to <code>None</code> and <code class="directive"><a href="#allowoverridelist">AllowOverrideList</a></code> is set to
-    <code>None</code> <a href="#accessfilename">.htaccess</a> files are
+    <code>None</code>, <a href="#accessfilename">.htaccess</a> files are
     completely ignored. In this case, the server will not even attempt
     to read <code>.htaccess</code> files in the filesystem.</p>
 
@@ -457,7 +458,8 @@ NoDecode option available in 2.3.12 and later.</td></tr>
       <code class="directive"><a href="#setoutputfilter">SetOutputFilter</a></code>, and
       <code class="module"><a href="../mod/mod_mime.html">mod_mime</a></code> Add* and Remove* directives),
       document meta data (<code class="directive"><a href="../mod/mod_headers.html#header">Header</a></code>, <code class="directive"><a href="../mod/mod_headers.html#requestheader">RequestHeader</a></code>, <code class="directive"><a href="../mod/mod_setenvif.html#setenvif">SetEnvIf</a></code>, <code class="directive"><a href="../mod/mod_setenvif.html#setenvifnocase">SetEnvIfNoCase</a></code>, <code class="directive"><a href="../mod/mod_setenvif.html#browsermatch">BrowserMatch</a></code>, <code class="directive"><a href="../mod/mod_usertrack.html#cookieexpires">CookieExpires</a></code>, <code class="directive"><a href="../mod/mod_usertrack.html#cookiedomain">CookieDomain</a></code>, <code class="directive"><a href="../mod/mod_usertrack.html#cookiestyle">CookieStyle</a></code>, <code class="directive"><a href="../mod/mod_usertrack.html#cookietracking">CookieTracking</a></code>, <code class="directive"><a href="../mod/mod_usertrack.html#cookiename">CookieName</a></code>),
-      <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> directives <code class="directive"><a href="../mod/mod_rewrite.html#rewriteengine">RewriteEngine</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewriteoptions">RewriteOptions</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewritebase">RewriteBase</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewritecond">RewriteCond</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code>) and
+      <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> directives (<code class="directive"><a href="../mod/mod_rewrite.html#rewriteengine">RewriteEngine</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewriteoptions">RewriteOptions</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewritebase">RewriteBase</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewritecond">RewriteCond</a></code>, <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code>),
+      <code class="module"><a href="../mod/mod_alias.html">mod_alias</a></code> directives (<code class="directive"><a href="../mod/mod_alias.html#redirect">Redirect</a></code>, <code class="directive"><a href="../mod/mod_alias.html#redirecttemp">RedirectTemp</a></code>, <code class="directive"><a href="../mod/mod_alias.html#redirectpermanent">RedirectPermanent</a></code>, <code class="directive"><a href="../mod/mod_alias.html#redirectmatch">RedirectMatch</a></code>), and
       <code class="directive"><a href="../mod/mod_actions.html#action">Action</a></code> from
       <code class="module"><a href="../mod/mod_actions.html">mod_actions</a></code>.
       </dd>
@@ -469,7 +471,7 @@ NoDecode option available in 2.3.12 and later.</td></tr>
       (<code class="directive"><a href="../mod/mod_autoindex.html#adddescription">AddDescription</a></code>,
       <code class="directive"><a href="../mod/mod_autoindex.html#addicon">AddIcon</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#addiconbyencoding">AddIconByEncoding</a></code>,
       <code class="directive"><a href="../mod/mod_autoindex.html#addiconbytype">AddIconByType</a></code>,
-      <code class="directive"><a href="../mod/mod_autoindex.html#defaulticon">DefaultIcon</a></code>, <code class="directive"><a href="../mod/mod_dir.html#directoryindex">DirectoryIndex</a></code>, <a href="mod_autoindex.html#indexoptions.fancyindexing"><code>FancyIndexing</code></a>, <code class="directive"><a href="../mod/mod_autoindex.html#headername">HeaderName</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#indexignore">IndexIgnore</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#indexoptions">IndexOptions</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#readmename">ReadmeName</a></code>,
+      <code class="directive"><a href="../mod/mod_autoindex.html#defaulticon">DefaultIcon</a></code>, <code class="directive"><a href="../mod/mod_dir.html#directoryindex">DirectoryIndex</a></code>, <code class="directive"><a href="../mod/mod_dir.html#fallbackresource">FallbackResource</a></code>, <a href="mod_autoindex.html#indexoptions.fancyindexing"><code>FancyIndexing</code></a>, <code class="directive"><a href="../mod/mod_autoindex.html#headername">HeaderName</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#indexignore">IndexIgnore</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#indexoptions">IndexOptions</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#readmename">ReadmeName</a></code>,
       <em>etc.</em>).</dd>
 
       <dt>Limit</dt>
@@ -477,20 +479,23 @@ NoDecode option available in 2.3.12 and later.</td></tr>
       <dd>
       Allow use of the directives controlling host access (<code class="directive"><a href="../mod/mod_access_compat.html#allow">Allow</a></code>, <code class="directive"><a href="../mod/mod_access_compat.html#deny">Deny</a></code> and <code class="directive"><a href="../mod/mod_access_compat.html#order">Order</a></code>).</dd>
 
+
+
+
       <dt>Nonfatal=[Override|Unknown|All]</dt>
 
       <dd>
       Allow use of AllowOverride option to treat syntax errors in
-      .htaccess as non-fatal: instead of causing an Internal Server
+      .htaccess as nonfatal. Instead of causing an Internal Server
       Error, disallowed or unrecognised directives will be ignored
       and a warning logged:
       <ul>
           <li><strong>Nonfatal=Override</strong> treats directives
-              forbidden by AllowOverride as non-fatal.</li>
+              forbidden by AllowOverride as nonfatal.</li>
           <li><strong>Nonfatal=Unknown</strong> treats unknown directives
-              as non-fatal.  This covers typos and directives implemented
+              as nonfatal.  This covers typos and directives implemented
               by a module that's not present.</li>
-          <li><strong>Nonfatal=All</strong> treats both the above as non-fatal.</li>
+          <li><strong>Nonfatal=All</strong> treats both the above as nonfatal.</li>
       </ul>
       <p>Note that a syntax error in a valid directive will still cause
       an internal server error.</p>
@@ -507,8 +512,8 @@ NoDecode option available in 2.3.12 and later.</td></tr>
       Allow use of the directives controlling specific directory
       features (<code class="directive"><a href="#options">Options</a></code> and
       <code class="directive"><a href="../mod/mod_include.html#xbithack">XBitHack</a></code>).
-      An equal sign may be given followed by a comma (but no spaces)
-      separated lists of options that may be set using the <code class="directive"><a href="#options">Options</a></code> command.
+      An equal sign may be given followed by a comma-separated list, without
+      spaces, of options that may be set using the <code class="directive"><a href="#options">Options</a></code> command.
 
       <div class="note"><h3>Implicit disabling of Options</h3>
       <p>Even though the list of options that may be used in .htaccess files
@@ -517,22 +522,25 @@ NoDecode option available in 2.3.12 and later.</td></tr>
          syntax.  In other words, this mechanism cannot force a specific option
          to remain <em>set</em> while allowing any others to be set.
       </p></div>
+
+      <div class="example"><p><code>
+      AllowOverride Options=Indexes,MultiViews
+      </code></p></div>
       </dd>
     </dl>
 
     <p>Example:</p>
 
-    <div class="example"><p><code>
-      AllowOverride AuthConfig Indexes
-    </code></p></div>
+    <pre class="prettyprint lang-config">AllowOverride AuthConfig Indexes</pre>
 
-    <p>In the example above all directives that are neither in the group
+
+    <p>In the example above, all directives that are neither in the group
     <code>AuthConfig</code> nor <code>Indexes</code> cause an internal
     server error.</p>
 
     <div class="note"><p>For security and performance reasons, do not set
     <code>AllowOverride</code> to anything other than <code>None</code>
-    in your <code>&lt;Directory /&gt;</code> block. Instead, find (or
+    in your <code>&lt;Directory "/"&gt;</code> block. Instead, find (or
     create) the <code>&lt;Directory&gt;</code> block that refers to the
     directory where you're actually planning to place a
     <code>.htaccess</code> file.</p>
@@ -559,7 +567,7 @@ NoDecode option available in 2.3.12 and later.</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
 </table>
     <p>When the server finds an <code>.htaccess</code> file (as
-    specified by <code class="directive"><a href="#accessfilename">AccessFileName</a></code>)
+    specified by <code class="directive"><a href="#accessfilename">AccessFileName</a></code>),
     it needs to know which directives declared in that file can override
     earlier configuration directives.</p>
 
@@ -577,26 +585,24 @@ NoDecode option available in 2.3.12 and later.</td></tr>
 
     <p>Example:</p>
 
-    <div class="example"><p><code>
-      AllowOverride None<br />
-      AllowOverrideList Redirect RedirectMatch
-    </code></p></div>
+    <pre class="prettyprint lang-config">AllowOverride None
+AllowOverrideList Redirect RedirectMatch</pre>
 
-    <p>In the example above only the <code>Redirect</code> and
+
+    <p>In the example above, only the <code>Redirect</code> and
     <code>RedirectMatch</code> directives are allowed. All others will
     cause an internal server error.</p>
 
     <p>Example:</p>
 
-    <div class="example"><p><code>
-      AllowOverride AuthConfig<br />
-      AllowOverrideList CookieTracking CookieName
-    </code></p></div>
+    <pre class="prettyprint lang-config">AllowOverride AuthConfig
+AllowOverrideList CookieTracking CookieName</pre>
 
-    <p>In the example above <code class="directive"><a href="#allowoverride&#10;    ">AllowOverride
+
+    <p>In the example above, <code class="directive"><a href="#allowoverride">AllowOverride
     </a></code> grants permission to the <code>AuthConfig</code>
     directive grouping and <code class="directive">AllowOverrideList</code> grants
-    permission to only two directves from the <code>FileInfo</code> directive
+    permission to only two directives from the <code>FileInfo</code> directive
     grouping. All others will cause an internal server error.</p>
 
 <h3>See also</h3>
@@ -606,6 +612,27 @@ NoDecode option available in 2.3.12 and later.</td></tr>
 <li><a href="../configuring.html">Configuration Files</a></li>
 <li><a href="../howto/htaccess.html">.htaccess Files</a></li>
 </ul>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="AsyncFilter" id="AsyncFilter">AsyncFilter</a> <a name="asyncfilter" id="asyncfilter">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Set the minimum filter type eligible for asynchronous handling</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AsyncFilter request|connection|network</code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>AsyncFilter request</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
+<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Only available from Apache 2.5.0 and later.</td></tr>
+</table>
+        <p>This directive controls the minimum filter levels that are eligible
+        for asynchronous handling. This may be necessary to support legacy external
+        filters that did not handle meta buckets correctly.</p>
+
+        <p>If set to "network", asynchronous handling will be limited to the network
+        filter only. If set to "connection", all connection and network filters
+        will be eligible for asynchronous handling, including <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code>.
+        If set to "request", all filters will be eligible for asynchronous handling.</p>
+    
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
 <div class="directive-section"><h2><a name="CGIMapExtension" id="CGIMapExtension">CGIMapExtension</a> <a name="cgimapextension" id="cgimapextension">Directive</a></h2>
@@ -625,6 +652,43 @@ scripts</td></tr>
     cause all CGI script files with a <code>.foo</code> extension to
     be passed to the FOO interpreter.</p>
 
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="CGIPassAuth" id="CGIPassAuth">CGIPassAuth</a> <a name="cgipassauth" id="cgipassauth">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Enables passing HTTP authorization headers to scripts as CGI
+variables</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>CGIPassAuth On|Off</code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>CGIPassAuth Off</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>directory, .htaccess</td></tr>
+<tr><th><a href="directive-dict.html#Override">Override:</a></th><td>AuthConfig</td></tr>
+<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache HTTP Server 2.4.13 and later</td></tr>
+</table>
+    <p><code class="directive">CGIPassAuth</code> allows scripts access to HTTP
+    authorization headers such as <code>Authorization</code>, which is
+    required for scripts that implement HTTP Basic authentication.
+    Normally these HTTP headers are hidden from scripts. This is to disallow
+    scripts from seeing user ids and passwords used to access the server when
+    HTTP Basic authentication is enabled in the web server.  This directive
+    should be used when scripts are allowed to implement HTTP Basic
+    authentication.</p>
+
+    <p>This directive can be used instead of the compile-time setting
+    <code>SECURITY_HOLE_PASS_AUTHORIZATION</code> which has been available
+    in previous versions of Apache HTTP Server.</p>
+
+    <p>The setting is respected by any modules which use
+    <code>ap_add_common_vars()</code>, such as <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code>,
+    <code class="module"><a href="../mod/mod_cgid.html">mod_cgid</a></code>, <code class="module"><a href="../mod/mod_proxy_fcgi.html">mod_proxy_fcgi</a></code>,
+    <code class="module"><a href="../mod/mod_proxy_scgi.html">mod_proxy_scgi</a></code>, and so on.  Notably, it affects
+    modules which don't handle the request in the usual sense but
+    still use this API; examples of this are <code class="module"><a href="../mod/mod_include.html">mod_include</a></code>
+    and <code class="module"><a href="../mod/mod_ext_filter.html">mod_ext_filter</a></code>.  Third-party modules that don't
+    use <code>ap_add_common_vars()</code> may choose to respect the setting
+    as well.</p>
+
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
 <div class="directive-section"><h2><a name="ContentDigest" id="ContentDigest">ContentDigest</a> <a name="contentdigest" id="contentdigest">Directive</a></h2>
@@ -675,22 +739,23 @@ headers</td></tr>
 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache 2.4.2 and later</td></tr>
 </table>
     <p>The <code class="directive">DefaultRuntimeDir</code> directive sets the
     directory in which the server will create various run-time files
     (shared memory, locks, etc.). If set as a relative path, the full path
-    will be relative to <code class="directive">ServerRoot</code></p>
+    will be relative to <code class="directive">ServerRoot</code>.</p>
+
+    <p><strong>Example</strong></p>
+   <pre class="prettyprint lang-config">DefaultRuntimeDir scratch/</pre>
 
-    <div class="example"><h3>Example</h3><p><code>
-      DefaultRuntimeDir scratch/
-    </code></p></div>
 
     <p>The default location of <code class="directive">DefaultRuntimeDir</code> may be
     modified by changing the <code>DEFAULT_REL_RUNTIMEDIR</code> #define
     at build time.</p>
 
    <p>Note: <code class="directive">ServerRoot</code> should be specified before this
-   directive is used, otherwise the default value of <code class="directive">ServerRoot</code>
+   directive is used. Otherwise, the default value of <code class="directive">ServerRoot</code>
    would be used to set the base directory.</p>
 
 
@@ -715,15 +780,15 @@ which no other media type configuration could be found.
 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>FileInfo</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>The argument <code>none</code> is available in Apache httpd 2.2.7 and later.  All other choices are DISABLED for 2.3.x and later.</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>All choices except <code>none</code> are DISABLED for 2.3.x and later.
+</td></tr>
 </table>
     <p>This directive has been disabled.  For backwards compatibility
     of configuration files, it may be specified with the value
     <code>none</code>, meaning no default media type. For example:</p>
 
-    <div class="example"><p><code>
-      DefaultType None
-    </code></p></div>
+    <pre class="prettyprint lang-config">DefaultType None</pre>
+
 
     <p><code>DefaultType None</code> is only available in
     httpd-2.2.7 and later.</p>
@@ -742,7 +807,7 @@ which no other media type configuration could be found.
 <table class="directive">
 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Define a variable</td></tr>
 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>Define <var>parameter-name</var> [<var>parameter-value</var>]</code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory</td></tr>
+<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
 </table>
@@ -758,19 +823,24 @@ which no other media type configuration could be found.
     the <code>${VAR}</code> syntax. The variable is always globally defined
     and not limited to the scope of the surrounding config section.</p>
 
-    <div class="example"><p><code>
-      &lt;IfDefine TEST&gt;<br />
-      &nbsp;&nbsp;Define servername test.example.com<br />
-      &lt;/IfDefine&gt;<br />
-      &lt;IfDefine !TEST&gt;<br />
-      &nbsp;&nbsp;Define servername www.example.com<br />
-      &nbsp;&nbsp;Define SSL<br />
-      &lt;/IfDefine&gt;<br />
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;IfDefine TEST&gt;
+  Define servername test.example.com
+&lt;/IfDefine&gt;
+&lt;IfDefine !TEST&gt;
+  Define servername www.example.com
+  Define SSL
+&lt;/IfDefine&gt;
+
+DocumentRoot "/var/www/${servername}/htdocs"</pre>
+
 
     <p>Variable names may not contain colon ":" characters, to avoid clashes
     with <code class="directive"><a href="../mod/mod_rewrite.html#rewritemap">RewriteMap</a></code>'s syntax.</p>
 
+    <p>While this directive is supported in virtual host context,
+       the changes it makes are visible to any later configuration
+       directives, beyond any enclosing virtual host</p>
+
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
 <div class="directive-section"><h2><a name="Directory" id="Directory">&lt;Directory&gt;</a> <a name="directory" id="directory">Directive</a></h2>
@@ -794,17 +864,18 @@ named file-system directory, sub-directories, and their contents.</td></tr>
     any single character, and <code>*</code> matches any sequences of
     characters. You may also use <code>[]</code> character ranges. None
     of the wildcards match a `/' character, so <code>&lt;Directory
-    /*/public_html&gt;</code> will not match
+    "/*/public_html"&gt;</code> will not match
     <code>/home/user/public_html</code>, but <code>&lt;Directory
-    /home/*/public_html&gt;</code> will match. Example:</p>
+    "/home/*/public_html"&gt;</code> will match. Example:</p>
 
-    <div class="example"><p><code>
-      &lt;Directory /usr/local/httpd/htdocs&gt;<br />
-      <span class="indent">
-        Options Indexes FollowSymLinks<br />
-      </span>
-      &lt;/Directory&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Directory "/usr/local/httpd/htdocs"&gt;
+  Options Indexes FollowSymLinks
+&lt;/Directory&gt;</pre>
+
+
+    <p>Directory paths <em>may</em> be quoted, if you like, however, it
+    <em>must</em> be quoted if the path contains spaces. This is because a
+    space would otherwise indicate the end of an argument.</p>
 
     <div class="note">
       <p>Be careful with the <var>directory-path</var> arguments:
@@ -819,9 +890,10 @@ named file-system directory, sub-directories, and their contents.</td></tr>
     expressions</a> can also be used, with the addition of the
     <code>~</code> character. For example:</p>
 
-    <div class="example"><p><code>
-      &lt;Directory ~ "^/www/.*/[0-9]{3}"&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Directory ~ "^/www/[0-9]{3}"&gt;
+
+&lt;/Directory&gt;</pre>
+
 
     <p>would match directories in <code>/www/</code> that consisted of
     three numbers.</p>
@@ -832,19 +904,14 @@ named file-system directory, sub-directories, and their contents.</td></tr>
     first, interspersed with the directives from the <a href="#accessfilename">.htaccess</a> files. For example,
     with</p>
 
-    <div class="example"><p><code>
-      &lt;Directory /&gt;<br />
-      <span class="indent">
-        AllowOverride None<br />
-      </span>
-      &lt;/Directory&gt;<br />
-      <br />
-      &lt;Directory /home&gt;<br />
-      <span class="indent">
-        AllowOverride FileInfo<br />
-      </span>
-      &lt;/Directory&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Directory "/"&gt;
+  AllowOverride None
+&lt;/Directory&gt;
+
+&lt;Directory "/home"&gt;
+  AllowOverride FileInfo
+&lt;/Directory&gt;</pre>
+
 
     <p>for access to the document <code>/home/web/dir/doc.html</code>
     the steps are:</p>
@@ -866,13 +933,10 @@ named file-system directory, sub-directories, and their contents.</td></tr>
     expressions are tested in the order they appeared in the
     configuration file. For example, with</p>
 
-    <div class="example"><p><code>
-      &lt;Directory ~ abc$&gt;<br />
-      <span class="indent">
-        # ... directives here ...<br />
-      </span>
-      &lt;/Directory&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Directory ~ "abc$"&gt;
+  # ... directives here ...
+&lt;/Directory&gt;</pre>
+
 
     <p>the regular expression section won't be considered until after
     all normal <code class="directive">&lt;Directory&gt;</code>s and
@@ -882,18 +946,15 @@ named file-system directory, sub-directories, and their contents.</td></tr>
     be applied.</p>
 
    <p><strong>Note that the default access for
-    <code>&lt;Directory /&gt;</code> is to permit all access.
+    <code>&lt;Directory "/"&gt;</code> is to permit all access.
     This means that Apache httpd will serve any file mapped from an URL. It is
     recommended that you change this with a block such
     as</strong></p>
 
-    <div class="example"><p><code>
-      &lt;Directory /&gt;<br />
-      <span class="indent">
-        Require all denied<br />
-      </span>
-      &lt;/Directory&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Directory "/"&gt;
+  Require all denied
+&lt;/Directory&gt;</pre>
+
 
     <p><strong>and then override this for directories you
     <em>want</em> accessible. See the <a href="../misc/security_tips.html">Security Tips</a> page for more
@@ -929,12 +990,13 @@ the contents of file-system directories matching a regular expression.</td></tr>
     However, it takes as an argument a
     <a class="glossarylink" href="../glossary.html#regex" title="see glossary">regular expression</a>.  For example:</p>
 
-    <div class="example"><p><code>
-      &lt;DirectoryMatch "^/www/(.+/)?[0-9]{3}"&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;DirectoryMatch "^/www/(.+/)?[0-9]{3}/"&gt;
+    # ...
+&lt;/DirectoryMatch&gt;</pre>
+
 
-    <p>would match directories in <code>/www/</code> that consisted of three
-    numbers.</p>
+    <p>matches directories in <code>/www/</code> (or any subdirectory thereof)
+    that consist of three numbers.</p>
 
    <div class="note"><h3>Compatability</h3>
       Prior to 2.3.9, this directive implicitly applied to sub-directories
@@ -950,6 +1012,18 @@ the contents of file-system directories matching a regular expression.</td></tr>
       end of line ($) must be written with care.
     </div>
 
+    <p>From 2.4.8 onwards, named groups and backreferences are captured and
+    written to the environment with the corresponding name prefixed with
+    "MATCH_" and in upper case. This allows elements of paths to be referenced
+    from within <a href="../expr.html">expressions</a> and modules like
+    <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>. In order to prevent confusion, numbered
+    (unnamed) backreferences are ignored. Use named groups instead.</p>
+
+<pre class="prettyprint lang-config">&lt;DirectoryMatch "^/var/www/combined/(?&lt;sitename&gt;[^/]+)"&gt;
+    Require ldap-group cn=%{env:MATCH_SITENAME},ou=combined,o=Example
+&lt;/DirectoryMatch&gt;</pre>
+
+
 <h3>See also</h3>
 <ul>
 <li><code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> for
@@ -976,9 +1050,8 @@ from the web</td></tr>
     path from the requested URL to the document root to make the
     path to the document. Example:</p>
 
-    <div class="example"><p><code>
-      DocumentRoot /usr/web
-    </code></p></div>
+    <pre class="prettyprint lang-config">DocumentRoot "/usr/web"</pre>
+
 
     <p>then an access to
     <code>http://my.example.com/index.html</code> refers to
@@ -1014,14 +1087,13 @@ satisfied by a request at runtime</td></tr>
     in the same scope has not been applied.
     For example: In </p>
 
-    <div class="example"><p><code>
-        &lt;If "-z req('Host')"&gt;<br />
-        ...<br />
-        &lt;/If&gt;<br />
-        &lt;Else&gt;<br />
-        ...<br />
-        &lt;/Else&gt;<br />
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;If "-z req('Host')"&gt;
+  # ...
+&lt;/If&gt;
+&lt;Else&gt;
+  # ...
+&lt;/Else&gt;</pre>
+
 
     <p> The <code class="directive">&lt;If&gt;</code> would match HTTP/1.0
         requests without a <var>Host:</var> header and the
@@ -1061,17 +1133,16 @@ satisfied</td></tr>
     <code class="directive">&lt;ElseIf&gt;</code> section in the same scope has
     not been applied.  For example: In </p>
 
-    <div class="example"><p><code>
-        &lt;If "-R '10.1.0.0/16'"&gt;<br />
-        ...<br />
-        &lt;/If&gt;<br />
-        &lt;ElseIf "-R '10.0.0.0/8'"&gt;<br />
-        ...<br />
-        &lt;/ElseIf&gt;<br />
-        &lt;Else&gt;<br />
-        ...<br />
-        &lt;/Else&gt;<br />
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;If "-R '10.1.0.0/16'"&gt;
+  #...
+&lt;/If&gt;
+&lt;ElseIf "-R '10.0.0.0/8'"&gt;
+  #...
+&lt;/ElseIf&gt;
+&lt;Else&gt;
+  #...
+&lt;/Else&gt;</pre>
+
 
     <p>The <code class="directive">&lt;ElseIf&gt;</code> would match if
     the remote address of a request belongs to the subnet 10.0.0.0/8 but
@@ -1126,20 +1197,16 @@ for a complete reference and more examples.</li>
     <p>For server configurations that are vulnerable to these problems,
     you should disable memory-mapping of delivered files by specifying:</p>
 
-    <div class="example"><p><code>
-      EnableMMAP Off
-    </code></p></div>
+    <pre class="prettyprint lang-config">EnableMMAP Off</pre>
+
 
     <p>For NFS mounted files, this feature may be disabled explicitly for
     the offending files by specifying:</p>
 
-    <div class="example"><p><code>
-      &lt;Directory "/path-to-nfs-files"&gt;
-      <span class="indent">
-        EnableMMAP Off
-      </span>
-      &lt;/Directory&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Directory "/path-to-nfs-files"&gt;
+  EnableMMAP Off
+&lt;/Directory&gt;</pre>
+
 
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
@@ -1152,7 +1219,7 @@ for a complete reference and more examples.</li>
 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>FileInfo</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in version 2.0.44 and later. Default changed to Off in
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Default changed to Off in
 version 2.3.9.</td></tr>
 </table>
     <p>This directive controls whether <code class="program"><a href="../programs/httpd.html">httpd</a></code> may use the
@@ -1184,20 +1251,16 @@ version 2.3.9.</td></tr>
     <p>For server configurations that are not vulnerable to these problems,
     you may enable this feature by specifying:</p>
 
-    <div class="example"><p><code>
-      EnableSendfile On
-    </code></p></div>
+    <pre class="prettyprint lang-config">EnableSendfile On</pre>
+
 
     <p>For network mounted files, this feature may be disabled explicitly
     for the offending files by specifying:</p>
 
-    <div class="example"><p><code>
-      &lt;Directory "/path-to-nfs-files"&gt;
-      <span class="indent">
-        EnableSendfile Off
-      </span>
-      &lt;/Directory&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Directory "/path-to-nfs-files"&gt;
+  EnableSendfile Off
+&lt;/Directory&gt;</pre>
+
     <p>Please note that the per-directory and .htaccess configuration
        of <code class="directive">EnableSendfile</code> is not supported by
        <code class="module"><a href="../mod/mod_cache_disk.html">mod_cache_disk</a></code>.
@@ -1221,24 +1284,24 @@ version 2.3.9.</td></tr>
     configuration parsing.  The typical use is for reporting required
     modules which are missing from the configuration.</p>
 
-    <div class="example"><h3>Example</h3><p><code>
-      # ensure that mod_include is loaded<br />
-      &lt;IfModule !include_module&gt;<br />
-      Error mod_include is required by mod_foo.  Load it with LoadModule.<br />
-      &lt;/IfModule&gt;<br />
-      <br />
-      # ensure that exactly one of SSL,NOSSL is defined<br />
-      &lt;IfDefine SSL&gt;<br />
-      &lt;IfDefine NOSSL&gt;<br />
-      Error Both SSL and NOSSL are defined.  Define only one of them.<br />
-      &lt;/IfDefine&gt;<br />
-      &lt;/IfDefine&gt;<br />
-      &lt;IfDefine !SSL&gt;<br />
-      &lt;IfDefine !NOSSL&gt;<br />
-      Error Either SSL or NOSSL must be defined.<br />
-      &lt;/IfDefine&gt;<br />
-      &lt;/IfDefine&gt;<br />
-    </code></p></div>
+    <pre class="prettyprint lang-config"># Example
+# ensure that mod_include is loaded
+&lt;IfModule !include_module&gt;
+  Error "mod_include is required by mod_foo.  Load it with LoadModule."
+&lt;/IfModule&gt;
+
+# ensure that exactly one of SSL,NOSSL is defined
+&lt;IfDefine SSL&gt;
+&lt;IfDefine NOSSL&gt;
+  Error "Both SSL and NOSSL are defined.  Define only one of them."
+&lt;/IfDefine&gt;
+&lt;/IfDefine&gt;
+&lt;IfDefine !SSL&gt;
+&lt;IfDefine !NOSSL&gt;
+  Error "Either SSL or NOSSL must be defined."
+&lt;/IfDefine&gt;
+&lt;/IfDefine&gt;</pre>
+
 
 
 </div>
@@ -1261,7 +1324,7 @@ in case of an error</td></tr>
 
       <li>output a customized message</li>
 
-      <li>redirect to a local <var>URL-path</var> to handle the
+      <li>internally redirect to a local <var>URL-path</var> to handle the
       problem/error</li>
 
       <li>redirect to an external <var>URL</var> to handle the
@@ -1274,18 +1337,23 @@ in case of an error</td></tr>
     or a message. Apache httpd will sometimes offer additional information
     regarding the problem/error.</p>
 
+    <p>From 2.4.13, <a href="../expr.html">expression syntax</a> can be
+    used inside the directive to produce dynamic strings and URLs.</p>
+
     <p>URLs can begin with a slash (/) for local web-paths (relative
     to the <code class="directive"><a href="#documentroot">DocumentRoot</a></code>), or be a
     full URL which the client can resolve. Alternatively, a message
-    can be provided to be displayed by the browser. Examples:</p>
+    can be provided to be displayed by the browser. Note that deciding
+    whether the parameter is an URL, a path or a message is performed
+    before any expression is parsed. Examples:</p>
+
+    <pre class="prettyprint lang-config">ErrorDocument 500 http://foo.example.com/cgi-bin/tester
+ErrorDocument 404 /cgi-bin/bad_urls.pl
+ErrorDocument 401 /subscription_info.html
+ErrorDocument 403 "Sorry can't allow you access today"
+ErrorDocument 403 Forbidden!
+ErrorDocument 403 /cgi-bin/forbidden.pl?referrer=%{escape:%{HTTP_REFERER}}</pre>
 
-    <div class="example"><p><code>
-      ErrorDocument 500 http://foo.example.com/cgi-bin/tester<br />
-      ErrorDocument 404 /cgi-bin/bad_urls.pl<br />
-      ErrorDocument 401 /subscription_info.html<br />
-      ErrorDocument 403 "Sorry can't allow you access today"<br />
-      ErrorDocument 403 Forbidden!
-    </code></p></div>
 
     <p>Additionally, the special value <code>default</code> can be used
     to specify Apache httpd's simple hardcoded message.  While not required
@@ -1293,14 +1361,12 @@ in case of an error</td></tr>
     Apache httpd's simple hardcoded message for configurations that would
     otherwise inherit an existing <code class="directive">ErrorDocument</code>.</p>
 
-    <div class="example"><p><code>
-      ErrorDocument 404 /cgi-bin/bad_urls.pl<br /><br />
-      &lt;Directory /web/docs&gt;<br />
-      <span class="indent">
-        ErrorDocument 404 default<br />
-      </span>
-      &lt;/Directory&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">ErrorDocument 404 /cgi-bin/bad_urls.pl
+
+&lt;Directory "/web/docs"&gt;
+  ErrorDocument 404 default
+&lt;/Directory&gt;</pre>
+
 
     <p>Note that when you specify an <code class="directive">ErrorDocument</code>
     that points to a remote URL (ie. anything with a method such as
@@ -1315,7 +1381,7 @@ in case of an error</td></tr>
     URL in an <code>ErrorDocument 401</code>, the client will not
     know to prompt the user for a password since it will not
     receive the 401 status code. Therefore, <strong>if you use an
-    <code>ErrorDocument 401</code> directive then it must refer to a local
+    <code>ErrorDocument 401</code> directive, then it must refer to a local
     document.</strong></p>
 
     <p>Microsoft Internet Explorer (MSIE) will by default ignore
@@ -1326,7 +1392,7 @@ in case of an error</td></tr>
     error rather than masking it.  More information is available in
     Microsoft Knowledge Base article <a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;Q294807">Q294807</a>.</p>
 
-    <p>Although most error messages can be overriden, there are certain
+    <p>Although most error messages can be overridden, there are certain
     circumstances where the internal messages are used regardless of the
     setting of <code class="directive"><a href="#errordocument">ErrorDocument</a></code>.  In
     particular, if a malformed request is detected, normal request processing
@@ -1360,33 +1426,33 @@ in case of an error</td></tr>
     the <var>file-path</var> is not absolute then it is assumed to be
     relative to the <code class="directive"><a href="#serverroot">ServerRoot</a></code>.</p>
 
-    <div class="example"><h3>Example</h3><p><code>
-    ErrorLog /var/log/httpd/error_log
-    </code></p></div>
+    <pre class="prettyprint lang-config">ErrorLog "/var/log/httpd/error_log"</pre>
+
 
     <p>If the <var>file-path</var>
     begins with a pipe character "<code>|</code>" then it is assumed to be a
     command to spawn to handle the error log.</p>
 
-    <div class="example"><h3>Example</h3><p><code>
-    ErrorLog "|/usr/local/bin/httpd_errors"
-    </code></p></div>
+    <pre class="prettyprint lang-config">ErrorLog "|/usr/local/bin/httpd_errors"</pre>
+
 
     <p>See the notes on <a href="../logs.html#piped">piped logs</a> for
     more information.</p>
 
     <p>Using <code>syslog</code> instead of a filename enables logging
-    via syslogd(8) if the system supports it. The default is to use
-    syslog facility <code>local7</code>, but you can override this by
-    using the <code>syslog:<var>facility</var></code> syntax where
-    <var>facility</var> can be one of the names usually documented in
+    via syslogd(8) if the system supports it and if <code class="module"><a href="../mod/mod_syslog.html">mod_syslog</a></code>
+    is loaded. The default is to use syslog facility <code>local7</code>,
+    but you can override this by using the <code>syslog:<var>facility</var></code>
+    syntax where <var>facility</var> can be one of the names usually documented in
     syslog(1).  The facility is effectively global, and if it is changed
     in individual virtual hosts, the final facility specified affects the
     entire server.</p>
 
-    <div class="example"><h3>Example</h3><p><code>
-    ErrorLog syslog:user
-    </code></p></div>
+    <pre class="prettyprint lang-config">ErrorLog syslog:user</pre>
+
+
+    <p>Additional modules can provide their own ErrorLog providers. The syntax
+    is similar to the <code>syslog</code> example above.</p>
 
     <p>SECURITY: See the <a href="../misc/security_tips.html#serverroot">security tips</a>
     document for details on why your security could be compromised
@@ -1413,15 +1479,14 @@ in case of an error</td></tr>
 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache httpd 2.3.9 and later</td></tr>
 </table>
     <p><code class="directive">ErrorLogFormat</code> allows to specify what
     supplementary information is logged in the error log in addition to the
     actual log message.</p>
 
-    <div class="example"><h3>Simple example</h3><p><code>
-        ErrorLogFormat "[%t] [%l] [pid %P] %F: %E: [client %a] %M"
-    </code></p></div>
+    <pre class="prettyprint lang-config">#Simple example
+ErrorLogFormat "[%t] [%l] [pid %P] %F: %E: [client %a] %M"</pre>
+
 
     <p>Specifying <code>connection</code> or <code>request</code> as first
     parameter allows to specify additional formats, causing additional
@@ -1435,15 +1500,15 @@ in case of an error</td></tr>
     example, the Referer header is only present if the log message is
     associated to a request and the log message happens at a time when the
     Referer header has already been read from the client.  If no output is
-    produced, the default behavior is to delete everything from the preceeding
+    produced, the default behavior is to delete everything from the preceding
     space character to the next space character.  This means the log line is
     implicitly divided into fields on non-whitespace to whitespace transitions.
     If a format string item does not produce output, the whole field is
-    ommitted.  For example, if the remote address <code>%a</code> in the log
+    omitted.  For example, if the remote address <code>%a</code> in the log
     format <code>[%t] [%l] [%a] %M&nbsp;</code> is not available, the surrounding
     brackets are not logged either.  Space characters can be escaped with a
     backslash to prevent them from delimiting a field.  The combination '%&nbsp;'
-    (percent space) is a zero-witdh field delimiter that does not produce any
+    (percent space) is a zero-width field delimiter that does not produce any
     output.</p>
 
     <p>The above behavior can be changed by adding modifiers to the format
@@ -1451,7 +1516,7 @@ in case of an error</td></tr>
     respective item does not produce any output. In once-per-connection/request
     formats, it is also possible to use the <code>+</code> (plus) modifier. If an
     item with the plus modifier does not produce any output, the whole line is
-    ommitted.</p>
+    omitted.</p>
 
     <p>A number as modifier can be used to assign a log severity level to a
     format item. The item will only be logged if the severity of the log
@@ -1545,36 +1610,34 @@ in case of an error</td></tr>
     or request. This can be used to correlate which log lines belong to the
     same connection or request, which request happens on which connection.
     A <code>%L</code> format string is also available in
-    <code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code>, to allow to correlate access log entries
+    <code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code> to allow to correlate access log entries
     with error log lines. If <code class="module"><a href="../mod/mod_unique_id.html">mod_unique_id</a></code> is loaded, its
     unique id will be used as log ID for requests.</p>
 
-    <div class="example"><h3>Example (default format)</h3><p><code>
-        ErrorLogFormat "[%{u}t] [%-m:%l] [pid %P:tid %T] %7F: %E: [client\ %a]
-        %M%&nbsp;,\&nbsp;referer\&nbsp;%{Referer}i"
-    </code></p></div>
+    <pre class="prettyprint lang-config">#Example (default format for threaded MPMs)
+ErrorLogFormat "[%{u}t] [%-m:%l] [pid %P:tid %T] %7F: %E: [client\ %a] %M% ,\ referer\ %{Referer}i"</pre>
+
 
     <p>This would result in error messages such as:</p>
 
-    <div class="example"><p><code>
+       <div class="example"><p><code>
     [Thu May 12 08:28:57.652118 2011] [core:error] [pid 8777:tid 4326490112] [client ::1:58619] File does not exist: /usr/local/apache2/htdocs/favicon.ico
     </code></p></div>
 
-    <p>Notice that, as discussed above, some fields are ommitted
+    <p>Notice that, as discussed above, some fields are omitted
     entirely because they are not defined.</p>
 
-    <div class="example"><h3>Example (similar to the 2.2.x format)</h3><p><code>
-        ErrorLogFormat "[%t] [%l] %7F: %E: [client\ %a]
-        %M%&nbsp;,\&nbsp;referer\&nbsp;%{Referer}i"
-    </code></p></div>
+    <pre class="prettyprint lang-config">#Example (similar to the 2.2.x format)
+ErrorLogFormat "[%t] [%l] %7F: %E: [client\ %a] %M% ,\ referer\ %{Referer}i"</pre>
+
+
+    <pre class="prettyprint lang-config">#Advanced example with request/connection log IDs
+ErrorLogFormat "[%{uc}t] [%-m:%-l] [R:%L] [C:%{C}L] %7F: %E: %M"
+ErrorLogFormat request "[%{uc}t] [R:%L] Request %k on C:%{c}L pid:%P tid:%T"
+ErrorLogFormat request "[%{uc}t] [R:%L] UA:'%+{User-Agent}i'"
+ErrorLogFormat request "[%{uc}t] [R:%L] Referer:'%+{Referer}i'"
+ErrorLogFormat connection "[%{uc}t] [C:%{c}L] local\ %a remote\ %A"</pre>
 
-    <div class="example"><h3>Advanced example with request/connection log IDs</h3><p><code>
-        ErrorLogFormat "[%{uc}t] [%-m:%-l] [R:%L] [C:%{C}L] %7F: %E: %M"<br />
-        ErrorLogFormat request "[%{uc}t] [R:%L] Request %k on C:%{c}L pid:%P tid:%T"<br />
-        ErrorLogFormat request "[%{uc}t] [R:%L] UA:'%+{User-Agent}i'"<br />
-        ErrorLogFormat request "[%{uc}t] [R:%L] Referer:'%+{Referer}i'"<br />
-        ErrorLogFormat connection "[%{uc}t] [C:%{c}L] local\ %a remote\ %A"<br />
-    </code></p></div>
 
 
 <h3>See also</h3>
@@ -1596,12 +1659,12 @@ request</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
 </table>
     <p>This option tracks additional data per worker about the
-    currently executing request, and a utilization summary; you
-    can see these variables during runtime by configuring
+    currently executing request and creates a utilization summary.
+    You can see these variables during runtime by configuring
     <code class="module"><a href="../mod/mod_status.html">mod_status</a></code>.  Note that other modules may
     rely on this scoreboard.</p>
 
-    <p>This setting applies to the entire server, and cannot be
+    <p>This setting applies to the entire server and cannot be
     enabled or disabled on a virtualhost-by-virtualhost basis.
     The collection of extended status information can slow down
     the server.  Also note that this setting cannot be changed
@@ -1613,7 +1676,7 @@ request</td></tr>
     third party modules may do the same.  Such modules rely on
     collecting detailed information about the state of all workers.
     The default is changed by <code class="module"><a href="../mod/mod_status.html">mod_status</a></code> beginning
-    with version 2.3.6; the previous default was always Off.</p>
+    with version 2.3.6. The previous default was always Off.</p>
     </div>
 
 
@@ -1651,7 +1714,8 @@ earlier.</td></tr>
      <dd>The number of bytes in the file will be included</dd>
      <dt><strong>All</strong></dt>
      <dd>All available fields will be used. This is equivalent to:
-         <div class="example"><p><code>FileETag INode MTime Size</code></p></div></dd>
+         <pre class="prettyprint lang-config">FileETag INode MTime Size</pre>
+</dd>
      <dt><strong>None</strong></dt>
      <dd>If a document is file-based, no <code>ETag</code> field will be
        included in the response</dd>
@@ -1678,7 +1742,7 @@ earlier.</td></tr>
     changed via <code class="directive">FileETag</code>.
     </div>
     <div class="note"><h3>Server Side Includes</h3>
-    An ETag is not generated for responses parsed by <code class="module"><a href="../mod/mod_include.html">mod_include</a></code>,
+    An ETag is not generated for responses parsed by <code class="module"><a href="../mod/mod_include.html">mod_include</a></code>
     since the response entity can change without a change of the INode, MTime, or Size
     of the static file with embedded SSI directives.
     </div>
@@ -1713,14 +1777,23 @@ filenames</td></tr>
 
     <p>The <var>filename</var> argument should include a filename, or
     a wild-card string, where <code>?</code> matches any single character,
-    and <code>*</code> matches any sequences of characters.
-    <a class="glossarylink" href="../glossary.html#regex" title="see glossary">Regular expressions</a>
+    and <code>*</code> matches any sequences of characters.</p>
+    <pre class="prettyprint lang-config">&lt;Files "cat.html"&gt;
+    # Insert stuff that applies to cat.html here
+&lt;/Files&gt;
+
+&lt;Files "?at.*"&gt;
+    # This would apply to cat.html, bat.html, hat.php and so on.
+&lt;/Files&gt;</pre>
+
+    <p><a class="glossarylink" href="../glossary.html#regex" title="see glossary">Regular expressions</a>
     can also be used, with the addition of the
     <code>~</code> character. For example:</p>
 
-    <div class="example"><p><code>
-      &lt;Files ~ "\.(gif|jpe?g|png)$"&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Files ~ "\.(gif|jpe?g|png)$"&gt;
+    #...
+&lt;/Files&gt;</pre>
+
 
     <p>would match most common Internet graphics formats. <code class="directive"><a href="#filesmatch">&lt;FilesMatch&gt;</a></code> is preferred,
     however.</p>
@@ -1754,12 +1827,29 @@ filenames</td></tr>
     does. However, it accepts a <a class="glossarylink" href="../glossary.html#regex" title="see glossary">regular
     expression</a>. For example:</p>
 
-    <div class="example"><p><code>
-      &lt;FilesMatch "\.(gif|jpe?g|png)$"&gt;
-    </code></p></div>
+<pre class="prettyprint lang-config">&lt;FilesMatch ".+\.(gif|jpe?g|png)$"&gt;
+    # ...
+&lt;/FilesMatch&gt;</pre>
+
 
     <p>would match most common Internet graphics formats.</p>
 
+    <div class="note">The <code>.+</code> at the start of the regex ensures that
+    files named <code>.png</code>, or <code>.gif</code>, for example,
+    are not matched.</div>
+
+    <p>From 2.4.8 onwards, named groups and backreferences are captured and
+    written to the environment with the corresponding name prefixed with
+    "MATCH_" and in upper case. This allows elements of files to be referenced
+    from within <a href="../expr.html">expressions</a> and modules like
+    <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>. In order to prevent confusion, numbered
+    (unnamed) backreferences are ignored. Use named groups instead.</p>
+
+<pre class="prettyprint lang-config">&lt;FilesMatch "^(?&lt;sitename&gt;[^/]+)"&gt;
+    require ldap-group cn=%{env:MATCH_SITENAME},ou=combined,o=Example
+&lt;/FilesMatch&gt;</pre>
+
+
 <h3>See also</h3>
 <ul>
 <li><a href="../sections.html">How &lt;Directory&gt;, &lt;Location&gt;
@@ -1777,7 +1867,6 @@ media type in the HTTP Content-Type header field</td></tr>
 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>FileInfo</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Moved to the core in Apache httpd 2.0</td></tr>
 </table>
     <p>When placed into an <code>.htaccess</code> file or a
     <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code>, or
@@ -1789,9 +1878,8 @@ media type in the HTTP Content-Type header field</td></tr>
     GIF files, but did not want to label them all with <code>.gif</code>,
     you might want to use:</p>
 
-    <div class="example"><p><code>
-      ForceType image/gif
-    </code></p></div>
+    <pre class="prettyprint lang-config">ForceType image/gif</pre>
+
 
     <p>Note that this directive overrides other indirect media type
     associations defined in mime.types or via the
@@ -1801,21 +1889,16 @@ media type in the HTTP Content-Type header field</td></tr>
     <code class="directive">ForceType</code> settings
     by using the value of <code>None</code>:</p>
 
-    <div class="example"><p><code>
-      # force all files to be image/gif:<br />
-      &lt;Location /images&gt;<br />
-        <span class="indent">
-          ForceType image/gif<br />
-        </span>
-      &lt;/Location&gt;<br />
-      <br />
-      # but normal mime-type associations here:<br />
-      &lt;Location /images/mixed&gt;<br />
-      <span class="indent">
-        ForceType None<br />
-      </span>
-      &lt;/Location&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config"># force all files to be image/gif:
+&lt;Location "/images"&gt;
+  ForceType image/gif
+&lt;/Location&gt;
+
+# but normal mime-type associations here:
+&lt;Location "/images/mixed"&gt;
+  ForceType None
+&lt;/Location&gt;</pre>
+
 
     <p>This directive primarily overrides the content types generated for
     static files served out of the filesystem.  For resources other than
@@ -1823,6 +1906,30 @@ media type in the HTTP Content-Type header field</td></tr>
     a Content-Type, this directive has no effect.</p>
 
 
+    <div class="note"><h3>Note</h3>
+    <p>If no handler is explicitly set for a request, the specified content
+    type will also be used as the handler name. </p>
+   
+    <p>When explicit directives such as
+    <code class="directive"><a href="#sethandler">SetHandler</a></code> or
+    <code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code> do not apply
+    to the current request, the internal handler name normally set by those
+    directives is instead set to the content type specified by this directive.
+    </p>
+    <p>
+    This is a historical behavior that some third-party modules
+    (such as mod_php) may look for a "synthetic" content type used only to 
+    signal the module to take responsibility for the matching request. 
+    </p>
+
+    <p>Configurations that rely on such "synthetic" types should be avoided.
+    Additionally, configurations that restrict access to
+    <code class="directive"><a href="#sethandler">SetHandler</a></code> or
+    <code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code> should
+    restrict access to this directive as well.</p>
+    </div>
+
+
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
 <div class="directive-section"><h2><a name="GprofDir" id="GprofDir">GprofDir</a> <a name="gprofdir" id="gprofdir">Directive</a></h2>
@@ -1833,7 +1940,7 @@ media type in the HTTP Content-Type header field</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
 </table>
-    <p>When the server has been compiled with gprof profiling suppport,
+    <p>When the server has been compiled with gprof profiling support,
     <code class="directive">GprofDir</code> causes <code>gmon.out</code> files to
     be written to the specified directory when the process exits.  If the
     argument ends with a percent symbol ('%'), subdirectories are created
@@ -1904,20 +2011,18 @@ satisfied by a request at runtime</td></tr>
     directives if and only if the expression evaluates to true.
     For example:</p>
 
-    <div class="example"><p><code>
-        &lt;If "-z req('Host')"&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;If "-z req('Host')"&gt;</pre>
+
 
     <p>would match HTTP/1.0 requests without a <var>Host:</var> header.
     Expressions may contain various shell-like operators for string
-    comparison (<code>=</code>, <code>!=</code>, <code>&lt;</code>, ...),
+    comparison (<code>==</code>, <code>!=</code>, <code>&lt;</code>, ...),
     integer comparison (<code>-eq</code>, <code>-ne</code>, ...),
     and others (<code>-n</code>, <code>-z</code>, <code>-f</code>, ...).
     It is also possible to use regular expressions, </p>
 
-    <div class="example"><p><code>
-        &lt;If "%{QUERY_STRING} =~ /(delete|commit)=.*?elem/"&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;If "%{QUERY_STRING} =~ /(delete|commit)=.*?elem/"&gt;</pre>
+
 
     <p>shell-like pattern matches and many other operations. These operations
     can be done on request headers (<code>req</code>), environment variables
@@ -1925,6 +2030,15 @@ satisfied by a request at runtime</td></tr>
     documentation is available in <a href="../expr.html">Expressions in
     Apache HTTP Server</a>.</p>
 
+    <p>Only directives that support the <a href="directive-dict.html#Context">directory context</a> can be used within this configuration section.</p>
+
+    <div class="warning">
+    Certain variables, such as <code>CONTENT_TYPE</code> and other
+    response headers, are set after &lt;If&gt; conditions have already
+    been evaluated, and so will not be available to use in this
+    directive.
+    </div>
+
 
 <h3>See also</h3>
 <ul>
@@ -1981,32 +2095,21 @@ if a test is true at startup</td></tr>
     nest-able, which can be used to implement simple
     multiple-parameter tests. Example:</p>
 
-    <div class="example"><p><code>
-      httpd -DReverseProxy -DUseCache -DMemCache ...<br />
-      <br />
-      # httpd.conf<br />
-      &lt;IfDefine ReverseProxy&gt;<br />
-      <span class="indent">
-        LoadModule proxy_module   modules/mod_proxy.so<br />
-        LoadModule proxy_http_module   modules/mod_proxy_http.so<br />
-        &lt;IfDefine UseCache&gt;<br />
-        <span class="indent">
-          LoadModule cache_module   modules/mod_cache.so<br />
-          &lt;IfDefine MemCache&gt;<br />
-          <span class="indent">
-            LoadModule mem_cache_module   modules/mod_mem_cache.so<br />
-          </span>
-          &lt;/IfDefine&gt;<br />
-          &lt;IfDefine !MemCache&gt;<br />
-          <span class="indent">
-            LoadModule cache_disk_module   modules/mod_cache_disk.so<br />
-          </span>
-          &lt;/IfDefine&gt;
-        </span>
-        &lt;/IfDefine&gt;
-      </span>
-      &lt;/IfDefine&gt;
-    </code></p></div>
+    <div class="example"><p><code>httpd -DReverseProxy -DUseCache -DMemCache ...</code></p></div>
+    <pre class="prettyprint lang-config">&lt;IfDefine ReverseProxy&gt;
+  LoadModule proxy_module   modules/mod_proxy.so
+  LoadModule proxy_http_module   modules/mod_proxy_http.so
+  &lt;IfDefine UseCache&gt;
+    LoadModule cache_module   modules/mod_cache.so
+    &lt;IfDefine MemCache&gt;
+      LoadModule mem_cache_module   modules/mod_mem_cache.so
+    &lt;/IfDefine&gt;
+    &lt;IfDefine !MemCache&gt;
+      LoadModule cache_disk_module   modules/mod_cache_disk.so
+    &lt;/IfDefine&gt;
+  &lt;/IfDefine&gt;
+&lt;/IfDefine&gt;</pre>
+
 
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
@@ -2020,8 +2123,6 @@ presence or absence of a specific module</td></tr>
 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>All</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Module identifiers are available in version 2.1 and
-later.</td></tr>
 </table>
     <p>The <code>&lt;IfModule <var>test</var>&gt;...&lt;/IfModule&gt;</code>
     section is used to mark directives that are conditional on the presence of
@@ -2071,7 +2172,7 @@ the server configuration files</td></tr>
 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Wildcard matching available in 2.0.41 and later, directory
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Directory
 wildcard matching available in 2.3.6 and later</td></tr>
 </table>
     <p>This directive allows inclusion of other configuration files
@@ -2098,32 +2199,28 @@ wildcard matching available in 2.3.6 and later</td></tr>
 
     <p>Examples:</p>
 
-    <div class="example"><p><code>
-      Include /usr/local/apache2/conf/ssl.conf<br />
-      Include /usr/local/apache2/conf/vhosts/*.conf
-    </code></p></div>
+    <pre class="prettyprint lang-config">Include /usr/local/apache2/conf/ssl.conf
+Include /usr/local/apache2/conf/vhosts/*.conf</pre>
+
 
     <p>Or, providing paths relative to your <code class="directive"><a href="#serverroot">ServerRoot</a></code> directory:</p>
 
-    <div class="example"><p><code>
-      Include conf/ssl.conf<br />
-      Include conf/vhosts/*.conf
-    </code></p></div>
+    <pre class="prettyprint lang-config">Include conf/ssl.conf
+Include conf/vhosts/*.conf</pre>
+
 
     <p>Wildcards may be included in the directory or file portion of the
     path. This example will fail if there is no subdirectory in conf/vhosts
     that contains at least one *.conf file:</p>
 
-    <div class="example"><p><code>
-      Include conf/vhosts/*/*.conf
-    </code></p></div>
+    <pre class="prettyprint lang-config">Include conf/vhosts/*/*.conf</pre>
+
 
     <p>Alternatively, the following command will just be ignored in case of
     missing files or directories:</p>
 
-    <div class="example"><p><code>
-      IncludeOptional conf/vhosts/*/*.conf
-    </code></p></div>
+    <pre class="prettyprint lang-config">IncludeOptional conf/vhosts/*/*.conf</pre>
+
 
 
 <h3>See also</h3>
@@ -2186,7 +2283,7 @@ the server configuration files</td></tr>
     encoding will be used in order to send content of unknown
     length over persistent connections.</p>
 
-    <p>When a client uses a Keep-Alive connection it will be counted
+    <p>When a client uses a Keep-Alive connection, it will be counted
     as a single "request" for the <code class="directive"><a href="../mod/mpm_common.html#maxconnectionsperchild">MaxConnectionsPerChild</a></code> directive, regardless
     of how many requests are sent using the connection.</p>
 
@@ -2205,8 +2302,6 @@ requests on a persistent connection</td></tr>
 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Specifying a value in milliseconds is available in
-Apache httpd 2.3.2 and later</td></tr>
 </table>
     <p>The number of seconds Apache httpd will wait for a subsequent
     request before closing the connection. By adding a postfix of ms the
@@ -2219,8 +2314,9 @@ Apache httpd 2.3.2 and later</td></tr>
     higher the timeout, the more server processes will be kept
     occupied waiting on connections with idle clients.</p>
 
-    <p>In a name-based virtual host context, the value of the first
-    defined virtual host best matching the local IP and port will be used.</p>
+    <p>If <code class="directive">KeepAliveTimeout</code> is <strong>not</strong>
+    set for a name-based virtual host, the value of the first defined
+    virtual host best matching the local IP and port will be used.</p>
 
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
@@ -2249,13 +2345,10 @@ methods</td></tr>
     only to the methods <code>POST</code>, <code>PUT</code>, and
     <code>DELETE</code>, leaving all other methods unprotected:</p>
 
-    <div class="example"><p><code>
-      &lt;Limit POST PUT DELETE&gt;<br />
-      <span class="indent">
-        Require valid-user<br />
-      </span>
-      &lt;/Limit&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Limit POST PUT DELETE&gt;
+  Require valid-user
+&lt;/Limit&gt;</pre>
+
 
     <p>The method names listed can be one or more of: <code>GET</code>,
     <code>POST</code>, <code>PUT</code>, <code>DELETE</code>,
@@ -2263,7 +2356,7 @@ methods</td></tr>
     <code>PATCH</code>, <code>PROPFIND</code>, <code>PROPPATCH</code>,
     <code>MKCOL</code>, <code>COPY</code>, <code>MOVE</code>,
     <code>LOCK</code>, and <code>UNLOCK</code>. <strong>The method name is
-    case-sensitive.</strong> If <code>GET</code> is used it will also
+    case-sensitive.</strong> If <code>GET</code> is used, it will also
     restrict <code>HEAD</code> requests. The <code>TRACE</code> method
     cannot be limited (see <code class="directive"><a href="#traceenable">TraceEnable</a></code>).</p>
 
@@ -2291,18 +2384,13 @@ methods</td></tr>
     <code>Require group editors</code> directive will be ignored
     in all cases:</p>
 
-    <div class="example"><p><code>
-      &lt;LimitExcept GET&gt;
-      <span class="indent">
-        Require valid-user
-      </span>
-      &lt;/LimitExcept&gt;<br />
-      &lt;Limit POST&gt;
-      <span class="indent">
-        Require group editors
-      </span>
-      &lt;/Limit&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;LimitExcept GET&gt;
+  Require valid-user
+&lt;/LimitExcept&gt;
+&lt;Limit POST&gt;
+  Require group editors
+&lt;/Limit&gt;</pre>
+
 
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
@@ -2327,13 +2415,10 @@ except the named ones</td></tr>
 
     <p>For example:</p>
 
-    <div class="example"><p><code>
-      &lt;LimitExcept POST GET&gt;<br />
-      <span class="indent">
-        Require valid-user<br />
-      </span>
-      &lt;/LimitExcept&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;LimitExcept POST GET&gt;
+  Require valid-user
+&lt;/LimitExcept&gt;</pre>
+
 
 
 </div>
@@ -2347,7 +2432,6 @@ subrequests</td></tr>
 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache httpd 2.0.47 and later</td></tr>
 </table>
     <p>An internal redirect happens, for example, when using the <code class="directive"><a href="../mod/mod_actions.html#action">Action</a></code> directive, which internally
     redirects the original request to a CGI script. A subrequest is Apache httpd's
@@ -2362,13 +2446,12 @@ subrequests</td></tr>
 
     <p>The directive stores two different limits, which are evaluated on
     per-request basis. The first <var>number</var> is the maximum number of
-    internal redirects, that may follow each other. The second <var>number</var>
-    determines, how deep subrequests may be nested. If you specify only one
+    internal redirects that may follow each other. The second <var>number</var>
+    determines how deeply subrequests may be nested. If you specify only one
     <var>number</var>, it will be assigned to both limits.</p>
 
-    <div class="example"><h3>Example</h3><p><code>
-      LimitInternalRecursion 5
-    </code></p></div>
+    <pre class="prettyprint lang-config">LimitInternalRecursion 5</pre>
+
 
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
@@ -2407,12 +2490,11 @@ from the client</td></tr>
     attacks.</p>
 
     <p>If, for example, you are permitting file upload to a particular
-    location, and wish to limit the size of the uploaded file to 100K,
+    location and wish to limit the size of the uploaded file to 100K,
     you might use the following directive:</p>
 
-    <div class="example"><p><code>
-      LimitRequestBody 102400
-    </code></p></div>
+    <pre class="prettyprint lang-config">LimitRequestBody 102400</pre>
+
 
     <div class="note"><p>For a full description of how this directive is interpreted by
     proxy requests, see the <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code> documentation.</p>
@@ -2456,14 +2538,13 @@ will be accepted from the client</td></tr>
 
     <p>For example:</p>
 
-    <div class="example"><p><code>
-      LimitRequestFields 50
-    </code></p></div>
+    <pre class="prettyprint lang-config">LimitRequestFields 50</pre>
+
 
      <div class="warning"><h3>Warning</h3>
      <p> When name-based virtual hosting is used, the value for this
      directive is taken from the default (first-listed) virtual host for the
-     local IP and port combination</p>.
+     local IP and port combination.</p>
      </div>
 
 
@@ -2498,13 +2579,11 @@ client</td></tr>
 
     <p>For example:</p>
 
-    <div class="example"><p><code>
-      LimitRequestFieldSize 4094
-    </code></p></div>
+    <pre class="prettyprint lang-config">LimitRequestFieldSize 4094</pre>
+
 
     <div class="note">Under normal conditions, the value should not be changed from
-    the default. Also, you can't set this higher than 8190 without
-    modifying the source code and rebuilding.</div>
+    the default.</div>
 
     <div class="warning"><h3>Warning</h3>
     <p> When name-based virtual hosting is used, the value for this
@@ -2543,13 +2622,11 @@ from the client</td></tr>
 
     <p>For example:</p>
 
-    <div class="example"><p><code>
-      LimitRequestLine 4094
-    </code></p></div>
+    <pre class="prettyprint lang-config">LimitRequestLine 4094</pre>
+
 
     <div class="note">Under normal conditions, the value should not be changed from
-    the default. Also, you can't set this higher than 8190 without
-    modifying the source and rebuilding.</div>
+    the default.</div>
 
     <div class="warning"><h3>Warning</h3>
     <p> When name-based virtual hosting is used, the value for this
@@ -2575,9 +2652,8 @@ from the client</td></tr>
 
     <p>Example:</p>
 
-    <div class="example"><p><code>
-      LimitXMLRequestBody 0
-    </code></p></div>
+    <pre class="prettyprint lang-config">LimitXMLRequestBody 0</pre>
+
 
 
 </div>
@@ -2625,26 +2701,26 @@ URLs</td></tr>
     /private1, /private1/ and /private1/file.txt will have the enclosed
     directives applied, but /private1other would not.
     </p>
-    <div class="example"><p><code>
-      &lt;Location /private1&gt;
-          ...
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Location "/private1"&gt;
+    #  ...
+&lt;/Location&gt;</pre>
+
     <p>
     In the example below, where a trailing slash is used, requests to
     /private2/ and /private2/file.txt will have the enclosed
     directives applied, but /private2 and /private2other would not.
     </p>
-    <div class="example"><p><code>
-      &lt;Location /private2<em>/</em>&gt;
-          ...
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Location "/private2<em>/</em>"&gt;
+    # ...
+&lt;/Location&gt;</pre>
+
 
     <div class="note"><h3>When to use <code class="directive">&lt;Location&gt;</code></h3>
 
     <p>Use <code class="directive">&lt;Location&gt;</code> to apply
     directives to content that lives outside the filesystem.  For
     content that lives in the filesystem, use <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> and <code class="directive"><a href="#files">&lt;Files&gt;</a></code>.  An exception is
-    <code>&lt;Location /&gt;</code>, which is an easy way to
+    <code>&lt;Location "/"&gt;</code>, which is an easy way to
     apply a configuration to the entire server.</p>
     </div>
 
@@ -2663,9 +2739,10 @@ URLs</td></tr>
     can also be used, with the addition of the <code>~</code>
     character. For example:</p>
 
-    <div class="example"><p><code>
-      &lt;Location ~ "/(extra|special)/data"&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Location ~ "/(extra|special)/data"&gt;
+    #...
+&lt;/Location&gt;</pre>
+
 
     <p>would match URLs that contained the substring <code>/extra/data</code>
     or <code>/special/data</code>. The directive <code class="directive"><a href="#locationmatch">&lt;LocationMatch&gt;</a></code> behaves
@@ -2676,17 +2753,14 @@ URLs</td></tr>
     <p>The <code class="directive">&lt;Location&gt;</code>
     functionality is especially useful when combined with the
     <code class="directive"><a href="#sethandler">SetHandler</a></code>
-    directive. For example, to enable status requests, but allow them
+    directive. For example, to enable status requests but allow them
     only from browsers at <code>example.com</code>, you might use:</p>
 
-    <div class="example"><p><code>
-      &lt;Location /status&gt;<br />
-      <span class="indent">
-        SetHandler server-status<br />
-        Require host example.com<br />
-      </span>
-      &lt;/Location&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Location "/status"&gt;
+  SetHandler server-status
+  Require host example.com
+&lt;/Location&gt;</pre>
+
 
     <div class="note"><h3>Note about / (slash)</h3>
       <p>The slash character has special meaning depending on where in a
@@ -2698,12 +2772,12 @@ URLs</td></tr>
       directive and the regex version of <code class="directive">&lt;Location&gt;</code> require you to explicitly specify multiple
       slashes if that is your intention.</p>
 
-      <p>For example, <code>&lt;LocationMatch ^/abc&gt;</code> would match
+      <p>For example, <code>&lt;LocationMatch "^/abc"&gt;</code> would match
       the request URL <code>/abc</code> but not the request URL <code>
       //abc</code>. The (non-regex) <code class="directive">&lt;Location&gt;</code> directive behaves similarly when used for
       proxy requests. But when (non-regex) <code class="directive">&lt;Location&gt;</code> is used for non-proxy requests it will
       implicitly match multiple slashes with a single slash. For example,
-      if you specify <code>&lt;Location /abc/def&gt;</code> and the
+      if you specify <code>&lt;Location "/abc/def"&gt;</code> and the
       request is to <code>/abc//def</code> then it will match.</p>
     </div>
 
@@ -2732,13 +2806,35 @@ matching URLs</td></tr>
     it takes a <a class="glossarylink" href="../glossary.html#regex" title="see glossary">regular expression</a>
     as an argument instead of a simple string. For example:</p>
 
-    <div class="example"><p><code>
-      &lt;LocationMatch "/(extra|special)/data"&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;LocationMatch "/(extra|special)/data"&gt;
+    # ...
+&lt;/LocationMatch&gt;</pre>
+
 
     <p>would match URLs that contained the substring <code>/extra/data</code>
     or <code>/special/data</code>.</p>
 
+    <div class="note"><p>If the intent is that a URL <strong>starts with</strong>
+    <code>/extra/data</code>, rather than merely
+    <strong>contains</strong> <code>/extra/data</code>, prefix the
+    regular expression with a <code>^</code> to require this.</p>
+
+    <pre class="prettyprint lang-config">&lt;LocationMatch "^/(extra|special)/data"&gt;</pre>
+
+    </div>
+
+    <p>From 2.4.8 onwards, named groups and backreferences are captured and
+    written to the environment with the corresponding name prefixed with
+    "MATCH_" and in upper case. This allows elements of URLs to be referenced
+    from within <a href="../expr.html">expressions</a> and modules like
+    <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>. In order to prevent confusion, numbered
+    (unnamed) backreferences are ignored. Use named groups instead.</p>
+
+<pre class="prettyprint lang-config">&lt;LocationMatch "^/combined/(?&lt;sitename&gt;[^/]+)"&gt;
+    require ldap-group cn=%{env:MATCH_SITENAME},ou=combined,o=Example
+&lt;/LocationMatch&gt;</pre>
+
+
 <h3>See also</h3>
 <ul>
 <li><a href="../sections.html">How &lt;Directory&gt;, &lt;Location&gt;
@@ -2910,12 +3006,11 @@ matching URLs</td></tr>
 
     <p>For example:</p>
 
-    <div class="example"><p><code>
-      LogLevel notice
-    </code></p></div>
+    <pre class="prettyprint lang-config">LogLevel notice</pre>
+
 
     <div class="note"><h3>Note</h3>
-      <p>When logging to a regular file messages of the level
+      <p>When logging to a regular file, messages of the level
       <code>notice</code> cannot be suppressed and thus are always
       logged. However, this doesn't apply when logging is done
       using <code>syslog</code>.</p>
@@ -2929,28 +3024,86 @@ matching URLs</td></tr>
     as module specification. This means the following three specifications
     are equivalent:</p>
 
-    <div class="example"><p><code>
-      LogLevel info ssl:warn<br />
-      LogLevel info mod_ssl.c:warn<br />
-      LogLevel info ssl_module:warn<br />
-    </code></p></div>
+    <pre class="prettyprint lang-config">LogLevel info ssl:warn
+LogLevel info mod_ssl.c:warn
+LogLevel info ssl_module:warn</pre>
+
 
     <p>It is also possible to change the level per directory:</p>
 
-    <div class="example"><p><code>
-        LogLevel info<br />
-        &lt;Directory /usr/local/apache/htdocs/app&gt;<br />
-        &nbsp; LogLevel debug<br />
-        &lt;/Files&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">LogLevel info
+&lt;Directory "/usr/local/apache/htdocs/app"&gt;
+  LogLevel debug
+&lt;/Directory&gt;</pre>
+
 
     <div class="note">
         Per directory loglevel configuration only affects messages that are
-       logged after the request has been parsed and that are associated with
-       the request. Log messages which are associated with the connection or
-       the server are not affected.
+        logged after the request has been parsed and that are associated with
+        the request. Log messages which are associated with the server or
+        the connection are not affected. The latter can be influenced by the
+        <code class="directive"><a href="#logleveloverride">LogLevelOverride</a></code> directive,
+        though.
+    </div>
+
+<h3>See also</h3>
+<ul>
+<li><code class="directive"><a href="#errorlog">ErrorLog</a></code></li>
+<li><code class="directive"><a href="#errorlogformat">ErrorLogFormat</a></code></li>
+<li><code class="directive"><a href="#logleveloverride">LogLevelOverride</a></code></li>
+<li><a href="../logs.html">Apache HTTP Server Log Files</a></li>
+</ul>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="LogLevelOverride" id="LogLevelOverride">LogLevelOverride</a> <a name="logleveloverride" id="logleveloverride">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Override the verbosity of the ErrorLog for certain clients</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>LogLevel <var>ipaddress</var>[/<var>prefixlen</var>]
+    [<var>module</var>:]<var>level</var> [<var>module</var>:<var>level</var>] ...
+</code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>unset</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
+<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache HTTP Server 2.5.0 and later</td></tr>
+</table>
+    <p><code class="directive">LogLevelOverride</code> adjusts the
+    <code class="directive"><a href="#loglevel">LogLevel</a></code> for requests coming from
+    certain client IP addresses.
+    This allows to enable verbose logging only for certain test clients.
+    The IP address is checked at a very early state in the connection
+    processing.  Therefore, <code class="directive">LogLevelOverride</code> allows to
+    change the log level for things like the SSL handshake which happen before
+    a <code class="directive"><a href="#loglevel">LogLevel</a></code> directive in an
+    <code class="directive"><a href="#if">&lt;If&gt;</a></code> container would
+    be evaluated.</p>
+
+    <p><code class="directive">LogLevelOverride</code> accepts either a single
+    IP-address or a CIDR IP-address/len subnet specification.
+    For the syntax of the loglevel specification, see the
+    <code class="directive"><a href="#loglevel">LogLevel</a></code> directive.</p>
+
+    <p>For requests that match a <code class="directive">LogLevelOverride</code>
+    directive, per-directory specifications of
+    <code class="directive"><a href="#loglevel">LogLevel</a></code> are ignored.</p>
+
+    <p>Examples:</p>
+
+    <pre class="prettyprint lang-config">        LogLevelOverride 192.0.2.0/24 ssl:trace6
+        LogLevelOverride 192.0.2.7 ssl:trace8</pre>
+
+
+    <div class="note">
+        <code class="directive">LogLevelOverride</code> only affects
+        log messages that are associated with the request or the connection.
+        Log messages which are associated with the server are not affected.
     </div>
 
+
+<h3>See also</h3>
+<ul>
+<li><code class="directive"><a href="#loglevel">LogLevel</a></code></li>
+</ul>
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
 <div class="directive-section"><h2><a name="MaxKeepAliveRequests" id="MaxKeepAliveRequests">MaxKeepAliveRequests</a> <a name="maxkeepaliverequests" id="maxkeepaliverequests">Directive</a></h2>
@@ -2972,9 +3125,8 @@ connection</td></tr>
 
     <p>For example:</p>
 
-    <div class="example"><p><code>
-      MaxKeepAliveRequests 500
-    </code></p></div>
+    <pre class="prettyprint lang-config">MaxKeepAliveRequests 500</pre>
+
 
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
@@ -2991,7 +3143,7 @@ connection</td></tr>
 </table>
         <p>The <code class="directive">MaxRangeOverlaps</code> directive
             limits the number of overlapping HTTP ranges the server is willing to
-            return to the client.  If more overlapping ranges then permitted are requested,
+            return to the client. If more overlapping ranges than permitted are requested,
             the complete resource is returned instead.</p>
 
         <dl>
@@ -3025,7 +3177,7 @@ connection</td></tr>
 </table>
         <p>The <code class="directive">MaxRangeReversals</code> directive
             limits the number of HTTP Range reversals the server is willing to
-            return to the client.  If more ranges reversals then permitted are requested,
+            return to the client. If more ranges reversals than permitted are requested,
             the complete resource is returned instead.</p>
 
         <dl>
@@ -3059,7 +3211,7 @@ resource </td></tr>
 </table>
     <p>The <code class="directive">MaxRanges</code> directive
     limits the number of HTTP ranges the server is willing to
-    return to the client.  If more ranges then permitted are requested,
+    return to the client. If more ranges than permitted are requested,
     the complete resource is returned instead.</p>
 
     <dl>
@@ -3078,6 +3230,25 @@ resource </td></tr>
       server is willing to satisfy.</dd>
     </dl>
 
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="MergeTrailers" id="MergeTrailers">MergeTrailers</a> <a name="mergetrailers" id="mergetrailers">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Determines whether trailers are merged into headers</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>MergeTrailers [on|off]</code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>MergeTrailers off</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
+<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>2.4.11 and later</td></tr>
+</table>
+    <p>This directive controls whether HTTP trailers are copied into the
+    internal representation of HTTP headers. This merging occurs when the
+    request body has been completely consumed, long after most header
+    processing would have a chance to examine or modify request headers.</p>
+    <p>This option is provided for compatibility with releases prior to 2.4.11,
+    where trailers were always merged.</p>
+
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
 <div class="directive-section"><h2><a name="Mutex" id="Mutex">Mutex</a> <a name="mutex" id="mutex">Directive</a></h2>
@@ -3094,8 +3265,8 @@ or specified mutexes</td></tr>
     <p>The <code class="directive">Mutex</code> directive sets the mechanism,
     and optionally the lock file location, that httpd and modules use
     to serialize access to resources.  Specify <code>default</code> as
-    the first argument to change the settings for all mutexes; specify
-    a mutex name (see table below) as the first argument to override
+    the second argument to change the settings for all mutexes; specify
+    a mutex name (see table below) as the second argument to override
     defaults only for that mutex.</p>
 
     <p>The <code class="directive">Mutex</code> directive is typically used in
@@ -3170,10 +3341,10 @@ or specified mutexes</td></tr>
         holding a mutex that uses this implementation, the server will deadlock
         and stop responding to requests.  When this occurs, the server will
         require a manual restart to recover.</p>
-        <p>Solaris is a notable exception as it provides a mechanism which
+        <p>Solaris and Linux are notable exceptions as they provide a mechanism which
         usually allows the mutex to be recovered after a child process
         terminates abnormally while holding a mutex.</p>
-        <p>If your system implements the
+        <p>If your system is POSIX compliant or if it implements the
         <code>pthread_mutexattr_setrobust_np()</code> function, you may be able
         to use the <code>pthread</code> option safely.</p>
         </div>
@@ -3210,13 +3381,15 @@ or specified mutexes</td></tr>
 
     <p>With the file-based mechanisms <em>fcntl</em> and <em>flock</em>,
     the path, if provided, is a directory where the lock file will be created.
-    The default directory is httpd's run-time file directory relative to
-    <code class="directive"><a href="#serverroot">ServerRoot</a></code>.  Always use a local disk
-    filesystem for <code>/path/to/mutex</code> and never a directory residing
+    The default directory is httpd's run-time file directory,
+    <code class="directive"><a href="#defaultruntimedir">DefaultRuntimeDir</a></code>.  If a relative
+    path is provided, it is relative to
+    <code class="directive"><a href="#defaultruntimedir">DefaultRuntimeDir</a></code>.  Always use a local
+    disk filesystem for <code>/path/to/mutex</code> and never a directory residing
     on a NFS- or AFS-filesystem.  The basename of the file will be the mutex
     type, an optional instance string provided by the module, and unless the
     <code>OmitPID</code> keyword is specified, the process id of the httpd
-    parent process will be appended to to make the file name unique, avoiding
+    parent process will be appended to make the file name unique, avoiding
     conflicts when multiple httpd instances share a lock file directory.  For
     example, if the mutex name is <code>mpm-accept</code> and the lock file
     directory is <code>/var/httpd/locks</code>, the lock file name for the
@@ -3294,10 +3467,9 @@ or specified mutexes</td></tr>
     <code>/var/httpd/locks</code>.  The mutex mechanism for all other mutexes
     will be changed from the compiled-in default to <code>sysvsem</code>.</p>
 
-    <div class="example"><p><code>
-    Mutex sysvsem default<br />
-    Mutex fcntl:/var/httpd/locks mpm-accept
-    </code></p></div>
+    <pre class="prettyprint lang-config">Mutex sysvsem default
+Mutex fcntl:/var/httpd/locks mpm-accept</pre>
+
 
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
@@ -3365,9 +3537,11 @@ directory</td></tr>
       <div class="note">
       <p>Even though the server follows the symlink it does <em>not</em>
       change the pathname used to match against <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> sections.</p>
-      <p>Note also, that this option <strong>gets ignored</strong> if set
-      inside a <code class="directive"><a href="#location">&lt;Location&gt;</a></code>
-      section.</p>
+
+      <p>The <code>FollowSymLinks</code> and
+      <code>SymLinksIfOwnerMatch</code> <code class="directive"><a href="#options">Options</a></code> work only in <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> sections or
+      <code>.htaccess</code> files.</p>
+
       <p>Omitting this option should not be considered a security restriction,
       since symlink testing is subject to race conditions that make it
       circumventable.</p>
@@ -3392,7 +3566,7 @@ directory</td></tr>
       <dt><code>Indexes</code></dt>
 
       <dd>
-      If a URL which maps to a directory is requested, and there
+      If a URL which maps to a directory is requested and there
       is no <code class="directive"><a href="../mod/mod_dir.html#directoryindex">DirectoryIndex</a></code>
       (<em>e.g.</em>, <code>index.html</code>) in that directory, then
       <code class="module"><a href="../mod/mod_autoindex.html">mod_autoindex</a></code> will return a formatted listing
@@ -3415,12 +3589,15 @@ directory</td></tr>
       target file or directory is owned by the same user id as the
       link.
 
-      <div class="note"><h3>Note</h3> <p>This option gets ignored if
-      set inside a <code class="directive"><a href="#location">&lt;Location&gt;</a></code> section.</p>
+      <div class="note"><h3>Note</h3>
+      <p>The <code>FollowSymLinks</code> and
+      <code>SymLinksIfOwnerMatch</code> <code class="directive"><a href="#options">Options</a></code> work only in <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> sections or
+      <code>.htaccess</code> files.</p>
+
       <p>This option should not be considered a security restriction,
       since symlink testing is subject to race conditions that make it
-      circumventable.</p></div>
-      </dd>
+      circumventable.</p>
+      </div> </dd>
     </dl>
 
     <p>Normally, if multiple <code class="directive">Options</code> could
@@ -3436,44 +3613,34 @@ directory</td></tr>
 
     <div class="note"><h3>Note</h3>
     <p>Mixing <code class="directive">Options</code> with a <code>+</code> or
-    <code>-</code> with those without is not valid syntax, and will be
+    <code>-</code> with those without is not valid syntax and will be
     rejected during server startup by the syntax check with an abort.</p>
     </div>
 
     <p>For example, without any <code>+</code> and <code>-</code> symbols:</p>
 
-    <div class="example"><p><code>
-      &lt;Directory /web/docs&gt;<br />
-      <span class="indent">
-        Options Indexes FollowSymLinks<br />
-      </span>
-      &lt;/Directory&gt;<br />
-      <br />
-      &lt;Directory /web/docs/spec&gt;<br />
-      <span class="indent">
-        Options Includes<br />
-      </span>
-      &lt;/Directory&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Directory "/web/docs"&gt;
+  Options Indexes FollowSymLinks
+&lt;/Directory&gt;
+
+&lt;Directory "/web/docs/spec"&gt;
+  Options Includes
+&lt;/Directory&gt;</pre>
+
 
     <p>then only <code>Includes</code> will be set for the
     <code>/web/docs/spec</code> directory. However if the second
     <code class="directive">Options</code> directive uses the <code>+</code> and
     <code>-</code> symbols:</p>
 
-    <div class="example"><p><code>
-      &lt;Directory /web/docs&gt;<br />
-      <span class="indent">
-        Options Indexes FollowSymLinks<br />
-      </span>
-      &lt;/Directory&gt;<br />
-      <br />
-      &lt;Directory /web/docs/spec&gt;<br />
-      <span class="indent">
-        Options +Includes -Indexes<br />
-      </span>
-      &lt;/Directory&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Directory "/web/docs"&gt;
+  Options Indexes FollowSymLinks
+&lt;/Directory&gt;
+
+&lt;Directory "/web/docs/spec"&gt;
+  Options +Includes -Indexes
+&lt;/Directory&gt;</pre>
+
 
     <p>then the options <code>FollowSymLinks</code> and
     <code>Includes</code> are set for the <code>/web/docs/spec</code>
@@ -3497,29 +3664,144 @@ directory</td></tr>
 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache 2.1.5 and later.
-On Windows from Apache 2.3.3 and later.</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>On Windows, only available from Apache 2.3.3 and later.</td></tr>
 </table>
     <p>This directive specifies the protocol used for a specific listening socket.
-       The protocol is used to determine which module should handle a request, and
+       The protocol is used to determine which module should handle a request and
        to apply protocol specific optimizations with the <code class="directive">AcceptFilter</code>
        directive.</p>
 
-    <p>You only need to set the protocol if you are running on non-standard ports, otherwise <code>http</code> is assumed for port 80 and <code>https</code> for port 443.</p>
+    <p>You only need to set the protocol if you are running on non-standard ports;
+       otherwise, <code>http</code> is assumed for port 80 and <code>https</code>
+       for port 443.</p>
 
-    <p>For example, if you are running <code>https</code> on a non-standard port, specify the protocol explicitly:</p>
+    <p>For example, if you are running <code>https</code> on a non-standard port,
+       specify the protocol explicitly:</p>
+
+    <pre class="prettyprint lang-config">Protocol https</pre>
 
-    <div class="example"><p><code>
-      Protocol https
-    </code></p></div>
 
     <p>You can also specify the protocol using the <code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code> directive.</p>
 
 <h3>See also</h3>
 <ul>
-<li><code class="directive">AcceptFilter</code></li>
+<li><code class="directive"><a href="#acceptfilter">AcceptFilter</a></code></li>
 <li><code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code></li>
 </ul>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="Protocols" id="Protocols">Protocols</a> <a name="protocols" id="protocols">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Protocols available for a server/virtual host</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>Protocols <var>protocol</var> ...</code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>Protocols http/1.1</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
+<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Only available from Apache 2.4.17 and later.</td></tr>
+</table>
+        <p>This directive specifies the list of protocols supported for a
+            server/virtual host. The list determines the allowed protocols
+            a client may negotiate for this server/host.</p>
+        
+        <p>You need to set protocols if you want to extend the available
+            protocols for a server/host. By default, only the http/1.1 protocol
+            (which includes the compatibility with 1.0 and 0.9 clients) is
+            allowed.</p>
+        
+        <p>For example, if you want to support HTTP/2 for a server with TLS, 
+            specify:</p>
+        
+        <pre class="prettyprint lang-config">Protocols h2 http/1.1</pre>
+
+
+        <p>Valid protocols are <code>http/1.1</code> for http and https connections,
+            <code>h2</code> on https connections and <code>h2c</code> for http
+            connections. Modules may enable more protocols.</p>
+        
+        <p>It is safe to specify protocols that are unavailable/disabled. Such
+        protocol names will simply be ignored.</p>
+        
+        <p>Protocols specified in base servers are inherited for virtual hosts 
+            only if the virtual host has no own Protocols directive. Or, the other
+            way around, Protocols directives in virtual hosts replace any
+            such directive in the base server.
+        </p>
+
+    
+<h3>See also</h3>
+<ul>
+<li><code class="directive"><a href="#protocolshonororder">ProtocolsHonorOrder</a></code></li>
+</ul>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ProtocolsHonorOrder" id="ProtocolsHonorOrder">ProtocolsHonorOrder</a> <a name="protocolshonororder" id="protocolshonororder">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Determines if order of Protocols determines precedence during negotiation</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProtocolsHonorOrder On|Off</code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>ProtocolsHonorOrder On</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
+<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Only available from Apache 2.4.17 and later.</td></tr>
+</table>
+        <p>This directive specifies if the server should honor the order in which
+        the <code class="directive">Protocols</code> directive lists protocols.</p>
+        
+        <p>If configured Off, the client supplied list order of protocols has 
+            precedence over the order in the server configuration.</p>
+        
+        <p>With <code class="directive">ProtocolsHonorOrder</code> set to <code>on</code> 
+            (default), the client ordering does not matter and only the ordering 
+            in the server settings influences the outcome of the protocol 
+            negotiation.</p>
+        
+    
+<h3>See also</h3>
+<ul>
+<li><code class="directive"><a href="#protocols">Protocols</a></code></li>
+</ul>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="QualifyRedirectURL" id="QualifyRedirectURL">QualifyRedirectURL</a> <a name="qualifyredirecturl" id="qualifyredirecturl">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Controls whether the REDIRECT_URL environent variable is 
+             fully qualified</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>QualifyRedirectURL ON|OFF</code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>QualifyRedirectURL OFF</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory</td></tr>
+<tr><th><a href="directive-dict.html#Override">Override:</a></th><td>FileInfo</td></tr>
+<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Directive supported in 2.4.18 and later. 2.4.17 acted
+as if 'QualifyRedirectURL ON' was configured.</td></tr>
+</table>
+    <p>This directive controls whether the server will ensure that the 
+    REDIRECT_URL environment variable is fully qualified.  By default, 
+    the variable contains the verbatim URL requested by the client, 
+    such as "/index.html".  With <code class="directive"><a href="#qualifyredirecturl on">QualifyRedirectURL ON</a></code>, the same request would result in a
+    value such as "http://www.example.com/index.html".</p>
+    <p>Even without this directive set, when a request is issued against a 
+    fully qualified URL, REDIRECT_URL will remain fully qualified.
+    </p>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="RegisterHttpMethod" id="RegisterHttpMethod">RegisterHttpMethod</a> <a name="registerhttpmethod" id="registerhttpmethod">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Register non-standard HTTP methods</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>RegisterHttpMethod <var>method</var> [<var>method</var> [...]]</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config</td></tr>
+<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
+</table>
+<p>HTTP Methods that are not conforming to the relvant RFCs are normally
+rejected by request processing in Apache HTTPD. To avoid this, modules
+can register non-standard HTTP methods they support.
+The <code class="directive">RegisterHttpMethod</code> allows to register such
+methods manually. This can be useful if such methods are forwarded
+for external processing, e.g. to a CGI script.</p>
+
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
 <div class="directive-section"><h2><a name="RLimitCPU" id="RLimitCPU">RLimitCPU</a> <a name="rlimitcpu" id="rlimitcpu">Directive</a></h2>
@@ -3539,13 +3821,13 @@ by Apache httpd children</td></tr>
     or <code>max</code> to indicate to the server that the limit should
     be set to the maximum allowed by the operating system
     configuration. Raising the maximum resource limit requires that
-    the server is running as <code>root</code>, or in the initial startup
+    the server is running as <code>root</code> or in the initial startup
     phase.</p>
 
-    <p>This applies to processes forked off from Apache httpd children
+    <p>This applies to processes forked from Apache httpd children
     servicing requests, not the Apache httpd children themselves. This
     includes CGI scripts and SSI exec commands, but not any
-    processes forked off from the Apache httpd parent such as piped
+    processes forked from the Apache httpd parent, such as piped
     logs.</p>
 
     <p>CPU resource limits are expressed in seconds per
@@ -3575,13 +3857,13 @@ by Apache httpd children</td></tr>
     or <code>max</code> to indicate to the server that the limit should
     be set to the maximum allowed by the operating system
     configuration. Raising the maximum resource limit requires that
-    the server is running as <code>root</code>, or in the initial startup
+    the server is running as <code>root</code> or in the initial startup
     phase.</p>
 
-    <p>This applies to processes forked off from Apache httpd children
+    <p>This applies to processes forked from Apache httpd children
     servicing requests, not the Apache httpd children themselves. This
     includes CGI scripts and SSI exec commands, but not any
-    processes forked off from the Apache httpd parent such as piped
+    processes forked from the Apache httpd parent, such as piped
     logs.</p>
 
     <p>Memory resource limits are expressed in bytes per
@@ -3606,18 +3888,18 @@ processes launched by Apache httpd children</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
 </table>
     <p>Takes 1 or 2 parameters. The first parameter sets the soft
-    resource limit for all processes and the second parameter sets
+    resource limit for all processes, and the second parameter sets
     the maximum resource limit. Either parameter can be a number,
     or <code>max</code> to indicate to the server that the limit
     should be set to the maximum allowed by the operating system
     configuration. Raising the maximum resource limit requires that
-    the server is running as <code>root</code>, or in the initial startup
+    the server is running as <code>root</code> or in the initial startup
     phase.</p>
 
-    <p>This applies to processes forked off from Apache httpd children
+    <p>This applies to processes forked from Apache httpd children
     servicing requests, not the Apache httpd children themselves. This
     includes CGI scripts and SSI exec commands, but not any
-    processes forked off from the Apache httpd parent such as piped
+    processes forked from the Apache httpd parent, such as piped
     logs.</p>
 
     <p>Process limits control the number of processes per user.</p>
@@ -3648,9 +3930,7 @@ scripts</td></tr>
 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>FileInfo</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Win32 only;
-option <code>Registry-Strict</code> is available in Apache HTTP Server 2.0 and
-later</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Win32 only.</td></tr>
 </table>
     <p>This directive is used to control how Apache httpd finds the
     interpreter used to run CGI scripts. The default setting is
@@ -3658,15 +3938,13 @@ later</td></tr>
     by the shebang line (first line, starting with <code>#!</code>) in the
     script. On Win32 systems this line usually looks like:</p>
 
-    <div class="example"><p><code>
-      #!C:/Perl/bin/perl.exe
-    </code></p></div>
+    <pre class="prettyprint lang-perl">#!C:/Perl/bin/perl.exe</pre>
+
 
     <p>or, if <code>perl</code> is in the <code>PATH</code>, simply:</p>
 
-    <div class="example"><p><code>
-      #!perl
-    </code></p></div>
+    <pre class="prettyprint lang-perl">#!perl</pre>
+
 
     <p>Setting <code>ScriptInterpreterSource Registry</code> will
     cause the Windows Registry tree <code>HKEY_CLASSES_ROOT</code> to be
@@ -3710,7 +3988,6 @@ of a request or the last 63, assuming the request itself is greater than
 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache httpd 2.2.7 and later.</td></tr>
 </table>
     <p>mod_status with <code>ExtendedStatus On</code>
     displays the actual request being handled.
@@ -3760,9 +4037,8 @@ messages sent to the client</td></tr>
 
     <p>It may be worth setting up a dedicated address for this, e.g.</p>
 
-    <div class="example"><p><code>
-      ServerAdmin www-admin@foo.example.com
-    </code></p></div>
+    <pre class="prettyprint lang-config">ServerAdmin www-admin@foo.example.com</pre>
+
     <p>as users do not always mention that they are talking about the
     server!</p>
 
@@ -3781,15 +4057,23 @@ to name-virtual hosts</td></tr>
     alternate names for a host, for use with <a href="../vhosts/name-based.html">name-based virtual hosts</a>. The
     <code class="directive">ServerAlias</code> may include wildcards, if appropriate.</p>
 
-    <div class="example"><p><code>
-      &lt;VirtualHost *:80&gt;<br />
-      ServerName server.example.com<br />
-      ServerAlias server server2.example.com server2<br />
-      ServerAlias *.example.com<br />
-      UseCanonicalName Off<br />
-      # ...<br />
-      &lt;/VirtualHost&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;VirtualHost *:80&gt;
+  ServerName server.example.com
+  ServerAlias server server2.example.com server2
+  ServerAlias *.example.com
+  UseCanonicalName Off
+  # ...
+&lt;/VirtualHost&gt;</pre>
+
+
+    <p>Name-based virtual hosts for the best-matching set of  <code class="directive"><a href="#virtualhost">&lt;virtualhost&gt;</a></code>s are processed
+    in the order they appear in the configuration.  The first matching <code class="directive"><a href="#servername">ServerName</a></code> or <code class="directive"><a href="#serveralias">ServerAlias</a></code> is used, with no different precedence for wildcards
+    (nor for ServerName vs. ServerAlias).  </p>
+
+    <p>The complete list of names in the <code class="directive">VirtualHost</code>
+    directive are treated just like a (non wildcard)
+    <code class="directive">ServerAlias</code>.</p>
+
 
 <h3>See also</h3>
 <ul>
@@ -3802,38 +4086,44 @@ to name-virtual hosts</td></tr>
 <table class="directive">
 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Hostname and port that the server uses to identify
 itself</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ServerName [<var>scheme</var>://]<var>fully-qualified-domain-name</var>[:<var>port</var>]</code></td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ServerName [<var>scheme</var>://]<var>domain-name</var>|<var>ip-address</var>[:<var>port</var>]</code></td></tr>
 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
 </table>
     <p>The <code class="directive">ServerName</code> directive sets the
-    request scheme, hostname and
-    port that the server uses to identify itself.  This is used when
-    creating redirection URLs.</p>
+    request scheme, hostname and port that the server uses to identify itself.
+    </p>
 
-    <p>Additionally, <code class="directive">ServerName</code> is used (possibly
+    <p><code class="directive">ServerName</code> is used (possibly
     in conjunction with <code class="directive">ServerAlias</code>) to uniquely
     identify a virtual host, when using <a href="../vhosts/name-based.html">name-based virtual hosts</a>.</p>
 
+    <p>Additionally, this is used when
+    creating self-referential redirection URLs when 
+    <code class="directive">UseCanonicalName</code> is set to a non-default
+    value.</p>
+
     <p>For example, if the name of the
     machine hosting the web server is <code>simple.example.com</code>,
     but the machine also has the DNS alias <code>www.example.com</code>
     and you wish the web server to be so identified, the following
     directive should be used:</p>
 
-    <div class="example"><p><code>
-      ServerName www.example.com
-    </code></p></div>
+    <pre class="prettyprint lang-config">ServerName www.example.com</pre>
+
 
     <p>The <code class="directive">ServerName</code> directive
     may appear anywhere within the definition of a server. However,
     each appearance overrides the previous appearance (within that
     server).</p>
 
-    <p>If no <code class="directive">ServerName</code> is specified, then the
-    server attempts to deduce the hostname by performing a reverse
-    lookup on the IP address. If no port is specified in the
+    <p>If no <code class="directive">ServerName</code> is specified, the
+    server attempts to deduce the client visible hostname by first asking 
+    the operating system for the system hostname, and if that fails, 
+    performing a reverse lookup on an IP address present on the system.</p>
+
+    <p>If no port is specified in the
     <code class="directive">ServerName</code>, then the server will use the
     port from the incoming request. For optimal reliability and
     predictability, you should specify an explicit hostname and port
@@ -3919,9 +4209,8 @@ is accessed by an incompatible browser</td></tr>
     paths in other configuration directives (such as <code class="directive"><a href="#include">Include</a></code> or <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code>, for example) are taken as
     relative to this directory.</p>
 
-    <div class="example"><h3>Example</h3><p><code>
-      ServerRoot /home/httpd
-    </code></p></div>
+    <pre class="prettyprint lang-config">ServerRoot "/home/httpd"</pre>
+
 
     <p>The default location of <code class="directive">ServerRoot</code> may be
     modified by using the <code>--prefix</code> argument to
@@ -3994,7 +4283,7 @@ header</td></tr>
     <dl>
       <dt><code>ServerTokens Full</code> (or not specified)</dt>
 
-      <dd>Server sends (<em>e.g.</em>): <code>Server: Apache/2.4.1
+      <dd>Server sends (<em>e.g.</em>): <code>Server: Apache/2.4.2
       (Unix) PHP/4.2.2 MyMod/1.2</code></dd>
 
       <dt><code>ServerTokens Prod[uctOnly]</code></dt>
@@ -4015,11 +4304,11 @@ header</td></tr>
       <dt><code>ServerTokens Min[imal]</code></dt>
 
       <dd>Server sends (<em>e.g.</em>): <code>Server:
-      Apache/2.4.1</code></dd>
+      Apache/2.4.2</code></dd>
 
       <dt><code>ServerTokens OS</code></dt>
 
-      <dd>Server sends (<em>e.g.</em>): <code>Server: Apache/2.4.1
+      <dd>Server sends (<em>e.g.</em>): <code>Server: Apache/2.4.2
       (Unix)</code></dd>
 
     </dl>
@@ -4034,10 +4323,9 @@ header</td></tr>
     <code>minimal</code> is not recommended because it makes it more
     difficult to debug interoperational problems. Also note that
     disabling the Server: header does nothing at all to make your
-    server more secure; the idea of "security through obscurity"
+    server more secure. The idea of "security through obscurity"
     is a myth and leads to a false sense of safety.</div>
 
-
 <h3>See also</h3>
 <ul>
 <li><code class="directive"><a href="#serversignature">ServerSignature</a></code></li>
@@ -4048,12 +4336,12 @@ header</td></tr>
 <table class="directive">
 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Forces all matching files to be processed by a
 handler</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>SetHandler <var>handler-name</var>|None</code></td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>SetHandler <var>handler-name</var>|None|expr=<var>expression</var></code></td></tr>
 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>FileInfo</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Moved into the core in Apache httpd 2.0</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>2.5 and later</td></tr>
 </table>
     <p>When placed into an <code>.htaccess</code> file or a
     <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> or
@@ -4065,22 +4353,34 @@ handler</td></tr>
     of extension, you might put the following into an
     <code>.htaccess</code> file in that directory:</p>
 
-    <div class="example"><p><code>
-      SetHandler imap-file
-    </code></p></div>
+    <pre class="prettyprint lang-config">SetHandler imap-file</pre>
+
 
     <p>Another example: if you wanted to have the server display a
     status report whenever a URL of
     <code>http://servername/status</code> was called, you might put
     the following into <code>httpd.conf</code>:</p>
 
-    <div class="example"><p><code>
-      &lt;Location /status&gt;<br />
-      <span class="indent">
-        SetHandler server-status<br />
-      </span>
-      &lt;/Location&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Location "/status"&gt;
+  SetHandler server-status
+&lt;/Location&gt;</pre>
+
+
+    <p>You could also use this directive to configure a particular
+    handler for files with a particular file extension. For example:</p>
+
+    <pre class="prettyprint lang-config">&lt;FilesMatch "\.php$"&gt;
+    SetHandler application/x-httpd-php
+&lt;/FilesMatch&gt;</pre>
+
+
+    <p>String-valued expressions can be used to reference per-request 
+    variables, including backreferences to named regular expressions:</p>
+
+    <pre class="prettyprint lang-config">&lt;LocationMatch ^/app/(?&lt;sub&gt;[^/]+)/&gt;
+     SetHandler "expr=proxy:unix:/var/run/app_%{env:MATCH_sub}.sock|fcgi://localhost:8080"
+&lt;/FilesMatch&gt;</pre>
+
 
     <p>You can override an earlier defined <code class="directive">SetHandler</code>
     directive by using the value <code>None</code>.</p>
@@ -4144,13 +4444,10 @@ server</td></tr>
     in the <code>/www/data/</code> directory for server-side
     includes.</p>
 
-    <div class="example"><p><code>
-      &lt;Directory /www/data/&gt;<br />
-      <span class="indent">
-        SetOutputFilter INCLUDES<br />
-      </span>
-      &lt;/Directory&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;Directory "/www/data/"&gt;
+  SetOutputFilter INCLUDES
+&lt;/Directory&gt;</pre>
+
 
     <p>If more than one filter is specified, they must be separated
     by semicolons in the order in which they should process the
@@ -4184,8 +4481,8 @@ certain events before failing a request</td></tr>
       for an acknowledgement of a packet if the send buffer is
       full.</li>
 
-      <li>In <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code>, the length of time to wait for
-      output from a CGI script.</li>
+      <li>In <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code> and <code class="module"><a href="../mod/mod_cgid.html">mod_cgid</a></code>,
+      the length of time to wait for output from a CGI script.</li>
 
       <li>In <code class="module"><a href="../mod/mod_ext_filter.html">mod_ext_filter</a></code>, the length of time to
       wait for output from a filtering process.</li>
@@ -4206,7 +4503,6 @@ certain events before failing a request</td></tr>
 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache HTTP Server 1.3.34, 2.0.55 and later</td></tr>
 </table>
     <p>This directive overrides the behavior of <code>TRACE</code> for both
     the core server and <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code>.  The default
@@ -4224,13 +4520,20 @@ certain events before failing a request</td></tr>
     reflect the full headers and all chunk headers with the response
     body.  As a proxy server, the request body is not restricted to 64k.</p>
 
+    <div class="note"><h3>Note</h3>
+    <p>Despite claims to the contrary, <code>TRACE</code> is not
+    a security vulnerability, and there is no viable reason for
+    it to be disabled. Doing so necessarily makes your server
+    noncompliant.</p>
+    </div>
+
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
 <div class="directive-section"><h2><a name="UnDefine" id="UnDefine">UnDefine</a> <a name="undefine" id="undefine">Directive</a></h2>
 <table class="directive">
 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Undefine the existence of a variable</td></tr>
 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>UnDefine <var>parameter-name</var></code></td></tr>
-<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config</td></tr>
+<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
 </table>
@@ -4238,6 +4541,9 @@ certain events before failing a request</td></tr>
     of passing a <code>-D</code> argument to <code class="program"><a href="../programs/httpd.html">httpd</a></code>.</p>
     <p>This directive can be used to toggle the use of <code class="directive"><a href="#ifdefine">&lt;IfDefine&gt;</a></code> sections without needing to alter
     <code>-D</code> arguments in any startup scripts.</p>
+    <p>While this directive is supported in virtual host context,
+       the changes it makes are visible to any later configuration
+       directives, beyond any enclosing virtual host.</p>
 
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
@@ -4263,7 +4569,7 @@ port</td></tr>
     self-referential URLs using the hostname and port supplied by
     the client if any are supplied (otherwise it will use the
     canonical name, as defined above). These values are the same
-    that are used to implement <a href="../vhosts/name-based.html">name-based virtual hosts</a>,
+    that are used to implement <a href="../vhosts/name-based.html">name-based virtual hosts</a>
     and are available with the same clients. The CGI variables
     <code>SERVER_NAME</code> and <code>SERVER_PORT</code> will be
     constructed from the client supplied values as well.</p>
@@ -4271,29 +4577,29 @@ port</td></tr>
     <p>An example where this may be useful is on an intranet server
     where you have users connecting to the machine using short
     names such as <code>www</code>. You'll notice that if the users
-    type a shortname, and a URL which is a directory, such as
+    type a shortname and a URL which is a directory, such as
     <code>http://www/splat</code>, <em>without the trailing
-    slash</em> then Apache httpd will redirect them to
+    slash</em>, then Apache httpd will redirect them to
     <code>http://www.example.com/splat/</code>. If you have
     authentication enabled, this will cause the user to have to
     authenticate twice (once for <code>www</code> and once again
-    for <code>www.example.com</code> -- see <a href="http://httpd.apache.org/docs/misc/FAQ.html#prompted-twice">the
-    FAQ on this subject for more information</a>). But if
+    for <code>www.example.com</code> -- see <a href="http://wiki.apache.org/httpd/FAQ#Why_does_Apache_ask_for_my_password_twice_before_serving_a_file.3F">
+    the FAQ on this subject for more information</a>). But if
     <code class="directive">UseCanonicalName</code> is set <code>Off</code>, then
     Apache httpd will redirect to <code>http://www/splat/</code>.</p>
 
     <p>There is a third option, <code>UseCanonicalName DNS</code>,
     which is intended for use with mass IP-based virtual hosting to
     support ancient clients that do not provide a
-    <code>Host:</code> header. With this option Apache httpd does a
+    <code>Host:</code> header. With this option, Apache httpd does a
     reverse DNS lookup on the server IP address that the client
     connected to in order to work out self-referential URLs.</p>
 
     <div class="warning"><h3>Warning</h3>
-    <p>If CGIs make assumptions about the values of <code>SERVER_NAME</code>
+    <p>If CGIs make assumptions about the values of <code>SERVER_NAME</code>,
     they may be broken by this option. The client is essentially free
     to give whatever value they want as a hostname. But if the CGI is
-    only using <code>SERVER_NAME</code> to construct self-referential URLs
+    only using <code>SERVER_NAME</code> to construct self-referential URLs,
     then it should be just fine.</p>
     </div>
 
@@ -4316,11 +4622,11 @@ port</td></tr>
 </table>
     <p>In many situations Apache httpd must construct a <em>self-referential</em>
     URL -- that is, a URL that refers back to the same server. With
-    <code>UseCanonicalPhysicalPort On</code> Apache httpd will, when
+    <code>UseCanonicalPhysicalPort On</code>, Apache httpd will, when
     constructing the canonical port for the server to honor
     the <code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code> directive,
     provide the actual physical port number being used by this request
-    as a potential port. With <code>UseCanonicalPhysicalPort Off</code>
+    as a potential port. With <code>UseCanonicalPhysicalPort Off</code>,
     Apache httpd will not ever use the actual physical port number, instead
     relying on all configured information to construct a valid port number.</p>
 
@@ -4394,37 +4700,31 @@ hostname or IP address</td></tr>
 
     </ul>
 
-    <div class="example"><h3>Example</h3><p><code>
-      &lt;VirtualHost 10.1.2.3:80&gt;<br />
-      <span class="indent">
-        ServerAdmin webmaster@host.example.com<br />
-        DocumentRoot /www/docs/host.example.com<br />
-        ServerName host.example.com<br />
-        ErrorLog logs/host.example.com-error_log<br />
-        TransferLog logs/host.example.com-access_log<br />
-      </span>
-      &lt;/VirtualHost&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;VirtualHost 10.1.2.3:80&gt;
+  ServerAdmin webmaster@host.example.com
+  DocumentRoot "/www/docs/host.example.com"
+  ServerName host.example.com
+  ErrorLog "logs/host.example.com-error_log"
+  TransferLog "logs/host.example.com-access_log"
+&lt;/VirtualHost&gt;</pre>
+
 
 
     <p>IPv6 addresses must be specified in square brackets because
     the optional port number could not be determined otherwise.  An
     IPv6 example is shown below:</p>
 
-    <div class="example"><p><code>
-      &lt;VirtualHost [2001:db8::a00:20ff:fea7:ccea]:80&gt;<br />
-      <span class="indent">
-        ServerAdmin webmaster@host.example.com<br />
-        DocumentRoot /www/docs/host.example.com<br />
-        ServerName host.example.com<br />
-        ErrorLog logs/host.example.com-error_log<br />
-        TransferLog logs/host.example.com-access_log<br />
-      </span>
-      &lt;/VirtualHost&gt;
-    </code></p></div>
+    <pre class="prettyprint lang-config">&lt;VirtualHost [2001:db8::a00:20ff:fea7:ccea]:80&gt;
+  ServerAdmin webmaster@host.example.com
+  DocumentRoot "/www/docs/host.example.com"
+  ServerName host.example.com
+  ErrorLog "logs/host.example.com-error_log"
+  TransferLog "logs/host.example.com-access_log"
+&lt;/VirtualHost&gt;</pre>
+
 
     <p>Each Virtual Host must correspond to a different IP address,
-    different port number or a different host name for the server,
+    different port number, or a different host name for the server,
     in the former case the server machine must be configured to
     accept IP packets for multiple addresses. (If the machine does
     not have multiple network interfaces, then this can be
@@ -4454,7 +4754,7 @@ hostname or IP address</td></tr>
     requested hostname.  If no matching name-based virtual host is found,
     then the first listed virtual host that matched the IP address will be
     used.  As a consequence, the first listed virtual host for a given IP address
-    and port combination is default virtual host for that IP and port
+    and port combination is the default virtual host for that IP and port
     combination.</p>
 
     <div class="warning"><h3>Security</h3>
@@ -4475,6 +4775,34 @@ hostname or IP address</td></tr>
     and &lt;Files&gt; sections work</a> for an explanation of how these
     different sections are combined when a request is received</li>
 </ul>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="Warning" id="Warning">Warning</a> <a name="warning" id="warning">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Warn from configuration parsing with a custom message</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>Warning <var>message</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
+<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>core</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>2.5 and later</td></tr>
+</table>
+    <p>If an issue can be detected from within the configuration, this
+    directive can be used to generate a custom warning message. The
+    configuration parsing is not halted. The typical use is to check
+    whether some user define options are set, and warn if not.</p>
+
+    <pre class="prettyprint lang-config"># Example
+# tell when ReverseProxy is not set
+&lt;IfDefine !ReverseProxy&gt;
+  Warning "reverse proxy is not started, hope this is okay!"
+&lt;/IfDefine&gt;
+
+&lt;IfDefine ReverseProxy&gt;
+  # define custom proxy configuration
+&lt;/IfDefine&gt;</pre>
+
+
+
 </div>
 </div>
 <div class="bottomlang">
@@ -4484,7 +4812,28 @@ hostname or IP address</td></tr>
 <a href="../fr/mod/core.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
 <a href="../ja/mod/core.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
 <a href="../tr/mod/core.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
-</div><div id="footer">
-<p class="apache">Copyright 2012 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
-<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p></div>
+</div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Comments</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
+<script type="text/javascript"><!--//--><![CDATA[//><!--
+var comments_shortname = 'httpd';
+var comments_identifier = 'http://httpd.apache.org/docs/trunk/mod/core.html';
+(function(w, d) {
+    if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
+        d.write('<div id="comments_thread"><\/div>');
+        var s = d.createElement('script');
+        s.type = 'text/javascript';
+        s.async = true;
+        s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
+        (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
+    }
+    else {
+        d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
+    }
+})(window, document);
+//--><!]]></script></div><div id="footer">
+<p class="apache">Copyright 2016 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
+if (typeof(prettyPrint) !== 'undefined') {
+    prettyPrint();
+}
+//--><!]]></script>
 </body></html>
\ No newline at end of file