diff options
Diffstat (limited to 'docs/manual/mod/mod_proxy.html.en')
| -rw-r--r-- | docs/manual/mod/mod_proxy.html.en | 125 |
1 files changed, 74 insertions, 51 deletions
diff --git a/docs/manual/mod/mod_proxy.html.en b/docs/manual/mod/mod_proxy.html.en index b18b9fc0..d3753a8e 100644 --- a/docs/manual/mod/mod_proxy.html.en +++ b/docs/manual/mod/mod_proxy.html.en @@ -22,6 +22,7 @@ <div id="preamble"><h1>Apache Module mod_proxy</h1> <div class="toplang"> <p><span>Available Languages: </span><a href="../en/mod/mod_proxy.html" title="English"> en </a> | +<a href="../fr/mod/mod_proxy.html" hreflang="fr" rel="alternate" title="Français"> fr </a> | <a href="../ja/mod/mod_proxy.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a></p> </div> <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>HTTP/1.1 proxy/gateway server</td></tr> @@ -662,8 +663,8 @@ response</td></tr> </table> <p>The <code class="directive">ProxyBadHeader</code> directive determines the behaviour of <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code> if it receives syntactically invalid - header lines (<em>i.e.</em> containing no colon). The following arguments - are possible:</p> + response header lines (<em>i.e.</em> containing no colon) from the origin + server. The following arguments are possible:</p> <dl> <dt><code>IsError</code></dt> @@ -915,23 +916,30 @@ through</td></tr> </div> - <p>As of Apache 2.1, the ability to use pooled connections to a backend - server is available. Using the <code>key=value</code> parameters it is - possible to tune this connection pooling. The default for a <code>Hard - Maximum</code> for the number of connections is the number of threads per - process in the active MPM. In the Prefork MPM, this is always 1, while with - the Worker MPM it is controlled by the - <code class="directive">ThreadsPerChild</code>.</p> - - <p>Setting <code>min</code> will determine how many connections will always - be open to the backend server. Upto the Soft Maximum or <code>smax</code> - number of connections will be created on demand. Any connections above - <code>smax</code> are subject to a time to live or <code>ttl</code>. Apache - will never create more than the Hard Maximum or <code>max</code> connections - to the backend server.</p> + <p>In Apache HTTP Server 2.1 and later, mod_proxy supports pooled + connections to a backend server. Connections created on demand + can be retained in a pool for future use. Limits on the pool size + and other settings can be coded on + the <code class="directive">ProxyPass</code> directive + using <code>key=value</code> parameters, described in the table + below.</p> + + <p>By default, mod_proxy will allow and retain the maximum number of + connections that could be used simultaneously by that web server child + process. Use the <code>max</code> parameter to reduce the number from + the default. Use the <code>ttl</code> parameter to set an optional + time to live; connections which have been unused for at least + <code>ttl</code> seconds will be closed. <code>ttl</code> can be used + to avoid using a connection which is subject to closing because of the + backend server's keep-alive timeout.</p> + + <p>The pool of connections is maintained per web server child + process, and <code>max</code> and other settings are not coordinated + among all child processes, except when only one child process is allowed + by configuration or MPM design.</p> - <div class="example"><p><code> - ProxyPass /example http://backend.example.com smax=5 max=20 ttl=120 retry=300 + <div class="example"><h3>Example</h3><p><code> + ProxyPass /example http://backend.example.com max=20 ttl=120 retry=300 </code></p></div> <table> @@ -940,23 +948,27 @@ through</td></tr> <th>Description</th></tr> <tr><td>min</td> <td>0</td> - <td>Minimum number of connections that will always - be open to the backend server.</td></tr> + <td>Minimum number of connection pool entries, unrelated to the + actual number of connections. This only needs to be modified from the + default for special circumstances where heap memory associated with the + backend connections should be preallocated or retained.</td></tr> <tr><td>max</td> <td>1...n</td> - <td>Hard Maximum number of connections that will be - allowed to the backend server. The default for a Hard Maximum - for the number of connections is the number of threads per process in the - active MPM. In the Prefork MPM, this is always 1, while with the Worker MPM - it is controlled by the <code class="directive">ThreadsPerChild</code>. - Apache will never create more than the Hard Maximum connections - to the backend server.</td></tr> + <td>Maximum number of connections that will be allowed to the + backend server. The default for this limit is the number of threads + per process in the active MPM. In the Prefork MPM, this is always 1, + while with other MPMs it is controlled by the + <code class="directive">ThreadsPerChild</code> directive.</td></tr> <tr><td>smax</td> <td>max</td> - <td>Upto the Soft Maximum - number of connections will be created on demand. Any connections above - <code>smax</code> are subject to a time to live or <code>ttl</code>. - </td></tr> + <td>Retained connection pool entries above this limit are freed + during certain operations if they have been unused for longer than + the time to live, controlled by the <code>ttl</code> parameter. If + the connection pool entry has an associated connection, it will be + closed. This only needs to be modified from the default for special + circumstances where connection pool entries and any associated + connections which have exceeded the time to live need to be freed or + closed more aggressively.</td></tr> <tr><td>acquire</td> <td>-</td> <td>If set this will be the maximum time to wait for a free @@ -998,12 +1010,15 @@ through</td></tr> </td></tr> <tr><td>keepalive</td> <td>Off</td> - <td>This parameter should be used when you have a firewall between your + <td><p>This parameter should be used when you have a firewall between your Apache and the backend server, who tend to drop inactive connections. This flag will tell the Operating System to send <code>KEEP_ALIVE</code> - messages on inactive connections (interval depends on global OS settings, - generally 120ms), and thus prevent the firewall to drop the connection. - To enable keepalive set this property value to <code>On</code>. + messages on inactive connections and thus prevent the firewall to drop the connection. + To enable keepalive set this property value to <code>On</code>. </p> + <p>The frequency of initial and subsequent TCP keepalive probes + depends on global OS settings, and may be as high as 2 hours. To be useful, + the frequency configured in the OS must be smaller than the threshold used + by the firewall.</p> </td></tr> <tr><td>lbset</td> <td>0</td> @@ -1072,9 +1087,10 @@ through</td></tr> </td></tr> <tr><td>ttl</td> <td>-</td> - <td>Time To Live for the inactive connections above the - <code>smax</code> connections in seconds. Apache will close all - connections that has not been used inside that time period. + <td>Time to live for inactive connections and associated connection + pool entries, in seconds. Once reaching this limit, a + connection will not be used again; it will be closed at some + later time. </td></tr> </table> @@ -1096,11 +1112,12 @@ through</td></tr> <td>Balancer load-balance method. Select the load-balancing scheduler method to use. Either <code>byrequests</code>, to perform weighted request counting, <code>bytraffic</code>, to perform weighted - traffic byte count balancing, or <code>bybusyness</code>, to perform - pending request balancing. Default is <code>byrequests</code>. + traffic byte count balancing, or <code>bybusyness</code> + (Apache HTTP Server 2.2.10 and later), to perform pending request + balancing. Default is <code>byrequests</code>. </td></tr> <tr><td>maxattempts</td> - <td>1</td> + <td>One less than the number of workers, or 1 with a single worker.</td> <td>Maximum number of failover attempts before giving up. </td></tr> <tr><td>nofailover</td> @@ -1144,10 +1161,10 @@ through</td></tr> ProxyPass / balancer://mycluster/ stickysession=JSESSIONID|jsessionid nofailover=On<br /> <Proxy balancer://mycluster><br /> <span class="indent"> - BalancerMember http://1.2.3.4:8009<br /> - BalancerMember http://1.2.3.5:8009 smax=10<br /> - # Less powerful server, don't send as many requests there<br /> - BalancerMember http://1.2.3.6:8009 smax=1 loadfactor=20<br /> + BalancerMember ajp://1.2.3.4:8009<br /> + BalancerMember ajp://1.2.3.5:8009 loadfactor=20<br /> + # Less powerful server, don't send as many requests there,<br /> + BalancerMember ajp://1.2.3.6:8009 loadfactor=5<br /> </span> </Proxy> </code></p></div> @@ -1158,10 +1175,10 @@ through</td></tr> ProxyPass / balancer://hotcluster/ <br /> <Proxy balancer://hotcluster><br /> <span class="indent"> - BalancerMember http://1.2.3.4:8009 loadfactor=1<br /> - BalancerMember http://1.2.3.5:8009 loadfactor=2<br /> + BalancerMember ajp://1.2.3.4:8009 loadfactor=1<br /> + BalancerMember ajp://1.2.3.5:8009 loadfactor=2<br /> # The below is the hot standby<br /> - BalancerMember http://1.2.3.6:8009 status=+H<br /> + BalancerMember ajp://1.2.3.6:8009 status=+H<br /> ProxySet lbmethod=bytraffic </span> </Proxy> @@ -1189,11 +1206,14 @@ through</td></tr> <code class="directive"><a href="../mod/core.html#locationmatch"><LocationMatch></a></code> section, however ProxyPass does not interpret the regexp as such, so it is necessary to use <code class="directive">ProxyPassMatch</code> in this situation instead.</p> + + <p>This directive is not supported in <code class="directive"><a href="../mod/core.html#directory"><Directory></a></code> or <code class="directive"><a href="../mod/core.html#files"><Files></a></code> sections.</p> <p>If you require a more flexible reverse-proxy configuration, see the <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> directive with the <code>[P]</code> flag.</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="ProxyPassInterpolateEnv" id="ProxyPassInterpolateEnv">ProxyPassInterpolateEnv</a> <a name="proxypassinterpolateenv" id="proxypassinterpolateenv">Directive</a></h2> @@ -1344,6 +1364,8 @@ proxied server</td></tr> path; if needed in this situation, specify the ProxyPassReverse outside the section, or in a separate <code class="directive"><a href="../mod/core.html#location"><Location></a></code> section.</p> + <p>This directive is not supported in <code class="directive"><a href="../mod/core.html#directory"><Directory></a></code> or <code class="directive"><a href="../mod/core.html#files"><Files></a></code> sections.</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="ProxyPassReverseCookieDomain" id="ProxyPassReverseCookieDomain">ProxyPassReverseCookieDomain</a> <a name="proxypassreversecookiedomain" id="proxypassreversecookiedomain">Directive</a></h2> @@ -1535,8 +1557,8 @@ expressions</td></tr> <div class="example"><p><code> <Proxy balancer://hotcluster><br /> <span class="indent"> - BalancerMember http://www2.example.com:8009 loadfactor=1<br /> - BalancerMember http://www3.example.com:8009 loadfactor=2<br /> + BalancerMember http://www2.example.com:8080 loadfactor=1<br /> + BalancerMember http://www3.example.com:8080 loadfactor=2<br /> ProxySet lbmethod=bytraffic<br /> </span> </Proxy> @@ -1640,8 +1662,9 @@ header for proxied requests</td></tr> </div> <div class="bottomlang"> <p><span>Available Languages: </span><a href="../en/mod/mod_proxy.html" title="English"> en </a> | +<a href="../fr/mod/mod_proxy.html" hreflang="fr" rel="alternate" title="Français"> fr </a> | <a href="../ja/mod/mod_proxy.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a></p> </div><div id="footer"> -<p class="apache">Copyright 2009 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="apache">Copyright 2011 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> </body></html>
\ No newline at end of file |
