interfering with the authorizations that are to be enforced in by the Apache httpd.</p>
</div>
</td></tr>
+ <tr><td><a id="addressttl" name="addressttl">addressttl</a></td>
+ <td>-1</td>
+ <td><p>TTL in seconds for how long DNS resolutions of the backend address are cached.
+ -1 means until restart of Apache httpd.</p>
+ </td></tr>
</table>
<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory</td></tr>
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Since 2.4.47 the <var>key=value</var> Parameters are honored
+when the <var>url</var> parameter contains backreference(s) (see note below).
+</td></tr>
</table>
<p>This directive is equivalent to <code class="directive"><a href="#proxypass">ProxyPass</a></code>
but makes use of regular expressions instead of simple prefix matching. The
<p>will cause a local request for
<code>http://example.com/foo/bar.gif</code> to be internally converted
into a proxy request to <code>http://backend.example.com/foo/bar.gif</code>.</p>
- <div class="note"><h3>Note</h3>
- <p>The URL argument must be parsable as a URL <em>before</em> regexp
- substitutions (as well as after). This limits the matches you can use.
- For instance, if we had used</p>
- <pre class="prettyprint lang-config">ProxyPassMatch "^(/.*\.gif)$" "http://backend.example.com:8000$1"</pre>
- <p>in our previous example, it would fail with a syntax error
- at server startup. This is a bug (PR 46665 in the ASF bugzilla),
- and the workaround is to reformulate the match:</p>
- <pre class="prettyprint lang-config">ProxyPassMatch "^/(.*\.gif)$" "http://backend.example.com:8000/$1"</pre>
-
- </div>
<p>The <code>!</code> directive is useful in situations where you don't want
to reverse-proxy a subdirectory.</p>
expression, the original URL will be appended to the URL parameter.
</p>
</div>
+ <div class="note">
+ <h3><code>key=value</code> Parameters versus <var>url</var> with backreference(s)</h3>
+ <p>Since Apache HTTP Server 2.4.47, the <code>key=value</code> Parameters
+ are no longer ignored in a <code class="directive">ProxyPassMatch</code> using
+ an <var>url</var> with backreference(s). However to keep the existing
+ behavior regarding reuse/keepalive of backend connections (which were
+ never reused before for these URLs), the parameter <var>enablereuse</var>
+ (or <var>disablereuse</var>) default to <code>off</code> (resp. <code>on</code>)
+ in this case. Setting <code>enablereuse=on</code> explicitely allows to
+ reuse connections <strong>unless</strong> some backreference(s) belong in
+ the <code>authority</code> part (hostname and/or port) of the <var>url</var>
+ (this condition is enforced since Apache HTTP Server 2.4.55, and produces
+ a warning at startup because these URLs are not reusable per se).</p>
+ </div>
<div class="warning">
<h3>Security Warning</h3>
<div class="directive-section"><h2><a name="ProxyRemote" id="ProxyRemote">ProxyRemote</a> <a name="proxyremote" id="proxyremote">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Remote proxy used to handle certain requests</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyRemote <var>match</var> <var>remote-server</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyRemote <var>match</var> <var>remote-server</var> [<var>username:password</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>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr>
+<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>The optional third argument is usable only in httpd 2.5.1 and later.</td></tr>
</table>
<p>This defines remote proxies to this proxy. <var>match</var> is either the
name of a URL-scheme that the remote server supports, or a partial URL
webserver can be embedded within a virtualhost URL space even if that
server is hidden by another forward proxy.</p>
+ <p>An optional third argument <var>username:password</var> may be
+ given, which defines the Basic authentication credentials to pass
+ to the configured remote proxy. The credentials will always be
+ sent without first waiting for the remote proxy to send a Basic
+ authentication challenge. The <a href="mod_proxy_http.html#env">Proxy-Chain-Auth</a> environment
+ variable has no effect if this argument is used.</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="ProxyRemoteMatch" id="ProxyRemoteMatch">ProxyRemoteMatch</a> <a name="proxyremotematch" id="proxyremotematch">Directive</a></h2>
<p>Popular options for deploying Apache httpd, and, optionally, PHP
and MySQL, on Microsoft Windows, include:</p>
<ul>
- <li><a href="http://www.apachehaus.com/cgi-bin/download.plx">ApacheHaus</a></li>
<li><a href="http://www.apachelounge.com/download/">Apache Lounge</a></li>
<li><a href="http://bitnami.com/stack/wamp">Bitnami WAMP Stack</a></li>
<li><a href="http://www.wampserver.com/">WampServer</a></li>
Windows. See the <a href="../mod/directives.html">directive index</a>
for all the available directives.</p>
+ <p>The default configuration of the source distribution expects the server
+ to be installed into \Apache24. This can be customized at compilation time,
+ but it's important that ultimately the <code class="directive">ServerRoot</code> in
+ httpd.conf match the actual installation root. Binary distributions may
+ customize either the default installation root or the overall layout of
+ the initial configuration.</p>
+
<p>The main differences in Apache for Windows are:</p>
<ul>
<li><p>Because Apache for Windows is multithreaded, it does not