在托管两个站点的 VPS 上,为什么一个站点的 CNAME 解析到另一个站点的网站?

在托管两个站点的 VPS 上,为什么一个站点的 CNAME 解析到另一个站点的网站?

我有一个服务器设置,其中虚拟托管了两个网站。当然,它们共享同一个 IP 地址,并且服务器运行 Plesk 来管理网站。

DNS 设置为 @ A 指向 IP 地址 119.82.29.130。www CNAME 设置为指向 nagoyatax.com。这是网站一。当您访问 nagoyatax.com 或 www.nagoyatax.com 时,此域名的网站会正确显示。

网站2:

DNS 设置为 @ A 指向 IP 地址 119.82.29.130。www CNAME 设置为指向 tourismbuilder.com。现在奇怪的地方来了。tourismbuilder.com 正确指向 tourismbuilder.com 网站。但是,www.tourismbuilder.com 指向显示 natoyatax.com 网站。

为什么会发生这种情况?我该如何解决?我不是 DNS 专家,所以如果您需要更多信息,请告诉我。谢谢!

答案1

我怀疑您没有在 vhost 定义中ServerAlias进行设置。www.tourismbuilder.comtourismbuilder.com

<VirtualHost *:80>

    ...
    ServerName tourismbuilder.com
    ServerAlias www.tourismbuilder.com

    ...

您看到这个的原因nagoyatax.com是它是第一个定义的 vhost,然后是默认 vhost。


来自评论。Plesk 有一个www复选框,如果选中,将创建一个合适的 ServerAlias。

答案2

您的 DNS 似乎设置正确:

;; QUESTION SECTION:
;www.tourismbuilder.com.        IN  ANY

;; ANSWER SECTION:
www.tourismbuilder.com. 14400   IN  CNAME   tourismbuilder.com.

;; ADDITIONAL SECTION:
tourismbuilder.com. 14400   IN  A   119.82.29.130

如果您运行 Apache 作为您的 Web 服务器,我会说问题出在 Web 服务器的配置上。

第一个站点在两个名称上都可以运行的原因很可能是因为它是第一个虚拟主机,如果没有匹配项,Apache 就会默认使用它。

尝试打开 tourismbuiler.com 的 vhost 配置并添加此行

ServerAlias www.tourismbuilder.com

就在“ServerName”行的正下方。

答案3

如果您无法手动编辑 DNS 区域(并更改 tourismbuilder.com 的 www CNAME 记录),那么您需要向您的托管服务提供商提交工单。

我怀疑在创建网站或帐户时使用了脚本来生成区域文件;也许是输入错误或存在某种解析错误。

相关内容