mirror of
https://github.com/apache/httpd.git
synced 2025-08-07 04:02:58 +03:00
If ProxyPassReverse is used for reverse mapping of relative redirects, subsequent ProxyPassReverse statements, whether they are relative or absolute, may fail.
PR 60408 [Peter Haworth <pmh1wheel gmail.com>] git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1837250 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
4
CHANGES
4
CHANGES
@@ -1,6 +1,10 @@
|
||||
-*- coding: utf-8 -*-
|
||||
Changes with Apache 2.5.1
|
||||
|
||||
*) mod_proxy: If ProxyPassReverse is used for reverse mapping of relative
|
||||
redirects, subsequent ProxyPassReverse statements, whether they are
|
||||
relative or absolute, may fail. PR 60408. [Peter Haworth <pmh1wheel gmail.com>]
|
||||
|
||||
*) mod_ratelimit: Don't interfere with "chunked" encoding, fixing regression
|
||||
introduced in 2.4.34. PR 62568. [Yann Ylavic]
|
||||
|
||||
|
@@ -830,7 +830,7 @@ PROXY_DECLARE(const char *) ap_proxy_location_reverse_map(request_rec *r,
|
||||
{
|
||||
proxy_req_conf *rconf;
|
||||
struct proxy_alias *ent;
|
||||
int i, l1, l2;
|
||||
int i, l1, l1_orig, l2;
|
||||
char *u;
|
||||
|
||||
/*
|
||||
@@ -842,7 +842,7 @@ PROXY_DECLARE(const char *) ap_proxy_location_reverse_map(request_rec *r,
|
||||
return url;
|
||||
}
|
||||
|
||||
l1 = strlen(url);
|
||||
l1_orig = strlen(url);
|
||||
if (conf->interpolate_env == 1) {
|
||||
rconf = ap_get_module_config(r->request_config, &proxy_module);
|
||||
ent = (struct proxy_alias *)rconf->raliases->elts;
|
||||
@@ -855,6 +855,10 @@ PROXY_DECLARE(const char *) ap_proxy_location_reverse_map(request_rec *r,
|
||||
ap_get_module_config(r->server->module_config, &proxy_module);
|
||||
proxy_balancer *balancer;
|
||||
const char *real = ent[i].real;
|
||||
|
||||
/* Restore the url length, if it had been changed by the code below */
|
||||
l1 = l1_orig;
|
||||
|
||||
/*
|
||||
* First check if mapping against a balancer and see
|
||||
* if we have such a entity. If so, then we need to
|
||||
|
Reference in New Issue
Block a user