多个网络服务器共享一个 public IP

Multiple web servers sharing a public IP

我的 DNS 中有两个条目:www.domain.tldsvn.domain.tld

都指向我公司的publicIP地址88.77.66.55

我有两台 Apache 服务器在我的 public IP 后面的 LAN 上为端口 80 提供服务。一个在 192.168.1.2 上托管我的网站,另一个在 192.168.1.3 上托管我的 SVN 服务器。

我想将 IP 路由到:

www.domain.tld -> 192.168.1.2
svn.domain.tld -> 192.168.1.3

这是我目前的预期设计,但我不知道它是否可行,所以我正在寻找反馈。我的路由器会将所有端口 80 数据转发到 192.168.1.2。然后,在那台机器上:

/etc/apache2/httpd.conf
---
NameVirtualHost 192.168.1.2:80
NameVirtualHost 192.168.1.3:80

<VirtualHost 192.168.1.2:80>
    ServerName www.domain.tld
</VirtualHost>
<VirtualHost 192.168.1.3:80>
    ServerName svn.domain.tld
</VirtualHost>

我是否使用了正确的机制来完成此任务?我可以使用主机名而不是 IP 吗?在我开始搞乱配置并导致停机之前,我想获得一些问题指示。

我认为这会奏效。 Nginx 反向代理是另一种大规模执行此操作的方法。