ProxyPreserveHost 在单独的 proxypass 规则上

580*_*arm 9 proxy mod-proxy apache-2.2

我的 Web 主机上有两个 proxypass 规则,一个指向用于缓存目的的本地 varnish 实例,我希望为其启用 ProxyPreserveHost,另一个指向第三方托管站点,我希望为其禁用 ProxyPreserveHost。无论如何,我可以在每个规则/通行证的基础上做到这一点吗?

Sha*_*den 13

在 Apache 2.2 下,否 - 该ProxyPreserveHost指令仅在服务器配置或虚拟主机上下文中有效;您需要ProxyPass在不同的虚拟主机中使用不同的语句。

在 Apache 2.4 中,是的 -已为指令添加目录上下文,因此您现在可以执行以下操作:

<Location /to-varnish/>
    ProxyPreserveHost On
    ProxyPass http://127.0.0.1:8000/to-varnish/
</Location>
<Location /to-third-party/>
    ProxyPreserveHost Off
    ProxyPass http://third-party-site.com/
</Location>
Run Code Online (Sandbox Code Playgroud)