伙计们,我从你们那里学到了很多东西,但这是我第一次在这里发布问题。情况是这样的: - 我有几个 Web 服务器(CentOS 7 + Apache),其中一些使用 KVM 虚拟化,一个物理服务器,在本地网络中运行。 - 该网络使用动态 IP 连接到 Internet。 - 目前,我向路由器添加了端口重定向,以便访问不同的 Web 服务器。例如,如果我需要访问 192.168.0.33 上的 Web 服务器,我会使用 mydomain.dyndns.org:8033,路由器会将外部端口 8033 与 192.168.0.33 机器的内部端口 80 进行映射。
这是我所需要的: - 我想要一种中间服务(bind9?代理?vhosts?任何东西!)来充当 apache 的虚拟主机,将域路由到内部 IP。例如,当我想访问 192.168.0.33 上的 Web 应用程序时,我只使用 domain33.dyndns.org。 - 如果可能的话,我也希望能够创建子域。例如,使用 webapp1.domain.dyndns.org 访问特定的 apache 目录。
抱歉,这是一个愚蠢的问题,提前谢谢你。
问候,
达蒙·H.
答案1
你正在寻找的是反向代理。您可能可以使用现有的 Web 服务器之一执行此操作,因为 apache 和 nginx 都支持反向代理。
您需要做的是将其中一台服务器设置为反向代理,然后仅将 80/443 端口转发到该服务器。为不同的内部服务器设置动态 DNS 主机名,所有主机名都指向您的 WAN IP。当您的反向代理收到 http 连接时,它会根据请求的 HTTP 主机标头将其代理到适当的内部服务器。