From 837aaea30f4ef8f1cf3ad1d3460acfa421d4ab7c Mon Sep 17 00:00:00 2001 From: Ken Coar Date: Wed, 15 Apr 2015 18:51:11 +0000 Subject: [PATCH] Quote path/URL arguments to Proxy* directives. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1673930 13f79535-47bb-0310-9956-ffa450edef68 --- docs/manual/howto/cgi.xml.fr | 2 +- docs/manual/howto/cgi.xml.ja | 2 +- docs/manual/howto/cgi.xml.ko | 2 +- docs/manual/misc/perf-tuning.xml.fr | 2 +- docs/manual/misc/perf-tuning.xml.ko | 2 +- docs/manual/misc/perf-tuning.xml.tr | 2 +- docs/manual/mod/core.xml.de | 2 +- docs/manual/mod/core.xml.es | 2 +- docs/manual/mod/core.xml.fr | 2 +- docs/manual/mod/core.xml.ja | 2 +- docs/manual/mod/core.xml.tr | 2 +- docs/manual/mod/mod_deflate.html.en | 2 +- docs/manual/mod/mod_deflate.xml | 2 +- docs/manual/mod/mod_macro.xml.fr | 2 +- docs/manual/mod/mod_proxy.html.en | 54 +++++++++++----------- docs/manual/mod/mod_proxy.xml | 54 +++++++++++----------- docs/manual/mod/mod_proxy_ajp.html.en | 8 ++-- docs/manual/mod/mod_proxy_ajp.xml | 8 ++-- docs/manual/mod/mod_proxy_balancer.html.en | 10 ++-- docs/manual/mod/mod_proxy_balancer.xml | 10 ++-- docs/manual/mod/mod_proxy_express.html.en | 4 +- docs/manual/mod/mod_proxy_express.xml | 4 +- docs/manual/mod/mod_proxy_fcgi.html.en | 10 ++-- docs/manual/mod/mod_proxy_fcgi.xml | 12 ++--- docs/manual/mod/mod_proxy_scgi.html.en | 4 +- docs/manual/mod/mod_proxy_scgi.xml | 4 +- docs/manual/mod/mod_proxy_wstunnel.html.en | 4 +- docs/manual/mod/mod_proxy_wstunnel.xml | 4 +- docs/manual/mod/mod_rewrite.xml.fr | 2 +- docs/manual/mod/mod_substitute.html.en | 4 +- docs/manual/mod/mod_substitute.xml | 4 +- docs/manual/mod/mod_vhost_alias.xml.tr | 2 +- docs/manual/rewrite/proxy.html.en | 4 +- docs/manual/rewrite/proxy.xml | 4 +- docs/manual/sections.html.en | 4 +- docs/manual/sections.xml | 4 +- docs/manual/urlmapping.html.en | 6 +-- docs/manual/urlmapping.xml | 6 +-- docs/manual/vhosts/examples.html.en | 4 +- docs/manual/vhosts/examples.html.fr | 2 + docs/manual/vhosts/examples.xml | 4 +- docs/manual/vhosts/examples.xml.fr | 2 +- docs/manual/vhosts/examples.xml.ja | 2 +- docs/manual/vhosts/examples.xml.ko | 2 +- docs/manual/vhosts/examples.xml.meta | 2 +- docs/manual/vhosts/examples.xml.tr | 2 +- docs/manual/vhosts/mass.xml.fr | 2 +- docs/manual/vhosts/mass.xml.ko | 2 +- docs/manual/vhosts/mass.xml.tr | 2 +- docs/manual/vhosts/name-based.html.fr | 2 + docs/manual/vhosts/name-based.xml.de | 2 +- docs/manual/vhosts/name-based.xml.fr | 2 +- docs/manual/vhosts/name-based.xml.ja | 2 +- docs/manual/vhosts/name-based.xml.ko | 2 +- docs/manual/vhosts/name-based.xml.meta | 2 +- docs/manual/vhosts/name-based.xml.tr | 2 +- 56 files changed, 151 insertions(+), 147 deletions(-) diff --git a/docs/manual/howto/cgi.xml.fr b/docs/manual/howto/cgi.xml.fr index fb3560586c..1e3425fe11 100644 --- a/docs/manual/howto/cgi.xml.fr +++ b/docs/manual/howto/cgi.xml.fr @@ -1,7 +1,7 @@ - + diff --git a/docs/manual/howto/cgi.xml.ja b/docs/manual/howto/cgi.xml.ja index b4dc3af962..d92899ceba 100644 --- a/docs/manual/howto/cgi.xml.ja +++ b/docs/manual/howto/cgi.xml.ja @@ -1,7 +1,7 @@ - + + + diff --git a/docs/manual/misc/perf-tuning.xml.ko b/docs/manual/misc/perf-tuning.xml.ko index dcc1e05414..293913b33f 100644 --- a/docs/manual/misc/perf-tuning.xml.ko +++ b/docs/manual/misc/perf-tuning.xml.ko @@ -1,7 +1,7 @@ - + + + + + diff --git a/docs/manual/mod/core.xml.ja b/docs/manual/mod/core.xml.ja index 6e7337df6e..f061198bc8 100644 --- a/docs/manual/mod/core.xml.ja +++ b/docs/manual/mod/core.xml.ja @@ -1,7 +1,7 @@ - + + + diff --git a/docs/manual/mod/mod_proxy.html.en b/docs/manual/mod/mod_proxy.html.en index 6d295018f4..36ee67e136 100644 --- a/docs/manual/mod/mod_proxy.html.en +++ b/docs/manual/mod/mod_proxy.html.en @@ -202,8 +202,8 @@

