]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
Sync docs [skip ci].
authorYann Ylavic <ylavic@apache.org>
Thu, 16 Dec 2021 15:07:43 +0000 (15:07 +0000)
committerYann Ylavic <ylavic@apache.org>
Thu, 16 Dec 2021 15:07:43 +0000 (15:07 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1896063 13f79535-47bb-0310-9956-ffa450edef68

docs/manual/mod/mod_proxy.html.en.utf8

index ee3cea5b1a288f68091b09445097068b73aedce9..3dee332270ed863231f6f882df159c8d0243c916 100644 (file)
@@ -1444,23 +1444,32 @@ ProxyPass "/mirror/foo"   "http://backend.example.com"</pre>
         contexts that use a path (like <code>&lt;Location&gt;</code>) will be matched using the
         same mapping.</p>
         <p><code>mapping=encoded</code> prevents the %-decoding of the <var>uri-path</var> so
-        that one can match for instance <code>/some%2furi%2fpath%2fwith%2fslash</code> in a
-        <code>ProxyPass</code> or in a <code>&lt;Location&gt;</code> context.</p>
+        that one can use for instance configurations like:</p>
+        <pre class="prettyprint lang-config">ProxyPass "/special%3Fsegment" "https://example.com/special%3Fsegment" mapping=encoded</pre>
+
+        <pre class="prettyprint lang-config">&lt;Location "/special%3Fsegment"&gt;
+  Require ip 172.17.2.0/24
+&lt;/Location&gt;</pre>
+
         <p><code>mapping=servlet</code> refers to the normalization defined by the Servlet
         specification, which is for instance applied by Apache Tomcat for servlet containers
         (notably the path parameters are ignored for the mapping). An <var>uri-path</var> like
-        <code>/some;foo/path</code> is then mapped as <code>/some/path</code> hence matches:</p>
-        <p><code>  &lt;Location /some/path&gt;</code> or:</p>
-        <p><code>  ProxyPass "/some/path" "https://tomcat.example.com/some/path"</code></p>
-        <p>regardless of the requested path parameters.</p>
-    <div class="note"><h3>Note</h3>
-        <p>It is recommended to use the same mapping on the Apache httpd side than the one
-        used on the backend side. For instance when configuring authorizations in
-        <code>&lt;Location&gt;</code> blocks for paths that are mapped by <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code>
-        to some servlet containers (like applications running on Apache Tomcat), one should
-        use the <code>mapping=servlet</code> setting to prevent path parameters and alike from
-        interfering with the authorizations that are to be enforced in by the Apache httpd.</p>
-    </div>
+        <code>/some;foo/path</code> is then mapped as <code>/some/path</code> hence matches any
+        of the below regardless of the requested path parameters:</p>
+        <pre class="prettyprint lang-config">ProxyPass "/some/path" "https://servlet.example.com/some/path" mapping=servlet</pre>
+
+        <pre class="prettyprint lang-config">&lt;Location "/some/path"&gt;
+  Require valid-user
+&lt;/Location&gt;</pre>
+
+        <div class="note"><h3>Note</h3>
+            <p>It is recommended to use the same mapping on the Apache httpd side than the one
+            used on the backend side. For instance when configuring authorizations in
+            <code>&lt;Location&gt;</code> blocks for paths that are mapped by <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code>
+            to some servlet containers (like applications running on Apache Tomcat), one should
+            use the <code>mapping=servlet</code> setting to prevent path parameters and alike from
+            interfering with the authorizations that are to be enforced in by the Apache httpd.</p>
+        </div>
     </td></tr>
 
     </table>