如何使用 DNS 将 2 个域名指向 1 个网站?

如何使用 DNS 将 2 个域名指向 1 个网站?

我有 2 个域名:domainA.com 和 domainB.com。我有 1 个网站(假设由 IP xxx.xxx.xxx.xxx:80 提供服务)

domainA.com 是首选名称,但我希望 domainB.com 也可以使用。

我现在并不关心 SEO(但将来可能会关心)。

设置 DNS 的正确方法是什么:

  • DNS 直接处理对 domainA.com 的请求,并指向 xxx.xxx.xxx.xxx:80 的网站
  • domainB.com 将所有请求转发到 domainA.com

我可以简单地在每个区域中创建一个指向 xxx.xxx.xxx.xxx 的 A 记录吗?或者,是否有任何方法仅使用 DNS 将 domainB.com 指向 domainA.com?

答案1

虽然创建一个指向的CNAMEfor是完全可能的,但通常不建议这样做,除非您能够完全理解这样做的后果。domainB.comdomainA.com

我建议创建两个 DNSA记录,每个域一个,指向同一个 IP 地址。然后在您的 apache 配置中,执行以下操作:

<VirtualHost *:80>
    ServerName domainA.com
    ServerAlias domainB.com

    DocumentRoot /path/to/root
    ...
</VirtualHost>

我可以在每个区域简单地创建一个指向 xxx.xxx.xxx.xxx:80 的 A 记录吗?

不,DNS 记录与 TCP/UDP 端口无关。您的应用程序(在本例中为 Web 浏览器)需要处理此问题。

答案2

您可以在每个域上使用指向相同 IP 的 A 记录,而不会出现问题,但我更喜欢在 domainb.hosts 中创建指向 domainA.com 服务器名称(而不是 IP)的 CNAME 记录。A nslookupto domainB.com 将返回 IP 和规范名称 domainA.com 服务器名称。

Web 服务器必须处理这两个名称。如果是 Apache,则可以ServerName www.domainA.com使用ServerAlias www.domainB.com

答案3

我不是 DNS 专家,但我认为您可以创建一个 cname 到域 B 并指定给域 A,并配置您的 http 服务器,以响应同一网站中的域 A 和 B。

相关内容