In addition, if you wish to have caching enabled, consult the documentation from mod_cache.

-

Reverse Proxy

ProxyPass /foo http://foo.example.com/bar
-ProxyPassReverse /foo http://foo.example.com/bar
+

Reverse Proxy

ProxyPass        "/foo" "http://foo.example.com/bar"
+ProxyPassReverse "/foo" "http://foo.example.com/bar"

Forward Proxy

ProxyRequests On
@@ -251,7 +251,7 @@ ProxyVia On
       ProxyPassMatch when used
       for a reverse proxy:

-
ProxyPass /example http://backend.example.com connectiontimeout=5 timeout=30
+
ProxyPass "/example" "http://backend.example.com" connectiontimeout=5 timeout=30

This will create a worker associated with the origin server URL @@ -284,8 +284,8 @@ ProxyVia On

The URL identifying a direct worker is the URL of its origin server including any path components given:

-
ProxyPass /examples http://backend.example.com/examples
-ProxyPass /docs http://backend.example.com/docs
+
ProxyPass "/examples" "http://backend.example.com/examples"
+ProxyPass "/docs"     "http://backend.example.com/docs"

This example defines two different workers, each using a separate @@ -296,8 +296,8 @@ ProxyPass /docs http://backend.example.com/docs

the URL of some worker is a leading substring of the URL of another worker defined later in the configuration file. In the following example

-
ProxyPass /apps http://backend.example.com/ timeout=60
-ProxyPass /examples http://backend.example.com/examples timeout=10
+
ProxyPass "/apps"     "http://backend.example.com/" timeout=60
+ProxyPass "/examples" "http://backend.example.com/examples" timeout=10

the second worker isn't actually created. Instead the first @@ -405,7 +405,7 @@ ProxyPass /examples http://backend.example.com/examples timeout=10 proxy-nokeepalive notes.

<Location "/buggyappserver/">
-  ProxyPass http://buggyappserver:7001/foo/
+  ProxyPass "http://buggyappserver:7001/foo/"
   SetEnv force-proxy-request-1.0 1
   SetEnv proxy-nokeepalive 1
 </Location>
@@ -1023,7 +1023,7 @@ through then

<Location "/mirror/foo/">
-    ProxyPass http://backend.example.com/
+    ProxyPass "http://backend.example.com/"
 </Location>
@@ -1036,7 +1036,7 @@ through the below syntax is that it allows for dynamic control via the Balancer Manager interface:

-
ProxyPass /mirror/foo/ http://backend.example.com/
+
ProxyPass "/mirror/foo/" "http://backend.example.com/"
@@ -1051,15 +1051,15 @@ through to reverse-proxy a subdirectory, e.g.

<Location "/mirror/foo/">
-    ProxyPass http://backend.example.com/
+    ProxyPass "http://backend.example.com/"
 </Location>
 <Location "/mirror/foo/i">
-    ProxyPass !
+    ProxyPass "!"
 </Location>
-
ProxyPass /mirror/foo/i !
-ProxyPass /mirror/foo http://backend.example.com
+
ProxyPass "/mirror/foo/i" "!"
+ProxyPass "/mirror/foo"   "http://backend.example.com"

