]> granicus.if.org Git - apache/commitdiff
When a rewrite to proxy is configured in the server config, a check is made to make...
authorChristophe Jaillet <jailletc36@apache.org>
Wed, 22 Aug 2018 21:57:37 +0000 (21:57 +0000)
committerChristophe Jaillet <jailletc36@apache.org>
Wed, 22 Aug 2018 21:57:37 +0000 (21:57 +0000)
Basically this patch is the block of code from hook_uri2file that does the proxy check, copied to hook_fixup.

Patch provided by Michael Streeter [mstreeter1 gmail.com], slightly modified to use a new APLOGNO
PR 56264

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1838684 13f79535-47bb-0310-9956-ffa450edef68

modules/mappers/mod_rewrite.c

index 2066f932c1433f9d253a5dd271ac9c3bc865ce87..3970cff5a9889a42ab9569b4fc7df8e2dd64364e 100644 (file)
@@ -5023,6 +5023,16 @@ static int hook_fixup(request_rec *r)
         if (l > 6 && strncmp(r->filename, "proxy:", 6) == 0) {
             /* it should go on as an internal proxy request */
 
+            /* check if the proxy module is enabled, so
+             * we can actually use it!
+             */
+            if (!proxy_available) {
+                ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r, APLOGNO(10160)
+                              "attempt to make remote request from mod_rewrite "
+                              "without proxy enabled: %s", r->filename);
+                return HTTP_FORBIDDEN;
+            }
+
             /* make sure the QUERY_STRING and
              * PATH_INFO parts get incorporated
              * (r->path_info was already appended by the