我有两台服务器:一台 Ubuntu/Apache Web 服务器和一台 Windows 2008 IIS7 服务器。我有一个外部静态 IP 地址。端口 80 上的所有 Web 请求都转发到我的 Ubuntu 计算机。我的大多数网站都位于 Ubuntu 服务器上,但是,特定网站需要在 Windows 2008 计算机之外托管。如何将 Apache Web 服务器上特定虚拟主机的请求转发到 IIS 到我网络上的另一台主机?
例如,我的 Apache 计算机是192.168.100.110
,并且所有请求www.example.com需要透明地转发到192.168.100.101
。所有 Web 请求始终会先通过 Apache 计算机。
我怎样才能做到这一点?
答案1
使用 mod_proxy:
<VirtualHost *:80>
ServerName site.to.serve.via.iis
ProxyPass / http://192.168.100.101/
ProxyPassReverse / http://192.168.100.101/
ProxyPreserveHost On
</VirtualHost>