<div id="page-content">
<div id="preamble"><h1>Apache Core Features</h1>
<div class="toplang">
-<p><span>Available Languages: </span><a href="../2/mod/core.html" hreflang="2" rel="alternate" title=""> 2 </a> |
-<a href="../de/mod/core.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
-<a href="../edited/mod/core.html" hreflang="edited" rel="alternate" title=""> edited </a> |
+<p><span>Available Languages: </span><a href="../de/mod/core.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
<a href="../en/mod/core.html" title="English"> en </a> |
<a href="../es/mod/core.html" hreflang="es" rel="alternate" title="Español"> es </a> |
<a href="../fr/mod/core.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
</div>
</div>
<div class="bottomlang">
-<p><span>Available Languages: </span><a href="../2/mod/core.html" hreflang="2" rel="alternate" title=""> 2 </a> |
-<a href="../de/mod/core.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
-<a href="../edited/mod/core.html" hreflang="edited" rel="alternate" title=""> edited </a> |
+<p><span>Available Languages: </span><a href="../de/mod/core.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
<a href="../en/mod/core.html" title="English"> en </a> |
<a href="../es/mod/core.html" hreflang="es" rel="alternate" title="Español"> es </a> |
<a href="../fr/mod/core.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
<code>backend.example.com</code> <em>except</em> requests made to
<code>/mirror/foo/i</code>.</p>
+ <p>Mixing ProxyPass settings in different contexts does not work:</p>
+ <pre class="prettyprint lang-config">ProxyPass "/mirror/foo/i" "!"
+<Location "/mirror/foo/">
+ ProxyPass "http://backend.example.com/"
+</Location></pre>
+
+ <p>In this case, a request to <code>/mirror/foo/i</code> will get proxied,
+ because the <code class="directive">ProxyPass</code> directive in the Location block will be evaluated
+ first. The fact that <code class="directive">ProxyPass</code> supports both server and directory contexts
+ does not mean that their scope and position in the configuration file will
+ guarantee any ordering or override.</p>
+
<div class="warning"><h3>Ordering ProxyPass Directives</h3>
<p>The configured <code class="directive"><a href="#proxypass">ProxyPass</a></code>
and <code class="directive"><a href="#proxypassmatch">ProxyPassMatch</a></code>
<code class="directive"><a href="#proxypass">ProxyPass</a></code> rules starting with the
longest URLs first. Otherwise, later rules for longer URLS will be hidden
by any earlier rule which uses a leading substring of the URL. Note that
- there is some relation with worker sharing. In contrast, only one
- <code class="directive"><a href="#proxypass">ProxyPass</a></code> directive can be placed
- in a <code class="directive"><a href="../mod/core.html#location">Location</a></code> block, and the most
- specific location will take precedence.</p>
-
- <p>For the same reasons, exclusions must come <em>before</em> the
+ there is some relation with worker sharing.</p>
+ </div>
+ <div class="warning"><h3>Ordering ProxyPass Directives in Locations</h3>
+ <p>Only one <code class="directive"><a href="#proxypass">ProxyPass</a></code> directive
+ can be placed in a <code class="directive"><a href="../mod/core.html#location">Location</a></code> block,
+ and the most specific location will take precedence.</p>
+ </div>
+ <div class="warning"><h3>Exclusions and the no-proxy environment variable</h3>
+ <p>Exclusions must come <em>before</em> the
general <code class="directive">ProxyPass</code> directives. In 2.4.26 and later, the "no-proxy"
environment variable is an alternative to exclusions, and is the only
way to configure an exclusion of a <code class="directive">ProxyPass</code>
<div class="example"><h3>Example</h3><pre class="prettyprint lang-config">RewriteMap myquery "fastdbd:SELECT destination FROM rewrite WHERE source = %s"</pre>
</div>
+ <div class="note"><h3>Note</h3>
+ <p>The query name is passed to the database driver as a label for
+ an SQL prepared statement, and will therefore need to follow any rules
+ (such as case-sensitivity) required for your database.</p></div>
+
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="summary" id="summary">Summary</a></h2>