繁体   English   中英

Apache VirtualHost 指令 ProxyPass

[英]Apache VirtualHost directive ProxyPass

我想使用 Apache 作为托管在不同机器上的两个不同站点的代理。 我目前正在运行 Apache 2.2.15。

我想要实现的是:

 Client --> https://ApacheWebProxyPubIP:443
        --> /Url1.php --> http://10.0.0.2/Url1.php
        --> /Url2 --> http://10.0.0.3/Url2

我尝试使用:

VirtualHost default:443
         ServerName something.nice.org
         ProxyPass /Url1.php http://10.0.0.2/Url1.php
         ProxyPassReverse /Url1.php http://10.0.0.2/Url1.php
     VirtualHost
     VirtualHost *:443
         ServerName somethingelse.nice.org
         ProxyPass /Url2 http://10.0.0.3/Url2
         ProxyPassReverse /Url2 http://10.0.0.3/Url2
     VirtualHost *:443

/Url1.php 到http://10.0.0.2/Url1.php工作正常,但 Url2 没有转发到 10.0.0.3。

实现这一目标的正确语法是什么?

谢谢!

在您的<VirtualHost>指令中试试这个:

     ServerName something.nice.org
     ServerAlias somethingelse.nice.org

     ProxyPass /Url1.php http://10.0.0.2/Url1.php
     ProxyPassReverse /Url1.php http://10.0.0.2/Url1.php

     ProxyPass /Url2 http://10.0.0.3/Url2
     ProxyPassReverse /Url2 http://10.0.0.3/Url2

使用

ProxyPreserveHost yes

指令。 告诉转发服务器保留主机名(由客户端转发)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM