【发布时间】:2021-09-21 19:03:29
【问题描述】:
我需要检查我的用户是否正确添加了 CNAME 记录,但使用此代码我得到空数组
<?php
$domain="martinashop.club";
if(checkdnsrr($domain,"CNAME")) {
echo "Passed";
} else {
echo "Failed";
}
echo "<br>";
print_r(dns_get_record($domain,DNS_CNAME));
echo "<br>";
print_r(dns_check_record($domain,"CNAME"));
?>
我不明白为什么不获取记录 我使用 Clouflare 的域可能会出错?
谢谢
【问题讨论】:
-
我没有看到该域的任何 CNAME 记录,因此是空数组。如果您使用 DNS_ANY,您将获得它的 A 记录。
-
嗨,我有 CNAME 用于子域 start.martinashop.club 和 A 用于主域 (@) 到我的服务器 IP,但我需要知道 start.martinashop.club 是否指向我的目的地我认为我可以从主域恢复我也尝试过 $domain="start.martinashop.club"; ma 数组始终为空
-
我在使用 start.martinashop.club 时得到了正确的响应,这是一个具有单个响应的数组。如果您没有收到,则说明您的本地 DNS 没有更新,或者它被阻止了。
-
使用子域工作,但前提是没有来自 cloudflare 的代理
-
如果它们被代理,则不会,因为流量将首先通过 Cloudflare。 CNAME 变得对外界不可见。这适用于 Cloudflare 中的任何代理 DNS 记录。
标签: php dns record cloudflare