Chr*_*aan 1 apache-http-server redirection nginx
我有一个 Apache 服务器在端口 80 上为两个站点运行。假设域是example.com,我有另一个域example2.com。当用户访问时example.com,我希望它提供这些文件(因此是虚拟主机),但是当有人尝试访问域example2.com(即在同一 IP 地址上)时,我希望它重定向到端口 90 上的另一个 IP 地址,而无需访客知道他在不同的港口。
我怎样才能做到这一点?
<VirtualHost example.com:80>
DocumentRoot {rootdir}
ServerName example.com
ServerAlias example.com
</VirtualHost>
<VirtualHost *:80>
NoProxy .example.com
ProxyPreserveHost On
ProxyRequests Off
ServerName *
ProxyPass / http://server2:90
ProxyPassReverse / http://server2:90
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
这不起作用,它也试图example.com与代理取得联系,有人知道为什么吗?
您确定要重定向用户吗?据我了解,您希望服务器 example2.com 代理到其他地方。您可以使用mod_proxy 将Apache 设置为代理。您还可以为特定的 VirtualHost 定义此代理,请参阅 Apache 的VirtualHost 示例。
例如这样的事情应该工作:
NameVirtualHost *:80
<VirtualHost *:80>
ServerName example.com
<VirtualHost>
<VirtualHost *:80>
ServerName example2.com
ProxyPass / http://server2:90/
ProxyPassReverse / http://server2:90/
ProxyPreserveHost On
ProxyRequests Off
<VirtualHost>
Run Code Online (Sandbox Code Playgroud)
还要确保 mod_proxy 已加载
LoadModule proxy_module modules/mod_proxy.so
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13636 次 |
| 最近记录: |