【发布时间】:2021-10-05 16:02:46
【问题描述】:
在我的 apache 配置中,我正在匹配某个 url 并尝试将其重定向到另一个位置。在大多数情况下,此配置是有效的。不是的部分是代理传递 url 上的查询参数。我所有的研究都将我引向了 RewriteRule,但这对我来说毫无意义,因为我完全丢弃了传入的 url,因为它在用于匹配 Location 块后并不重要。
<Location "/src">
ProxyErrorOverride Off
ProxyPass https://example.com/dst/v1234?user=me
ProxyPassReverse https://example.com/dst/v1234?user=me
Header set Cache-Control "max-age=604800, public"
</Location
当我测试时,我可以看到以下内容:
-
Web 服务器:POST http://localhost/src -d { "data": true }
-
应用服务器:POST https://example.com/dst/v1234%3fuser=me -d { "data": true }
应用服务器不知道如何解释%3f,即使那是问号 (?) 的 url 编码。应用服务器不在我的控制之下,我无法更改该代码来为我解码。如何让 Apache 发送问号 (?) 而不是 url 编码的变体?
【问题讨论】:
标签: apache