根据我目前的理解,我可以使用 CNAME 记录将用户重定向到另一个域。例如,我拥有“mydomain.com”。当用户访问“keep.mydomain.com”时,他们应该被重定向到“keep.google.com”。
我的 DNS 记录集中当前有以下记录:名称:keep.mydomain.com 类型:CNAME 值:https://keep.google.com/ TTL:300毫秒
该子域名下没有其他记录,但是其他域名/子域名下有 MX、A、NS、SOA、TXT 和其他 CNAME 记录,这些记录可以正常工作。但是,当我访问“keep.mydomain.com”时,出现错误:
This site can’t be reached
keep.mydomain.ca’s server DNS address could not be found.
ERR_NAME_NOT_RESOLVED
我是否误解了 CNAME 的使用,或者我配置了某些有冲突的东西?
答案1
CNAMES 不是重定向,而是别名。CNAME 还包括所有其他资源记录,例如 A、MX、TXT。
因此如果您查询 A 记录,cname 将把您发送到其别名的 A 记录。
许多注册商提供附加选项,例如重定向服务、godaddy 和 Google。
另外,输入 CNAMES 的值时要小心,有些系统假设终止期限,有些则不然。
假设域名为 example.com
test IN CNAME example.org
测试结果解析为不存在的主机 example.org.example.com 的 IP。
test IN CNAME example.org.
测试结果解析为确实存在的主机 example.org 的 IP。
CNAME 值只能是 HOSTS,而不能是 URL。
dig A keep.richardyang.ca @8.8.8.8
keep.richardyang.ca. 299 IN CNAME https://keep.google.com/.
将其更改为
keep.richardyang.ca. 299 IN CNAME keep.google.com.
也许可以看看https://stackoverflow.com/questions/10115799/set-up-dns-based-url-forwarding-in-amazon-route53
有关如何将合成记录与 Google.com 域结合使用的示例。
;; ANSWER SECTION:
keep.jacobdevans.com. 3600 IN CNAME ghs.googlehosted.com.
ghs.googlehosted.com. 163 IN A 173.194.207.121
这会将我的请求发送到谷歌的服务器,然后谷歌向新的网址发送一个 302 代码,我选择了 302,如果你想让 SEO 知道这是一个永久性的改变,你会想要 301,我可能想在以后切换我的目的地,因为我使用它作为我的签名链接以确保我的联系信息保持最新。
或者,由于您已经有了一个网站,请将域名指向那里并重定向该网站。
脚本:
<script type="text/javascript">
if (window.location.href== "http://keep.richardyang.ca") {
window.location.href = 'http://keep.google.com';
}
</script>
DNS:
keep.richardyang.ca. 299 IN CNAME richardyang.ca.