will proxy all requests to /mirror/foo to @@ -1106,7 +1106,7 @@ ProxyPass /mirror/foo http://backend.example.com among all child processes, except when only one child process is allowed by configuration or MPM design.

-

Example

ProxyPass /example http://backend.example.com max=20 ttl=120 retry=300
+

Example

ProxyPass "/example" "http://backend.example.com" max=20 ttl=120 retry=300
BalancerMember parameters
@@ -1394,8 +1394,8 @@ ProxyPass /mirror/foo http://backend.example.com

A sample balancer setup

-
ProxyPass /special-area http://special.example.com smax=5 max=10
-ProxyPass / balancer://mycluster/ stickysession=JSESSIONID|jsessionid nofailover=On
+    
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
@@ -1406,7 +1406,7 @@ ProxyPass / balancer://mycluster/ stickysession=JSESSIONID|jsessionid nofailover
 
     

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
@@ -1460,8 +1460,8 @@ RewriteCond %{HTTPS} =on
 RewriteRule . - [E=protocol:https]
 
 RewriteRule ^/mirror/foo/(.*) %{ENV:protocol}://backend.example.com/$1 [P]
-ProxyPassReverse  /mirror/foo/ http://backend.example.com/
-ProxyPassReverse  /mirror/foo/ https://backend.example.com/
+ProxyPassReverse "/mirror/foo/" "http://backend.example.com/" +ProxyPassReverse "/mirror/foo/" "https://backend.example.com/"
@@ -1535,7 +1535,7 @@ ProxyPassReverse /mirror/foo/ https://backend.example.com/

Suppose the local server has address http://example.com/; then

-
ProxyPassMatch ^/(.*\.gif)$ http://backend.example.com/$1
+
ProxyPassMatch "^/(.*\.gif)$" "http://backend.example.com/$1"

will cause a local request for @@ -1545,12 +1545,12 @@ ProxyPassReverse /mirror/foo/ https://backend.example.com/

The URL argument must be parsable as a URL before regexp substitutions (as well as after). This limits the matches you can use. For instance, if we had used

-
ProxyPassMatch ^(/.*\.gif)$ http://backend.example.com:8000$1
+
ProxyPassMatch "^(/.*\.gif)$" "http://backend.example.com:8000$1"

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:

-
ProxyPassMatch ^/(.*\.gif)$ http://backend.example.com:8000/$1
+
ProxyPassMatch "^/(.*\.gif)$" "http://backend.example.com:8000/$1"

The ! directive is useful in situations where you don't want @@ -1613,10 +1613,10 @@ proxied server

For example, suppose the local server has address http://example.com/; then

-
ProxyPass         /mirror/foo/ http://backend.example.com/
-ProxyPassReverse  /mirror/foo/ http://backend.example.com/
+    
ProxyPass         "/mirror/foo/" "http://backend.example.com/"
+ProxyPassReverse  "/mirror/foo/" "http://backend.example.com/"
 ProxyPassReverseCookieDomain  backend.example.com  public.example.com
-ProxyPassReverseCookiePath  /  /mirror/foo/
+ProxyPassReverseCookiePath "/" "/mirror/foo/"

will not only cause a local request for the @@ -1690,7 +1690,7 @@ reverse proxy. This directive rewrites the path string in In the example given with ProxyPassReverse, the directive:

-
ProxyPassReverseCookiePath  /  /mirror/foo/
+
ProxyPassReverseCookiePath  "/"  "/mirror/foo/"

