Commit 5b9756d5 authored by Christophe Jaillet's avatar Christophe Jaillet
Browse files

backport r1817908 which fixes some example (see PR 61650) + make some cosmetic...

backport r1817908 which fixes some example (see PR 61650) + make some cosmetic changes (r1832294 in trunk)

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1832295 13f79535-47bb-0310-9956-ffa450edef68
parent f477d27b
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1178,7 +1178,7 @@ ProxyPass "/mirror/foo/i" "!"
        <td>Route of the worker when used inside load balancer.
        The route is a value appended to session id.
    </td></tr>
    <tr><td>status</td>
    <tr><td><a name="status_table">status</a></td>
        <td>-</td>
        <td>Single letter value defining the initial status of
        this worker.
+31 −16
Original line number Diff line number Diff line
@@ -40,10 +40,11 @@

<note><title>Parameters</title>
  <p>The health check mechanism is enabled via the use of additional
  	BalancerMember parameters, which are configured in the standard
  	way via <directive module="mod_proxy">ProxyPass</directive>:</p>
     <directive module="mod_proxy">BalancerMember</directive> parameters, which are configured
     in the standard way via <directive module="mod_proxy">ProxyPass</directive>:</p>

  <p>A new BalancerMember status state (flag) is defined via this module: "<code>C</code>".
  <p>A new BalancerMember <a href="mod_proxy.html#status_table">status</a> state (flag)
     is defined via this module: "<code>C</code>".
     When the worker is taken offline due to failures as determined by the health
     check module, this flag is set, and can be seen (and modified) via the
     <code>balancer-manager</code>.</p>
@@ -84,10 +85,12 @@
        <td>Additional URI to be appended to the worker URL for the health check.</td></tr>
    <tr><td>hctemplate</td>
        <td>&nbsp;</td>
        <td>Name of template, created via <directive>ProxyHCTemplate</directive> to use for setting health check parameters for this worker</td></tr>
        <td>Name of template, created via <directive module="mod_proxy_hcheck">ProxyHCTemplate</directive>,
            to use for setting health check parameters for this worker</td></tr>
    <tr><td>hcexpr</td>
        <td>&nbsp;</td>
        <td>Name of expression, created via <directive>ProxyHCExpr</directive>, used to check response headers for health.<br/>
        <td>Name of expression, created via <directive module="mod_proxy_hcheck">ProxyHCExpr</directive>,
            used to check response headers for health.<br/>
            <em>If not used, 2xx thru 3xx status codes imply success</em></td></tr>
    </table>
</note>
@@ -135,8 +138,8 @@ not dynamically checked at all.</p>

<directivesynopsis>
<name>ProxyHCExpr</name>
<description>Creates a named condition expression to use to determine health of the backend based on its response.</description>
<syntax>ProxyHCExpr name {ap_expr expression}</syntax>
<description>Creates a named condition expression to use to determine health of the backend based on its response</description>
<syntax>ProxyHCExpr <em>name</em> {<em>ap_expr expression</em>}</syntax>
<contextlist><context>server config</context><context>virtual host</context>
</contextlist>

@@ -145,12 +148,16 @@ not dynamically checked at all.</p>
       for creating a named condition expression that checks the response
       headers of the backend server to determine its health. This named
       condition can then be assigned to balancer members via the <code>hcexpr</code>
       parameter</p>
       parameter.</p>

    <example><title>ProxyHCExpr: Allow for 2xx/3xx/4xx as passing</title>
    <highlight language="config">
ProxyHCExpr ok234 {%{REQUEST_STATUS} =~ /^[234]/}
ProxyPass "/apps"     "http://backend.example.com/" hcexpr=ok234
ProxyPass "/apps"     "balancer://foo"

&lt;Proxy balancer://foo&gt;
  BalancerMember http://www2.example.com/  hcmethod=HEAD hcexpr=ok234 hcinterval=10
&lt;/Proxy&gt;
    </highlight>
    </example>

@@ -170,7 +177,11 @@ ProxyPass "/apps" "http://backend.example.com/" hcexpr=ok234
    <example><title>ProxyHCExpr: Checking response body</title>
    <highlight language="config">
ProxyHCExpr in_maint {hc('body') !~ /Under maintenance/}
ProxyPass "/apps"     "http://backend.example.com/" hcexpr=in_maint hcmethod=get hcuri=/status.php
ProxyPass "/apps"     "balancer://foo"

&lt;Proxy balancer://foo&gt;
  BalancerMember http://www.example.com/ hcexpr=in_maint hcmethod=get hcuri=/status.php
&lt;/Proxy&gt;
    </highlight>
    </example>

@@ -182,7 +193,7 @@ ProxyPass "/apps" "http://backend.example.com/" hcexpr=in_maint hcmethod=get
<directivesynopsis>
<name>ProxyHCTemplate</name>
<description>Creates a named template for setting various health check parameters</description>
<syntax>ProxyHCTemplate name parameter=setting &lt;...&gt;</syntax>
<syntax>ProxyHCTemplate <em>name</em> <em>parameter</em>=<em>setting</em> [...]</syntax>
<contextlist><context>server config</context><context>virtual host</context>
</contextlist>

@@ -190,12 +201,16 @@ ProxyPass "/apps" "http://backend.example.com/" hcexpr=in_maint hcmethod=get
    <p>The <directive>ProxyHCTemplate</directive> directive allows
       for creating a named set (template) of health check parameters
       that can then be assigned to balancer members via the <code>hctemplate</code>
       parameter</p>
       parameter.</p>

    <example><title>ProxyHCTemplate</title>
    <highlight language="config">
ProxyHCTemplate tcp5 hcmethod=tcp hcinterval=5
ProxyPass "/apps"     "http://backend.example.com/" hctemplate=tcp5
ProxyPass "/apps"     "balancer://foo"

&lt;Proxy balancer://foo&gt;
  BalancerMember http://www2.example.com/ hctemplate=tcp5
&lt;/Proxy&gt;
    </highlight>
    </example>

@@ -204,8 +219,8 @@ ProxyPass "/apps" "http://backend.example.com/" hctemplate=tcp5

<directivesynopsis>
<name>ProxyHCTPsize</name>
<description>Sets the total server-wide size of the threadpool used for the health check workers.</description>
<syntax>ProxyHCTPsize &lt;size&gt;</syntax>
<description>Sets the total server-wide size of the threadpool used for the health check workers</description>
<syntax>ProxyHCTPsize <em>size</em></syntax>
<contextlist><context>server config</context>
</contextlist>