From 2f1f9c5df027e86bf4c3dbdb96c9e52748421c20 Mon Sep 17 00:00:00 2001 From: Yann Ylavic Date: Thu, 1 Aug 2024 11:35:26 +0000 Subject: mod_proxy: Fix selection of ProxyPassMatch workers with host/port substitution. PR 69233. With "ProxyPassMatch ^/([^/]+)/(.*)$ https://$1/$2", ap_proxy_get_worker_ex() should not consider the length of scheme://host part of the given URL because of the globbing match on the host part. Fix it by setting worker->s>is_host_matchable when creating a worker with host substitution and avoiding the min_match check in worker_matches() in this case. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1919617 13f79535-47bb-0310-9956-ffa450edef68 --- include/ap_mmn.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/ap_mmn.h b/include/ap_mmn.h index ad4b77bd33..c9ae4c157c 100644 --- a/include/ap_mmn.h +++ b/include/ap_mmn.h @@ -731,6 +731,7 @@ * and AP_REQUEST_TRUSTED_CT BNOTE. * 20211221.24 (2.5.1-dev) Add ap_proxy_fixup_uds_filename() * 20211221.25 (2.5.1-dev) AP_SLASHES and AP_IS_SLASH + * 20211221.26 (2.5.1-dev) Add is_host_matchable to proxy_worker_shared */ #define MODULE_MAGIC_COOKIE 0x41503235UL /* "AP25" */ @@ -738,7 +739,7 @@ #ifndef MODULE_MAGIC_NUMBER_MAJOR #define MODULE_MAGIC_NUMBER_MAJOR 20211221 #endif -#define MODULE_MAGIC_NUMBER_MINOR 25 /* 0...n */ +#define MODULE_MAGIC_NUMBER_MINOR 26 /* 0...n */ /** * Determine if the server's current MODULE_MAGIC_NUMBER is at least a -- cgit v1.2.3