当我将dns_get_record用于像google.com这样存在的域时,一切都很好,但是如果在不存在的域上使用它,则函数从域上的子域(例如test.example.com )获取信息,如何防止这种情况发生?
// Test with working domain
var_dump( dns_get_record('google.com', DNS_A) );
/* works, returns
Array
(
[host] => google.com
[class] => IN
[ttl] => 299
[type] => A
[ip] => 172.217.12.142
)
*/
// Test with invalid domain on our website (example.com)
var_dump( dns_get_record('invalidtestingname.com', DNS_A) );
/* Doesn't work, pretend it's a subdomain
Array
(
[host] => invalidtestingname.com.example.com
[class] => IN
[ttl] => 299
[type] => A
[ip] => xxx.xxx.xxx.xxx
)
*/发布于 2017-06-27 18:40:13
如果有人有这个问题,例如,在域名的末尾添加一个“点”,而不是
dns_get_record('invalidtestingname.com', DNS_A);这样做:
dns_get_record('invalidtestingname.com.', DNS_A);然后PHP将不会尝试检查您自己域的子域,并且它将正确地搜索。不知道为什么以前没有人有这个问题,在php.net上甚至没有任何关于这个问题的评论
https://stackoverflow.com/questions/44494878
复制相似问题