我正在尝试验证给定域是否存在 MX 记录,但没有任何效果。// prepare the hostname$hostname = 'gmail.com';$hostname = idn_to_ascii($hostname);//php.net/manual/function.checkdnsrr.php#113537$hostname = sprintf('%s.', $hostname);//php.net/manual/function.checkdnsrr.php#119969// perform the checksdns_get_mx($hostname, $dns_get_mx); // a.k.a. getmxrr()$dns_get_record = dns_get_record($hostname, DNS_MX);$checkdnsrr = checkdnsrr($hostname, 'MX');// output the resultvar_dump(array( 'hostname' => $hostname, 'dns_get_mx' => $dns_get_mx, 'dns_get_record' => $dns_get_record, 'checkdnsrr' => $checkdnsrr,));以下是我得到的内容(对于 gmail.com 和 分别尝试):gmail.comWarning: dns_get_record(): A temporary server error occurred. in /var/www/html/example.phparray (size=4) 'hostname' => string 'gmail.com.' (length=10) 'dns_get_mx' => array (size=0) empty 'dns_get_record' => boolean false 'checkdnsrr' => boolean false如果我用 替换,dns_get_record() 返回一个正确的 IP 地址,而检查数r() 返回 。MXAtrue日志中没有任何内容(除了上面的警告),谷歌搜索也无济于事。如何对此进行调试?断续器此问题出现在我的本地虚拟盒环境(PHP 5.6.39)中;一切实际上都在生产服务器上工作(PHP 7.3.11)
- 1 回答
- 0 关注
- 187 浏览
添加回答
举报
0/150
提交
取消