Apache 代理到子域(vhost)

Apache 代理到子域(vhost)

我需要代理到我无法控制的 Web 服务器。问题是 Web 服务器在同一个 IP 上托管多个域和子域。这意味着当我使用 apache 代理时,我将看到默认的 apache 页面。而不是子域的指定 vhost 页面。我需要查看当前子域,我认为它位于 Vhost 中(与浏览它的效果相同)

这是我目前正在使用的

ProxyPreserveHost 开启

ProxyPass / http://sub.myweb.com:80/
ProxyPassReverse / http://sub.myweb.com:80/

ServerName localhost

但当我这样做时,它只会显示标准 Apache 工作页面。而不是子域名页面。

希望你们能帮助我!

答案1

ProxyPreserveHost 指令

启用后,此选项将把传入请求的 Host: 行传递到代理主机,而不是 ProxyPass 行中指定的主机名。

此选项通常应关闭。它最适用于特殊配置,如基于代理批量名称的虚拟主机,其中原始主机标头需要由后端服务器评估。

http://httpd.apache.org/docs/2.2/mod/mod_proxy.html

也许你应该把它关掉?

相关内容