我在一台机器上实现了两个站点。一个站点托管在 IIS 中,另一个托管在 Zend Server 中。每个站点都有一个域,我只有一个 IP 来分配这两个站点。
我该如何配置 DNS 以便可以从互联网正确访问两个站点?
答案1
您需要对要解析到该 IP 地址的任何域使用“A”记录。对子域使用 CNAME 记录。参见:
http://www.tech-recipes.com/rx/311/dnsbind-resource-record-cname-canonical-names-host-aliases/
答案2
无论 DNS 如何,只有一个进程可以侦听特定的 IP:端口组合。如果您只有一个 IP 地址,并且两个站点都必须通过端口 80 访问,那么您就会遇到问题。
如果您确实无法获得第二个 IP 地址或端口,则必须在端口 80 上运行反向代理来监听传入的连接、挑选出标头Host:
并将 HTTP 请求重定向到适当的服务器(该服务器将在非 80 端口上后台运行)。
这可以是第三台服务器,也可以是现有服务器之一(如果它们能够充当反向代理的话)(例如具有应用程序请求路由。