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 On
指令。
告诉转发服务器保留主机名(由客户端转发)。
我想使用 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 On
指令。 告诉转发服务器保留主机名(由客户端转发)。