我有一个在云端的Ubuntu服务器。 我们称之为ServerA 。 ServerA已经安装了apache2,正在为HTTP请求提供默认页面。 mydomain.com指向ServerA的IP,因此默认的ServerA的站点也可以通过这个域名获得。
ServerA安装了一个OpenVPN,并作为VPN网关连接不同的客户端。
当ServerB作为OpenVPN客户端连接到ServerA时 , ServerA的OpenVPN创build的OpenVPNnetworking中会分配一个本地IP。
我将myotherdoamin.com设置为指向相同的ServerA的IP。 我想这样configurationServerA ,这样,如果有一个到mydomain.com的HTTP请求进来 – 它被路由到ServerA的apache2,并且本地站点被服务。 如果请求myotherdomain.com进来,我想让ServerA将请求路由到一个连接的ServerB的HTTP端口,从而返回一个VPN客户端的HTTP响应。
我的问题是:
谢谢。
iptables能够根据HTTP请求头来路由规则吗?
不,这不对。 IPTables在第3/4层工作,HTTP请求标头是第7层。
apache2能够根据HTTP请求头将请求路由到其他IP吗?
是的,使用mod_proxy ,Apache可以将这些请求代理到另一台服务器。
哪个应用程序最适合处理我期望的行为?
如上所述,mod_proxy将为您工作,但任何其他可以在7层操作的反向代理将执行此操作。 与Apache的mod_proxy一起,Nginx和HAproxy可能是最常见的。