Как проверить возраст домена с помощью php - PullRequest
6 голосов
/ 12 декабря 2011

Здравствуйте, мне было интересно, есть ли хороший способ узнать, каков возраст определенного домена.

Но я хочу найти способ сделать это программно, прося DNS проверить возраст домена, используя php, а не из онлайн-инструмента.

Я ищу в Интернете, как Google проверяет возраст моего домена и другие инструменты SEO.

Является ли эта информация конфиденциальной для домена, для которого у вас должны быть особые права, чтобы узнать возраст домена? И если да? Почему Google знает возраст моего домена? никто не спросил мой возраст доменов .. как они узнали это?

Ответы [ 5 ]

4 голосов
/ 12 декабря 2011

Вам нужна услуга Whois .

PHPWhois : PHP-класс для whois-запросов может запрашивать правильный whois-сервер для доменных имен, IP-адресов и AS обрабатывает и возвращает данные в структурированном массиве.

3 голосов
/ 12 декабря 2011

Вы хотите WHOIS , последнее определение в RFC3912 :

$ whois stackoverflow.com

Whois Server Version 2.0

Domain names in the .com and .net domains can now be registered
with many different competing registrars. Go to http://www.internic.net
for detailed information.

   Domain Name: STACKOVERFLOW.COM
   Registrar: GODADDY.COM, INC.
   Whois Server: whois.godaddy.com
   Referral URL: http://registrar.godaddy.com
   Name Server: NS1.SERVERFAULT.COM
   Name Server: NS2.SERVERFAULT.COM
   Name Server: NS3.SERVERFAULT.COM
   Status: clientDeleteProhibited
   Status: clientRenewProhibited
   Status: clientTransferProhibited
   Status: clientUpdateProhibited
   Updated Date: 30-nov-2010
   Creation Date: 26-dec-2003
   Expiration Date: 26-dec-2014

   [...]
2 голосов
/ 23 января 2012

Вы ищете PHP-скрипт или веб-сервис?

Если вы пользуетесь веб-службой, то воспользуйтесь этим средством проверки возраста домена , которое позволит вам узнать дату регистрации домена, дату истечения срока действия и имя регистратора.Вы можете одновременно проверить 500 доменов.

Надеюсь, что эта помощь

1 голос
/ 10 марта 2016

Используйте этот PHP-скрипт для проверки возраста домена, и здесь вы можете найти работающую проверку возраста домена

class DomainAge{

  private $WHOIS_SERVERS=array(

  "com"=>array("whois.verisign-grs.com","/Creation Date:(.*)/"),

  "net"=>array("whois.verisign-grs.com","/Creation Date:(.*)/"),

  "org"=>array("whois.pir.org","/Created On:(.*)/"),

  "info"=>array("whois.afilias.info","/Created On:(.*)/"),

  "biz"=>array("whois.neulevel.biz","/Domain Registration Date:(.*)/"),

  "us"=>array("whois.nic.us","/Domain Registration Date:(.*)/"),

  "uk"=>array("whois.nic.uk","/Registered on:(.*)/"),

  "ca"=>array("whois.cira.ca","/Creation date:(.*)/"),

  "tel"=>array("whois.nic.tel","/Domain Registration Date:(.*)/"),

  "ie"=>array("whois.iedr.ie","/registration:(.*)/"),

  "it"=>array("whois.nic.it","/Created:(.*)/"),

  "cc"=>array("whois.nic.cc","/Creation Date:(.*)/"),

  "ws"=>array("whois.nic.ws","/Domain Created:(.*)/"),

  "sc"=>array("whois2.afilias-grs.net","/Created On:(.*)/"),

  "mobi"=>array("whois.dotmobiregistry.net","/Created On:(.*)/"),

  "pro"=>array("whois.registrypro.pro","/Created On:(.*)/"),

  "edu"=>array("whois.educause.net","/Domain record activated:(.*)/"),

  "tv"=>array("whois.nic.tv","/Creation Date:(.*)/"),

  "travel"=>array("whois.nic.travel","/Domain Registration Date:(.*)/"),

  "in"=>array("whois.inregistry.net","/Created On:(.*)/"),

  "me"=>array("whois.nic.me","/Domain Create Date:(.*)/"),

  "cn"=>array("whois.cnnic.cn","/Registration Date:(.*)/"),

  "asia"=>array("whois.nic.asia","/Domain Create Date:(.*)/"),

  "ro"=>array("whois.rotld.ro","/Registered On:(.*)/"),

  "aero"=> array("whois.aero","/Created On:(.*)/"),

  "nu"=> array("whois.nic.nu","/created:(.*)/")
  );

  public function age($domain)
  {

  $domain = trim($domain);

  if(substr(strtolower($domain), 0, 7) == "http://") 

  $domain = substr($domain, 7); // remove http:// if included

  if(substr(strtolower($domain), 0, 4) == "www.") 

   $domain = substr($domain, 4);//remove www from domain

  if(preg_match("/^([-a-z0-9]{2,100}).([a-z.]{2,8})$/i",$domain))
  {

  $domain_parts = explode(".", $domain);

  $tld = strtolower(array_pop($domain_parts));

  if(!$server=$this->WHOIS_SERVERS[$tld][0]) {

  return false;

  }

  $res=$this->queryWhois($server,$domain);

  if(preg_match($this->WHOIS_SERVERS[$tld][1],$res,$match))

  {

  date_default_timezone_set('UTC');

  $time = time() - strtotime($match[1]);

  $years = floor($time / 31556926);

  $days = floor(($time % 31556926) / 86400);

  if($years == "1") {$y= "1 year";

}
  else 

{
$y = $years . " years";
}
  if($days == "1") {$d = "1 day";
}
  else 
{
$d = $days . " days";
}
  return "$y, $d";

 }
  else

  return false;
}
  else

  return false;

}

  private function queryWhois($server,$domain)

  {

  $fp = @fsockopen($server, 43, $errno, $errstr, 20) or die("Socket Error " 
  . $errno . " - " . $errstr);

if($server=="whois.verisign-grs.com")

$domain="=".$domain;

  fputs($fp, $domain . "rn");
  $out = "";

  while(!feof($fp)){

  $out .= fgets($fp);

  }
  fclose($fp);

  return $out;
  }

}
1 голос
/ 12 декабря 2011

Дата регистрации доступна через WHOIS для большинства доменов верхнего уровня и отсутствует в DNS.

Для доменов com / net вы можете проверить whois.internic.net на «Дата создания». Для большинства ДВУ стран вы можете найти серверы WHOIS, выполнив DNS-запрос « код страны .whois-servers.net». WHOIS-клиент командной строки в большинстве вариантов BSD и Linux будет автоматически искать нужные WHOIS-серверы.

Обратите внимание, что у каждого регистратора есть свой собственный формат представления этой информации, и большинство из них внедрили средства управления на своих серверах WHOIS для ограничения частых запросов с одного и того же IP-адреса.

Посмотрите на PHPWhois .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...