我正在寻找一个快速wat测试一个域名是否正在使用,因此有一个网站附加到它。我有一个庞大的域名列表,需要检查哪些有一个网站附加或不。
如果我知道有一个网站附加到它,那么我不需要做任何耗费时间的查找,等等。
我最初的想法是检查HTTP头代码,看看头代码是否返回200、301、302.如果是其他的东西,有很大的机会,没有网站附加或域名是可用的。我使用的代码狙击手是:
$headers = @get_headers( $url);
$headers = (is_array($headers)) ? implode( "\n ", $headers) : $headers;
return (bool)preg_match('#^HTTP/.*\s+[(200|301|302)]+\s#i', $headers);然而,这一过程相当缓慢。
接下来,我尝试使用PHP函数checkdnsrr来检查DNS记录是否存在。我正在使用下面的代码片段。
if (checkdnsrr($domain . ".", "A") == false) {
echo "Domain might be available";
} else {
echo "Domain is in use";
}不幸的是,它给了我许多“虚假”的信息,说域名可能是可用的。下面的代码片段也是如此:
if (gethostbyname($domain) != $domain) {
echo "DNS Record found";
} else {
echo "NO DNS Record found";
}但是,对于所有新的TLD (.frl、.xyz等),WHOIS查找也是一种可能。这可能是一项艰巨的任务。
我的另一个想法是点击域名,如果我得到回应,我知道域名是“在使用”。不确定这是否是最好的方法,我问你,是否有一个快速但更可靠的方式来检查域名是否在使用(或注册)?
发布于 2016-04-24 20:02:43
您可以尝试解析"http://whois.domaintools.com/“。$domain
并查找关键字“域可用”。
https://stackoverflow.com/questions/36828186
复制相似问题