CNAME 已设置,但被忽略。如何清除错误的 DNS A 记录?

CNAME 已设置,但被忽略。如何清除错误的 DNS A 记录?

我已经blog.example.net用 Dreamhost 配置了一个子域名,如下所示

blog    CNAME   mygreatblog.ghost.io

意思是通过 CNAME 记录blog.example.net指向。mygreatblog.ghost.io

我可以在这里确认 CNAME 的设置是否正确:

https://www.whatsmydns.net/#CNAME/blog.example.net

然而,当我真正访问时,blog.example.net我最终还是会进入一个不同的网站 - 一个我也在 的不同子域下托管的 gitlab 实例example.net

我甚至可以确认存储了错误的 A 记录,该记录指向我不认识的 IP(它似乎是某个 cloudflare 网络 IP):

https://www.whatsmydns.net/#A/blog.example.net

现在这是我尝试过的:

  • 在隐身窗口中打开 blog.example.net
  • 在 dreamhost 上刷新 DNS,该域名在名称服务器上注册
  • 等待12小时
  • 刷新 Google 和 OpenDNS 的 DNS 缓存

我想做的是:清除 cloudflare 的缓存。但是,我甚至没有 cloudflare 帐户(至少我不知道有)。我的 gitlab 实例以某种方式使用了 cloudflare,但我找不到有关它的任何文档。

我的问题是:

这是一个 DNS 缓存问题吗?

如果是,为什么 DNS 刷新没有效果?

如果这是不是DNS 缓存问题,还能是什么?

答案1

即使不知道实际的域名,根本原因也是清楚的。CNAME记录不是 HTTP重定向也不是 HTTP反向代理。 服务器mygreatblog.example.com不知道主机名blog.example.net(由 Web 浏览器在 HTTPHost:标头中发送),也不知道应该显示哪个站点。因此,您将获得配置为默认虚拟主机的任何内容。

可能的解决方案:

  • 联系服务提供商并询问是否可以为虚拟主机添加别名。
  • 使用您自己的服务器执行 HTTP重定向(URL 发生变化)。
  • 使用您自己的服务器作为 HTTP反向代理

相关内容