CNAME 不充当 Cloudflare 上的别名

CNAME 不充当 Cloudflare 上的别名

我想显示相同的内容:example.com如果有人访问example.net

我研究过,似乎只需设置一个example.net指向的CNAME 记录就可以了example.com

我确实这样做了,这就是我的设置现在的样子:

在此处输入图片描述

但是我遇到的问题是,当我访问时,example.net我看到的是托管服务器的默认 Nginx 页面example.com

这是为什么?我是否也需要在服务器端进行设置,以指向同一个域?这让我很困惑,那么 CNAME 的原因是什么?我也可以使用 A 记录。

我在这里遗漏了什么?

答案1

CNAME 仅适用于同一个域,对于跨域重定向,您需要一个 Web 服务器来执行实际的重定向。

答案2

当浏览器请求时,Web 服务器未配置为提供该网站的服务example.net:地址栏上的主机名通过 HTTP 标头发送到服务器。这不会发生在 DNS 级别,因此无论是直接指向服务器还是-to-都Host: example.net无关紧要。ACNAMEA

如果你确实希望服务器显示相同的网站,你应该配置你的网络服务器的基于名称的虚拟主机将另一个域作为别名。我们不知道您使用的是什么服务器软件,但 Apache 有ServerAlias,Nginx 可以有多个主机名server_name并且 IIS 有绑定。此外,网站上的每个链接和资源都应使用相对路径,或者用户最终会浏览example.com。这可能很难,因为例如 WordPress 总是使用绝对路径,而使用相对路径并在多个域上提供同一个网站可能会对 SEO 不利

更好的选择是使用 HTTP 重定向。这可以在同一台服务器上完成,也可以在example.net A指向的任何服务器上完成。服务器example.net告诉浏览器转到example.com,地址栏上的 URL 会发生变化。同样,配置取决于服务器软件:Apache 有Redirect,Nginxreturn以及 IIS 的httpRedirect可以在 GUI 中配置。

相关内容