From: Takashi Sato
Date: Tue, 21 May 2013 11:40:29 +0000 (+0000)
Subject: Merge r1421851 from trunk:
X-Git-Tag: 2.4.5~260
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2cee62d0c46b6f271a2968c71873cb286305b352;p=apache
Merge r1421851 from trunk:
Fix use of trailing slashes in proxy
balancer and member URLs and add a little
explanation.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1484766 13f79535-47bb-0310-9956-ffa450edef68
---
diff --git a/docs/manual/mod/mod_proxy.xml b/docs/manual/mod/mod_proxy.xml
index e4d9e6049f..05dee9115a 100644
--- a/docs/manual/mod/mod_proxy.xml
+++ b/docs/manual/mod/mod_proxy.xml
@@ -722,6 +722,11 @@ expressions
The balancerurl is only needed when not in <Proxy balancer://...>
container directive. It corresponds to the url of a balancer defined in
ProxyPass directive.
+ The path component of the balancer URL in any
+ <Proxy balancer://...>
container directive
+ is ignored.
+ Trailing slashes should typically be removed from the URL of a
+ BalancerMember
.
@@ -747,8 +752,8 @@ expressions
<Proxy balancer://hotcluster>
- BalancerMember http://www2.example.com:8080/ loadfactor=1
- BalancerMember http://www3.example.com:8080/ loadfactor=2
+ BalancerMember http://www2.example.com:8080 loadfactor=1
+ BalancerMember http://www3.example.com:8080 loadfactor=2
ProxySet lbmethod=bytraffic
</Proxy>
@@ -1075,7 +1080,7 @@ ProxyPass /mirror/foo http://backend.example.com
If the Proxy directive scheme starts with the
- balancer://
(eg: balancer://cluster/
,
+ balancer://
(eg: balancer://cluster
,
any path information is ignored) then a virtual worker that does not really
communicate with the backend server will be created. Instead it is responsible
for the management of several "real" workers. In that case the special set of
@@ -1179,22 +1184,22 @@ ProxyPass /mirror/foo http://backend.example.com
ProxyPass /special-area http://special.example.com smax=5 max=10
ProxyPass / balancer://mycluster/ stickysession=JSESSIONID|jsessionid nofailover=On
<Proxy balancer://mycluster>
- BalancerMember ajp://1.2.3.4:8009/
- BalancerMember ajp://1.2.3.5:8009/ loadfactor=20
+ BalancerMember ajp://1.2.3.4:8009
+ BalancerMember ajp://1.2.3.5:8009 loadfactor=20
# Less powerful server, don't send as many requests there,
- BalancerMember ajp://1.2.3.6:8009/ loadfactor=5
+ BalancerMember ajp://1.2.3.6:8009 loadfactor=5
</Proxy>
Setting up a hot-standby, that will only be used if no other
members are available
-ProxyPass / balancer://hotcluster/
+ProxyPass / balancer://hotcluster/
<Proxy balancer://hotcluster>
- BalancerMember ajp://1.2.3.4:8009/ loadfactor=1
- BalancerMember ajp://1.2.3.5:8009/ loadfactor=2
+ BalancerMember ajp://1.2.3.4:8009 loadfactor=1
+ BalancerMember ajp://1.2.3.5:8009 loadfactor=2
# The server below is on hot standby
- BalancerMember ajp://1.2.3.6:8009/ status=+H
+ BalancerMember ajp://1.2.3.6:8009 status=+H
ProxySet lbmethod=bytraffic
</Proxy>
diff --git a/docs/manual/mod/mod_proxy_balancer.xml b/docs/manual/mod/mod_proxy_balancer.xml
index 1454d21530..64f21a0496 100644
--- a/docs/manual/mod/mod_proxy_balancer.xml
+++ b/docs/manual/mod/mod_proxy_balancer.xml
@@ -92,12 +92,12 @@
-<Proxy balancer://mycluster/>
- BalancerMember http://192.168.1.50:80/
- BalancerMember http://192.168.1.51:80/
+<Proxy balancer://mycluster>
+ BalancerMember http://192.168.1.50:80
+ BalancerMember http://192.168.1.51:80
</Proxy>
-ProxyPass /test balancer://mycluster/
-ProxyPassReverse /test balancer://mycluster/
+ProxyPass /test balancer://mycluster
+ProxyPassReverse /test balancer://mycluster
Another example of how to provide load balancing with stickyness
@@ -107,13 +107,13 @@ ProxyPassReverse /test balancer://mycluster/
Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED
-<Proxy balancer://mycluster/>
- BalancerMember http://192.168.1.50:80/ route=1
- BalancerMember http://192.168.1.51:80/ route=2
+<Proxy balancer://mycluster>
+ BalancerMember http://192.168.1.50:80 route=1
+ BalancerMember http://192.168.1.51:80 route=2
ProxySet stickysession=ROUTEID
</Proxy>
-ProxyPass /test balancer://mycluster/
-ProxyPassReverse /test balancer://mycluster/
+ProxyPass /test balancer://mycluster
+ProxyPassReverse /test balancer://mycluster
@@ -140,7 +140,7 @@ ProxyPassReverse /test balancer://mycluster/
BALANCER_NAME
This is assigned the name of the balancer used for the current
- request. The value is something like balancer://foo/
.
+ request. The value is something like balancer://foo
.
@@ -249,10 +249,10 @@ ProxyPassReverse /test balancer://mycluster/
configuring the name of the cookie and the name of the URL parameter
separated by a vertical bar (|
) as in the following example:
-ProxyPass /test balancer://mycluster/ stickysession=JSESSIONID|jsessionid scolonpathdelim=On
+ProxyPass /test balancer://mycluster stickysession=JSESSIONID|jsessionid scolonpathdelim=On
<Proxy balancer://mycluster>
- BalancerMember http://192.168.1.50:80/ route=node1
- BalancerMember http://192.168.1.51:80/ route=node2
+ BalancerMember http://192.168.1.50:80 route=node1
+ BalancerMember http://192.168.1.51:80 route=node2
</Proxy>
If the cookie and the request parameter both provide routing information
diff --git a/docs/manual/mod/mod_proxy_fcgi.xml b/docs/manual/mod/mod_proxy_fcgi.xml
index ca32557e8c..eb8771ab8c 100644
--- a/docs/manual/mod/mod_proxy_fcgi.xml
+++ b/docs/manual/mod/mod_proxy_fcgi.xml
@@ -93,8 +93,8 @@
ProxyPass /myapp/ balancer://myappcluster/
<Proxy balancer://myappcluster/>
- BalancerMember fcgi://localhost:4000/
- BalancerMember fcgi://localhost:4001/
+ BalancerMember fcgi://localhost:4000
+ BalancerMember fcgi://localhost:4001
</Proxy>
diff --git a/docs/manual/mod/mod_proxy_scgi.xml b/docs/manual/mod/mod_proxy_scgi.xml
index 602c211664..2f81adc749 100644
--- a/docs/manual/mod/mod_proxy_scgi.xml
+++ b/docs/manual/mod/mod_proxy_scgi.xml
@@ -69,9 +69,9 @@
Balanced gateway
ProxyPass /scgi-bin/ balancer://somecluster/
-<Proxy balancer://somecluster/>
- BalancerMember scgi://localhost:4000/
- BalancerMember scgi://localhost:4001/
+<Proxy balancer://somecluster>
+ BalancerMember scgi://localhost:4000
+ BalancerMember scgi://localhost:4001
</Proxy>