<code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code></td></tr>
<tr><th><a href="module-dict.html#Status">Status:</a></th><td>Extension</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">Module Identifier:</a></th><td>proxy_express_module</td></tr>
-<tr><th><a href="module-dict.html#SourceFile">Source File:</a></th><td>mod_proxy_express.c</td></tr></table>
+<tr><th><a href="module-dict.html#SourceFile">Source File:</a></th><td>mod_proxy_express.c</td></tr>
+<tr><th><a href="module-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache 2.3.13 and later</td></tr></table>
<h3>Summary</h3>
<p>This module creates dynamically configured mass reverse
- proxies, by mapping the Host: header of the HTTP request to
+ proxies, by mapping the <code>Host:</code> header of the HTTP request to
a server name and backend URL stored in a DBM file.
This allows for easy use of a huge number of reverse proxies
with no configuration changes. It is much less feature-full
<li>This module is not intended to replace the dynamic capability of
<code class="module"><a href="../mod/mod_proxy_balancer.html">mod_proxy_balancer</a></code>. Instead, it is intended to be mostly
a lightweight and fast alternative to using <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>
- with <code class="directive">RewriteMap</code> and the <code>[P]</code> flag
- for mapped reverse proxying.
+ with <code class="directive"><a href="../mod/mod_rewrite.html#rewritemap">RewriteMap</a></code> and the
+ <code>[P]</code> flag for mapped reverse proxying.
</li>
<li>It does not support regex or pattern matching at all.
</li>
<li>It emulates:
<pre class="prettyprint lang-config"><VirtualHost *:80>
ServerName front.end.server
- ProxyPass "/" "back.end.server:port"
+ ProxyPass "/" "back.end.server:port"
ProxyPassReverse "/" "back.end.server:port"
</VirtualHost></pre>
<div class="directive-section"><h2><a name="ProxyExpressDBMFile" id="ProxyExpressDBMFile">ProxyExpressDBMFile</a> <a name="proxyexpressdbmfile" id="proxyexpressdbmfile">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Pathname to DBM file.</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyExpressDBMFile <pathname></code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>None</code></td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyExpressDBMFile <var>pathname</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_express</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache 2.3.13 and later</td></tr>
</table>
<p>The <code class="directive">ProxyExpressDBMFile</code> directive
points to the location of the Express map DBM file. This
file serves to map the incoming server name, obtained from
- the Host: header, to a backend URL.</p>
+ the <code>Host:</code> header, to a backend URL.</p>
<div class="note"><h3>Note</h3>
<p>The file is constructed from a plain text file format using
##express-map.txt:<br />
##<br />
<br />
- www1.example.com http://192.168.211.2:8080<br />
+ www1.example.com http://192.168.211.2:8080<br />
www2.example.com http://192.168.211.12:8088<br />
www3.example.com http://192.168.212.10<br />
</code></p></div>
<div class="example"><h3>Create DBM file</h3><p><code>
httxt2dbm -i express-map.txt -o emap<br />
- </code></p></div>
+ </code></p></div>
- <div class="example"><h3>Configuration</h3><p><code>
- ProxyExpressEnable on<br />
- ProxyExpressDBMFile emap<br />
- </code></p></div>
+ <div class="example"><h3>Configuration</h3><pre class="prettyprint lang-config">ProxyExpressEnable on
+ProxyExpressDBMFile emap</pre>
+</div>
</div>
</div>
<div class="directive-section"><h2><a name="ProxyExpressDBMType" id="ProxyExpressDBMType">ProxyExpressDBMType</a> <a name="proxyexpressdbmtype" id="proxyexpressdbmtype">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>DBM type of file.</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyExpressDBMFile <type></code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>"default"</code></td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyExpressDBMType <var>type</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>ProxyExpressDBMType default</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_express</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache 2.3.13 and later</td></tr>
</table>
<p>The <code class="directive">ProxyExpressDBMType</code> directive
controls the DBM type expected by the module. The default
<div class="directive-section"><h2><a name="ProxyExpressEnable" id="ProxyExpressEnable">ProxyExpressEnable</a> <a name="proxyexpressenable" id="proxyexpressenable">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Enable the module functionality.</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyExpressEnable [on|off]</code></td></tr>
-<tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>off</code></td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyExpressEnable on|off</code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>ProxyExpressEnable 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>Extension</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy_express</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache 2.3.13 and later</td></tr>
</table>
<p>The <code class="directive">ProxyExpressEnable</code> directive
controls whether the module will be active.</p>
</dd>
<dt>Non-enabled modules</dt><dd>
<p>To use it with a libxml2-based module that isn't explicitly enabled for
- mod_xml2enc, you will have to configure the filter chain yourself.
- So to use it with a filter <strong>foo</strong> provided by a module
- <strong>mod_foo</strong> to improve the latter's i18n support with HTML
- and XML, you could use</p>
+ mod_xml2enc, you will have to configure the filter chain yourself. So to
+ use it with a filter <strong>foo</strong> provided by a module
+ <strong>mod_foo</strong> to improve the latter's i18n support with HTML and
+ XML, you could use</p>
<pre><code>
FilterProvider iconv xml2enc Content-Type $text/html
FilterProvider iconv xml2enc Content-Type $xml
<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>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_xml2enc</td></tr>
-<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Version 2.4.0 and later; available as a third-party
-module for earlier versions.</td></tr>
</table>
<p>If you are processing data with known encoding but no encoding
information, you can set this default to help mod_xml2enc process
the data correctly. For example, to work with the default value
- of Latin1 (<var>iso-8859-1</var> specified in HTTP/1.0, use</p>
+ of Latin1 (<var>iso-8859-1</var>) specified in HTTP/1.0, use:</p>
<pre class="prettyprint lang-config">xml2EncDefault iso-8859-1</pre>