will rewrite a cookie with backend path / (or diff --git a/docs/manual/mod/mod_proxy.xml b/docs/manual/mod/mod_proxy.xml index cfee3e069f..7a7596f798 100644 --- a/docs/manual/mod/mod_proxy.xml +++ b/docs/manual/mod/mod_proxy.xml @@ -154,8 +154,8 @@ Reverse Proxy -ProxyPass /foo http://foo.example.com/bar -ProxyPassReverse /foo http://foo.example.com/bar +ProxyPass "/foo" "http://foo.example.com/bar" +ProxyPassReverse "/foo" "http://foo.example.com/bar" @@ -211,7 +211,7 @@ ProxyVia On for a reverse proxy:

- ProxyPass /example http://backend.example.com connectiontimeout=5 timeout=30 +ProxyPass "/example" "http://backend.example.com" connectiontimeout=5 timeout=30

This will create a worker associated with the origin server URL @@ -247,8 +247,8 @@ ProxyVia On origin server including any path components given:

-ProxyPass /examples http://backend.example.com/examples -ProxyPass /docs http://backend.example.com/docs +ProxyPass "/examples" "http://backend.example.com/examples" +ProxyPass "/docs" "http://backend.example.com/docs"

This example defines two different workers, each using a separate @@ -260,8 +260,8 @@ ProxyPass /docs http://backend.example.com/docs worker defined later in the configuration file. In the following example

-ProxyPass /apps http://backend.example.com/ timeout=60 -ProxyPass /examples http://backend.example.com/examples timeout=10 +ProxyPass "/apps" "http://backend.example.com/" timeout=60 +ProxyPass "/examples" "http://backend.example.com/examples" timeout=10

the second worker isn't actually created. Instead the first @@ -379,7 +379,7 @@ ProxyPass /examples http://backend.example.com/examples timeout=10 <Location "/buggyappserver/"> - ProxyPass http://buggyappserver:7001/foo/ + ProxyPass "http://buggyappserver:7001/foo/" SetEnv force-proxy-request-1.0 1 SetEnv proxy-nokeepalive 1 </Location> @@ -887,7 +887,7 @@ expressions <Location "/mirror/foo/"> - ProxyPass http://backend.example.com/ + ProxyPass "http://backend.example.com/" </Location> @@ -901,7 +901,7 @@ expressions Balancer Manager interface:

- ProxyPass /mirror/foo/ http://backend.example.com/ + ProxyPass "/mirror/foo/" "http://backend.example.com/" @@ -917,16 +917,16 @@ expressions <Location "/mirror/foo/"> - ProxyPass http://backend.example.com/ + ProxyPass "http://backend.example.com/" </Location> <Location "/mirror/foo/i"> - ProxyPass ! + ProxyPass "!" </Location> -ProxyPass /mirror/foo/i ! -ProxyPass /mirror/foo http://backend.example.com +ProxyPass "/mirror/foo/i" "!" +ProxyPass "/mirror/foo" "http://backend.example.com"

will proxy all requests to /mirror/foo to @@ -975,7 +975,7 @@ ProxyPass /mirror/foo http://backend.example.com Example - ProxyPass /example http://backend.example.com max=20 ttl=120 retry=300 +ProxyPass "/example" "http://backend.example.com" max=20 ttl=120 retry=300 @@ -1265,8 +1265,8 @@ ProxyPass /mirror/foo http://backend.example.com

A sample balancer setup

-ProxyPass /special-area http://special.example.com smax=5 max=10 -ProxyPass / balancer://mycluster/ stickysession=JSESSIONID|jsessionid nofailover=On +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 @@ -1278,7 +1278,7 @@ ProxyPass / balancer://mycluster/ stickysession=JSESSIONID|jsessionid nofailover

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 @@ -1337,8 +1337,8 @@ RewriteCond %{HTTPS} =on RewriteRule . - [E=protocol:https] RewriteRule ^/mirror/foo/(.*) %{ENV:protocol}://backend.example.com/$1 [P] -ProxyPassReverse /mirror/foo/ http://backend.example.com/ -ProxyPassReverse /mirror/foo/ https://backend.example.com/ +ProxyPassReverse "/mirror/foo/" "http://backend.example.com/" +ProxyPassReverse "/mirror/foo/" "https://backend.example.com/" @@ -1366,7 +1366,7 @@ ProxyPassReverse /mirror/foo/ https://backend.example.com/ then

- ProxyPassMatch ^/(.*\.gif)$ http://backend.example.com/$1 +ProxyPassMatch "^/(.*\.gif)$" "http://backend.example.com/$1"

will cause a local request for @@ -1377,13 +1377,13 @@ ProxyPassReverse /mirror/foo/ https://backend.example.com/ substitutions (as well as after). This limits the matches you can use. For instance, if we had used

- ProxyPassMatch ^(/.*\.gif)$ http://backend.example.com:8000$1 +ProxyPassMatch "^(/.*\.gif)$" "http://backend.example.com:8000$1"

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:

- ProxyPassMatch ^/(.*\.gif)$ http://backend.example.com:8000/$1 +ProxyPassMatch "^/(.*\.gif)$" "http://backend.example.com:8000/$1"

The ! directive is useful in situations where you don't want @@ -1450,10 +1450,10 @@ proxied server http://example.com/; then

-ProxyPass /mirror/foo/ http://backend.example.com/ -ProxyPassReverse /mirror/foo/ http://backend.example.com/ +ProxyPass "/mirror/foo/" "http://backend.example.com/" +ProxyPassReverse "/mirror/foo/" "http://backend.example.com/" ProxyPassReverseCookieDomain backend.example.com public.example.com -ProxyPassReverseCookiePath / /mirror/foo/ +ProxyPassReverseCookiePath "/" "/mirror/foo/"

will not only cause a local request for the @@ -1537,7 +1537,7 @@ In the example given with ProxyPassReverse, the directive:

- ProxyPassReverseCookiePath / /mirror/foo/ +ProxyPassReverseCookiePath "/" "/mirror/foo/"

will rewrite a cookie with backend path / (or diff --git a/docs/manual/mod/mod_proxy_ajp.html.en b/docs/manual/mod/mod_proxy_ajp.html.en index 62b3784ae6..e07d3685e2 100644 --- a/docs/manual/mod/mod_proxy_ajp.html.en +++ b/docs/manual/mod/mod_proxy_ajp.html.en @@ -71,7 +71,7 @@ (e.g. Apache Tomcat) using the AJP13 protocol. The usage is similar to an HTTP reverse proxy, but uses the ajp:// prefix:

-

Simple Reverse Proxy

ProxyPass /app ajp://backend.example.com:8009/app
+

Simple Reverse Proxy

ProxyPass "/app" "ajp://backend.example.com:8009/app"

Balancers may also be used:

@@ -80,7 +80,7 @@ BalancerMember ajp://app2.example.com:8009 loadfactor=2 ProxySet lbmethod=bytraffic </Proxy> -ProxyPass /app balancer://cluster/app +ProxyPass "/app" "balancer://cluster/app"

Note that usually no @@ -95,8 +95,8 @@ ProxyPass /app balancer://cluster/app backend. In this case, a redirect header can be rewritten relative to the original host URL (not the backend ajp:// URL), for example:

-

Rewriting Proxied Path

ProxyPass /apps/foo ajp://backend.example.com:8009/foo
-ProxyPassReverse /apps/foo http://www.example.com/foo
+

Rewriting Proxied Path

ProxyPass "/apps/foo" "ajp://backend.example.com:8009/foo"
+ProxyPassReverse "/apps/foo" "http://www.example.com/foo"

However, it is usually better to deploy the application on the backend server at the same path as the proxy rather than to take this approach. diff --git a/docs/manual/mod/mod_proxy_ajp.xml b/docs/manual/mod/mod_proxy_ajp.xml index 6482ab2c81..fad37d8e40 100644 --- a/docs/manual/mod/mod_proxy_ajp.xml +++ b/docs/manual/mod/mod_proxy_ajp.xml @@ -57,7 +57,7 @@ Simple Reverse Proxy - ProxyPass /app ajp://backend.example.com:8009/app + ProxyPass "/app" "ajp://backend.example.com:8009/app" @@ -69,7 +69,7 @@ BalancerMember ajp://app2.example.com:8009 loadfactor=2 ProxySet lbmethod=bytraffic </Proxy> -ProxyPass /app balancer://cluster/app +ProxyPass "/app" "balancer://cluster/app" @@ -87,8 +87,8 @@ ProxyPass /app balancer://cluster/app example:

Rewriting Proxied Path -ProxyPass /apps/foo ajp://backend.example.com:8009/foo -ProxyPassReverse /apps/foo http://www.example.com/foo +ProxyPass "/apps/foo" "ajp://backend.example.com:8009/foo" +ProxyPassReverse "/apps/foo" "http://www.example.com/foo"

However, it is usually better to deploy the application on the backend diff --git a/docs/manual/mod/mod_proxy_balancer.html.en b/docs/manual/mod/mod_proxy_balancer.html.en index 362be933b3..084e93d2f5 100644 --- a/docs/manual/mod/mod_proxy_balancer.html.en +++ b/docs/manual/mod/mod_proxy_balancer.html.en @@ -112,8 +112,8 @@ 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 @@ -127,8 +127,8 @@ ProxyPassReverse /test balancer://mycluster 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"

top
@@ -262,7 +262,7 @@ ProxyPassReverse /test balancer://mycluster

Finally you can support cookies and URL encoding at the same time, by 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
diff --git a/docs/manual/mod/mod_proxy_balancer.xml b/docs/manual/mod/mod_proxy_balancer.xml
index 7508c1d17b..784f355350 100644
--- a/docs/manual/mod/mod_proxy_balancer.xml
+++ b/docs/manual/mod/mod_proxy_balancer.xml
@@ -95,8 +95,8 @@
     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 @@ -111,8 +111,8 @@ Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ 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" @@ -248,7 +248,7 @@ 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 diff --git a/docs/manual/mod/mod_proxy_express.html.en b/docs/manual/mod/mod_proxy_express.html.en index 61f4c99528..433d8330e3 100644 --- a/docs/manual/mod/mod_proxy_express.html.en +++ b/docs/manual/mod/mod_proxy_express.html.en @@ -64,8 +64,8 @@
  • It emulates:
    <VirtualHost *:80>
        ServerName front.end.server
    -   ProxyPass / back.end.server:port
    -   ProxyPassReverse / back.end.server:port
    +   ProxyPass        "/" "back.end.server:port"
    +   ProxyPassReverse "/" "back.end.server:port"
     </VirtualHost>
    That is, the entire URL is appended to the mapped backend diff --git a/docs/manual/mod/mod_proxy_express.xml b/docs/manual/mod/mod_proxy_express.xml index 2d8d44086d..620ad8e43f 100644 --- a/docs/manual/mod/mod_proxy_express.xml +++ b/docs/manual/mod/mod_proxy_express.xml @@ -64,8 +64,8 @@ <VirtualHost *:80> ServerName front.end.server - ProxyPass / back.end.server:port - ProxyPassReverse / back.end.server:port + ProxyPass "/" "back.end.server:port" + ProxyPassReverse "/" "back.end.server:port" </VirtualHost> That is, the entire URL is appended to the mapped backend diff --git a/docs/manual/mod/mod_proxy_fcgi.html.en b/docs/manual/mod/mod_proxy_fcgi.html.en index 4ace47129c..53a1334168 100644 --- a/docs/manual/mod/mod_proxy_fcgi.html.en +++ b/docs/manual/mod/mod_proxy_fcgi.html.en @@ -74,7 +74,7 @@

    Remember, in order to make the following examples work, you have to enable mod_proxy and mod_proxy_fcgi.

    -

    Single application instance

    ProxyPass /myapp/ fcgi://localhost:4000/
    +

    Single application instance

    ProxyPass "/myapp/" "fcgi://localhost:4000/"

    mod_proxy_fcgi disables connection reuse by @@ -84,14 +84,14 @@ from httpd, you can opt-in to connection reuse as shown in the following example:

    -

    Single application instance, connection reuse

    ProxyPass /myapp/ fcgi://localhost:4000/ enablereuse=on
    +

    Single application instance, connection reuse

    ProxyPass "/myapp/" "fcgi://localhost:4000/" enablereuse=on

    The following example passes the request URI as a filesystem path for the PHP-FPM daemon to run. The request URL is implicitly added to the 2nd parameter. The hostname and port following fcgi:// are where PHP-FPM is listening. Connection pooling is enabled.

    -

    PHP-FPM

    ProxyPassMatch ^/myapp/.*\.php(/.*)?$ fcgi://localhost:9000/var/www/ enablereuse=on
    +

    PHP-FPM

    ProxyPassMatch "^/myapp/.*\.php(/.*)?$" "fcgi://localhost:9000/var/www/" enablereuse=on

    The following example passes the request URI as a filesystem @@ -99,7 +99,7 @@ a unix domain socket (UDS). Requires 2.4.9 or later. With this syntax, the hostname and optional port following fcgi:// are ignored.

    PHP-FPM with UDS

          # UDS does not currently support connection reuse
    -      ProxyPassMatch ^/(.*\.php(/.*)?)$ "unix:/var/run/php5-fpm.sock|fcgi://localhost/var/www/"
    + ProxyPassMatch "^/(.*\.php(/.*)?)$" "unix:/var/run/php5-fpm.sock|fcgi://localhost/var/www/"
  • The balanced gateway needs mod_proxy_balancer and @@ -108,7 +108,7 @@ modules listed above. mod_lbmethod_byrequests is the default, and will be used for this example configuration.

    -

    Balanced gateway to multiple application instances

    ProxyPass /myapp/ balancer://myappcluster/
    +    

    Balanced gateway to multiple application instances

    ProxyPass "/myapp/" "balancer://myappcluster/"
     <Proxy balancer://myappcluster/>
         BalancerMember fcgi://localhost:4000
         BalancerMember fcgi://localhost:4001
    diff --git a/docs/manual/mod/mod_proxy_fcgi.xml b/docs/manual/mod/mod_proxy_fcgi.xml
    index bff0638493..da0c155d73 100644
    --- a/docs/manual/mod/mod_proxy_fcgi.xml
    +++ b/docs/manual/mod/mod_proxy_fcgi.xml
    @@ -65,8 +65,8 @@
     
         Single application instance
         
    -      ProxyPass /myapp/ fcgi://localhost:4000/
    -      
    +      ProxyPass "/myapp/" "fcgi://localhost:4000/"
    +    
         
     
         

    mod_proxy_fcgi disables connection reuse by @@ -78,7 +78,7 @@ Single application instance, connection reuse - ProxyPass /myapp/ fcgi://localhost:4000/ enablereuse=on + ProxyPass "/myapp/" "fcgi://localhost:4000/" enablereuse=on @@ -88,7 +88,7 @@ PHP-FPM is listening. Connection pooling is enabled.

    PHP-FPM - ProxyPassMatch ^/myapp/.*\.php(/.*)?$ fcgi://localhost:9000/var/www/ enablereuse=on + ProxyPassMatch "^/myapp/.*\.php(/.*)?$" "fcgi://localhost:9000/var/www/" enablereuse=on @@ -99,7 +99,7 @@ PHP-FPM with UDS # UDS does not currently support connection reuse - ProxyPassMatch ^/(.*\.php(/.*)?)$ "unix:/var/run/php5-fpm.sock|fcgi://localhost/var/www/" + ProxyPassMatch "^/(.*\.php(/.*)?)$" "unix:/var/run/php5-fpm.sock|fcgi://localhost/var/www/" @@ -111,7 +111,7 @@ Balanced gateway to multiple application instances -ProxyPass /myapp/ balancer://myappcluster/ +ProxyPass "/myapp/" "balancer://myappcluster/" <Proxy balancer://myappcluster/> BalancerMember fcgi://localhost:4000 BalancerMember fcgi://localhost:4001 diff --git a/docs/manual/mod/mod_proxy_scgi.html.en b/docs/manual/mod/mod_proxy_scgi.html.en index d1ca800007..5a10499183 100644 --- a/docs/manual/mod/mod_proxy_scgi.html.en +++ b/docs/manual/mod/mod_proxy_scgi.html.en @@ -66,7 +66,7 @@

    Remember, in order to make the following examples work, you have to enable mod_proxy and mod_proxy_scgi.

    -

    Simple gateway

    ProxyPass /scgi-bin/ scgi://localhost:4000/
    +

    Simple gateway

    ProxyPass "/scgi-bin/" "scgi://localhost:4000/"

    The balanced gateway needs mod_proxy_balancer and @@ -75,7 +75,7 @@ modules listed above. mod_lbmethod_byrequests is the default, and will be used for this example configuration.

    -

    Balanced gateway

    ProxyPass /scgi-bin/ balancer://somecluster/
    +    

    Balanced gateway

    ProxyPass "/scgi-bin/" "balancer://somecluster/"
     <Proxy balancer://somecluster>
         BalancerMember scgi://localhost:4000
         BalancerMember scgi://localhost:4001
    diff --git a/docs/manual/mod/mod_proxy_scgi.xml b/docs/manual/mod/mod_proxy_scgi.xml
    index 4ad6dda561..c7155b28af 100644
    --- a/docs/manual/mod/mod_proxy_scgi.xml
    +++ b/docs/manual/mod/mod_proxy_scgi.xml
    @@ -55,7 +55,7 @@
     
         Simple gateway
         
    -      ProxyPass /scgi-bin/ scgi://localhost:4000/
    +ProxyPass "/scgi-bin/" "scgi://localhost:4000/"
           
         
     
    @@ -67,7 +67,7 @@
     
         Balanced gateway
         
    -ProxyPass /scgi-bin/ balancer://somecluster/
    +ProxyPass "/scgi-bin/" "balancer://somecluster/"
     <Proxy balancer://somecluster>
         BalancerMember scgi://localhost:4000
         BalancerMember scgi://localhost:4001
    diff --git a/docs/manual/mod/mod_proxy_wstunnel.html.en b/docs/manual/mod/mod_proxy_wstunnel.html.en
    index dee214b41b..e2eb4d197d 100644
    --- a/docs/manual/mod/mod_proxy_wstunnel.html.en
    +++ b/docs/manual/mod/mod_proxy_wstunnel.html.en
    @@ -43,8 +43,8 @@ Connection: Upgrade
    -

    Proxying requests to websockets server

    ProxyPass /ws2/  ws://echo.websocket.org/
    -ProxyPass /wss2/ wss://echo.websocket.org/
    +

    Proxying requests to websockets server

    ProxyPass "/ws2/"  "ws://echo.websocket.org/"
    +ProxyPass "/wss2/" "wss://echo.websocket.org/"
    diff --git a/docs/manual/mod/mod_proxy_wstunnel.xml b/docs/manual/mod/mod_proxy_wstunnel.xml index 152082c5b1..c23b4f411b 100644 --- a/docs/manual/mod/mod_proxy_wstunnel.xml +++ b/docs/manual/mod/mod_proxy_wstunnel.xml @@ -44,8 +44,8 @@ Connection: Upgrade Proxying requests to websockets server -ProxyPass /ws2/ ws://echo.websocket.org/ -ProxyPass /wss2/ wss://echo.websocket.org/ +ProxyPass "/ws2/" "ws://echo.websocket.org/" +ProxyPass "/wss2/" "wss://echo.websocket.org/" diff --git a/docs/manual/mod/mod_rewrite.xml.fr b/docs/manual/mod/mod_rewrite.xml.fr index 5b1bbde57e..d0420f85de 100644 --- a/docs/manual/mod/mod_rewrite.xml.fr +++ b/docs/manual/mod/mod_rewrite.xml.fr @@ -1,7 +1,7 @@ - + diff --git a/docs/manual/mod/mod_substitute.html.en b/docs/manual/mod/mod_substitute.html.en index 742146a730..385e0f09f3 100644 --- a/docs/manual/mod/mod_substitute.html.en +++ b/docs/manual/mod/mod_substitute.html.en @@ -112,8 +112,8 @@

    In this case, mod_substutite can be used to rewrite those URLs into something that will work from the front end:

    -

    Rewriting URLs embedded in proxied content

    ProxyPass /blog/ http://internal.blog.example.com
    -ProxyPassReverse /blog/ http://internal.blog.example.com/
    +    

    Rewriting URLs embedded in proxied content

    ProxyPass        "/blog/" "http://internal.blog.example.com"
    +ProxyPassReverse "/blog/" "http://internal.blog.example.com/"
     
     Substitute "s|http://internal.blog.example.com/|http://www.example.com/blog/|i"
    diff --git a/docs/manual/mod/mod_substitute.xml b/docs/manual/mod/mod_substitute.xml index ce1a7a4554..534dd62ba1 100644 --- a/docs/manual/mod/mod_substitute.xml +++ b/docs/manual/mod/mod_substitute.xml @@ -113,8 +113,8 @@ Rewriting URLs embedded in proxied content -ProxyPass /blog/ http://internal.blog.example.com -ProxyPassReverse /blog/ http://internal.blog.example.com/ +ProxyPass "/blog/" "http://internal.blog.example.com" +ProxyPassReverse "/blog/" "http://internal.blog.example.com/" Substitute "s|http://internal.blog.example.com/|http://www.example.com/blog/|i" diff --git a/docs/manual/mod/mod_vhost_alias.xml.tr b/docs/manual/mod/mod_vhost_alias.xml.tr index 4c1464df45..2f5f52e688 100644 --- a/docs/manual/mod/mod_vhost_alias.xml.tr +++ b/docs/manual/mod/mod_vhost_alias.xml.tr @@ -1,7 +1,7 @@ - + + diff --git a/docs/manual/vhosts/examples.xml.ja b/docs/manual/vhosts/examples.xml.ja index 7d1b96d7b6..d110e96f42 100644 --- a/docs/manual/vhosts/examples.xml.ja +++ b/docs/manual/vhosts/examples.xml.ja @@ -1,7 +1,7 @@ - + + + + + + + + diff --git a/docs/manual/vhosts/name-based.xml.ja b/docs/manual/vhosts/name-based.xml.ja index 100aac3511..df4b1719cc 100644 --- a/docs/manual/vhosts/name-based.xml.ja +++ b/docs/manual/vhosts/name-based.xml.ja @@ -1,7 +1,7 @@ - + + +