1 个 IP 对应多个不同的物理 Web 服务器/Web 服务器机器

1 个 IP 对应多个不同的物理 Web 服务器/Web 服务器机器

我的配置 [路由器上的 OpenWRT] [Centos 6.4,Apache 2.4.6 - 机器 A] [Centos 7,Apache 2.4.6 - 机器 B]

我有 1 个 IP 地址指向我的 OpenWRT 路由器。我有 1 个运行网站的 WebServer。并且我添加了第二台物理机来托管网站。

网站=WS

外部 IP --> 10.1.1.1 - OpenWRT 路由器

10.1.1.121 - Web 服务器 A | WS.1、WS.2、WS.3

10.1.1.131 - Web 服务器 B | WS.6,WS.7

我在路由器上设置了端口转发。上面的规则接管了另一个规则。假设转发到 10.1.1.121 的规则是第一个,它将接管另一个规则,我将看到来自 Web 服务器 A 的网站,而不是托管在 Web 服务器 B 上的网站,反之亦然。

知道如何才能从两台机器上查看网站吗?我不介意设置代理、DNS 服务器或任何其他软件,但我不知道这种情况下的最佳解决方案是什么。

我不想询问/获取另一个不指向我的路由器的 IP 地址。

顺便说一句:只有一台机器(WebServer A 或 B)(只有一台安装 Apache 的机器)的设置运行良好。

提前致谢。

答案1

您不需要 DNS 服务器,但您提到这一点确实令人对您的技能产生怀疑。

这里最简单的解决方案是将主机 A 上现有的 Web 服务器转移到不同的端口,然后在http://主机名:80就我个人而言,在这种情况下我会选择 pound 或 haproxy,但如果它是一个更复杂的设置,那么我会选择 Apache Traffic Server。

但正确的解决方案可能是将站点 B 迁移到主机 A 上。

答案2

终于我开始工作了,分享我的经验

(10.1.1.121)登陆服务器配置 普通配置加

< 虚拟主机 >< /虚拟主机> 您需要添加开括号和闭括号。由于编码区域的限制,我无法在代码中添加它们

VirtualHost *:80
ServerName www.website_04.net
ServerAlias website_04.net
  ProxyPreserveHost on
  ProxyPass / http://10.1.1.131/
  ProxyPassReverse / http://10.1.1.131/
/VirtualHost

VirtualHost *:80 
  ServerName www.website_05.net
  ServerAlias website_05.net

  ProxyPreserveHost on
  ProxyPass / http://10.1.1.131/
  ProxyPassReverse / http://10.1.1.131/
/VirtualHost 

其他 Web 服务器(10.1.1.131)将具有正常配置。

相关内容