]> git.ipfire.org Git - thirdparty/apache/httpd.git/commit
Merge r1919620, r1919621, r1919623, r1919628, r1921237 from trunk:
authorEric Covener <covener@apache.org>
Mon, 25 Nov 2024 13:32:44 +0000 (13:32 +0000)
committerEric Covener <covener@apache.org>
Mon, 25 Nov 2024 13:32:44 +0000 (13:32 +0000)
commit2aa446f5b08a10c37e952daf96d0c80d3460873a
tree9e83cc79f46e124d2247901c98d8216c7b494179
parentabbc2897472488efb615357fe35922092c64feff
Merge r1919620, r1919621, r1919623, r1919628, r1921237 from trunk:

mod_proxy_fcgi: Don't re-encode SCRIPT_FILENAME. PR 69203

Before r1918550 (r1918559 in 2.4.60), "SetHandler proxy:..." configurations
did not pass through proxy_fixup() hence the proxy_canon_handler hooks, leaving
fcgi's SCRIPT_FILENAME environment variable (from r->filename) decoded, or more
exactly not re-encoded.

We still want to call ap_proxy_canon_url() for "fcgi:" to handle/strip the UDS
"unix:" case and check that r->filename is valid and contains no controls, but
proxy_fcgi_canon() will not ap_proxy_canonenc_ex() thus re-encode anymore.

Note that this will do the same for "ProxyPass fcgi:...", there is no reason
that using SetHandler or ProxyPass don't result in the same thing. If an opt
in/out makes sense we should probably look at ProxyFCGIBackendType.

Follow up to r1919620: CHANGES entry indent.

Follow up to r1919620: init path after "proxy:" is skipped.

Follow up to r1919620: Restore r->filename re-encoding for ProxyPass URLs.

mod_proxy_fgci: Follow up to r1919628: Simplify.

Variable from_handler is used once so axe it.

Submitted by: ylavic
Reviewed by:   ylavic, covener, jorton

Github: closes #470

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1922080 13f79535-47bb-0310-9956-ffa450edef68
CHANGES
changes-entries/bz69203.txt [new file with mode: 0644]
modules/proxy/mod_proxy.c
modules/proxy/mod_proxy_fcgi.c