久久久久精品国产,丰满少妇粗大猛烈进高清播放,久久久97,在线18禁

<wbr id="x3zex"><nav id="x3zex"><em id="x3zex"></em></nav></wbr>

        <s id="x3zex"></s>
        1. <ruby id="x3zex"><nav id="x3zex"><acronym id="x3zex"></acronym></nav></ruby>
          <font id="x3zex"><noscript id="x3zex"></noscript></font>
          0712-2888027 189-8648-0214
          微信公眾號(hào)

          孝感風(fēng)信網(wǎng)絡(luò)科技有限公司微信公眾號(hào)

          當(dāng)前位置:主頁(yè) > 技術(shù)支持 > PHP > 用php實(shí)現(xiàn)域名whois信息查詢

          用php實(shí)現(xiàn)域名whois信息查詢

          時(shí)間:2016-01-28來(lái)源:風(fēng)信官網(wǎng) 點(diǎn)擊: 1610次
          網(wǎng)上有很多種 whois查詢 的php實(shí)現(xiàn),大致實(shí)現(xiàn)的思路無(wú)不例外以下幾種:

          1.通過(guò)http調(diào)用 xinnet或者是萬(wàn)網(wǎng)的 whois查詢接口查詢,而后將結(jié)果輸出到頁(yè)面,這種最簡(jiǎn)單的,通過(guò)間接調(diào)用新網(wǎng) whois查詢接口的實(shí)現(xiàn)方法

          php whois查詢API制作

          網(wǎng)站們經(jīng)常需要查詢網(wǎng)站whois信息,這里介紹一個(gè)使用php制作的whois api接口,方法也很簡(jiǎn)單,下面詳細(xì)介紹一下。

          這里我們從萬(wàn)網(wǎng)或新網(wǎng)的數(shù)據(jù)接口取得數(shù)據(jù),透過(guò)php的簡(jiǎn)單文本處理再輸出。

          <?php  
          $domain = $_GET['q'];
           
          preg_match("/<div class=\"lyTableInfoWrap\">(.*)<\/div>\r\n      <\/div><!-- #BeginLibraryItem/is", @file_get_contents('http://www.xinnet.cn/Modules/agent/serv/pages/domain_whois.jsp?domainNameWhois='.$domain.'&noCode=noCode'), $whois);
           
          echo trim($whois[1]);
          ?>
          做到這里,可能有的朋友要問(wèn)了,這不就是簡(jiǎn)單的php腳本么?!哪是api接口阿;接著我們來(lái)加工一下,讓查詢方式更專業(yè)一些:
          我們需要的查詢格式如下:

          http://api/whois/baidu.com

          其中baidu.com是需要查詢的域名

          可以修改nginx的配置來(lái)實(shí)現(xiàn)這一點(diǎn):

          location ~* /whois/(.+)$ {  
              proxy_pass http://127.0.0.1:8080/whois/index.php?q=baidu.com
          }

          2.直接通過(guò)讀取 whois服務(wù)器,實(shí)現(xiàn)域名的查詢。

          PHP版域名whois信息(過(guò)期時(shí)間)查詢工具

          很多whois服務(wù)器已經(jīng)停止工作了;

          很多whois協(xié)議格式是不一樣的;

          因?yàn)橐獙?xiě)域名過(guò)期自動(dòng)提醒工具,重新更新了代碼在附件里,含提取過(guò)期時(shí)間的正則。目前支持22種后綴的域名。

          =============================

          修改自網(wǎng)上流傳的版本,并作了修正:

          增加了兩百多種域名的支持;

          修正了過(guò)期時(shí)間解析錯(cuò)誤的BUG,改進(jìn)了效率;

          預(yù)期推出域名過(guò)期自動(dòng)提醒服務(wù)。不過(guò)也要看心情和動(dòng)力的。

          PHP代碼如下:
          <?php   
          if(!isset($_GET['domain'])){   
              echo "1.您未指定要查詢的域名!<br />";   
              echo "2.接口使用方法:/whois.php?domain=<FONT color=#ff0000>域名</FONT><br />";   
              echo "3.<FONT color=#ff0000>域名</FONT>請(qǐng)勿加<FONT color=#ff0000>www.</FONT><br />";   
              exit;   
          }   
          $domain  = $_GET['domain'];   
          class SearchDomain   
          {   
              private $arr_whois_servers = array(   
                  'com'=>'whois.internic.net',   
                  'net'=>'whois.internic.net',   
                  'org'=>'whois.pir.org',   
                  'asia'=>'whois.crsnic.net',   
                  'ac'=>'whois.nic.uk',   
                  'ad'=>'whois.nic.ad',   
                  'ae'=>'whois.uaenic.ae',   
                  'ag'=>'whois.nic.ag',   
                  'ai'=>'whois.offshore.com.ai',   
                  'al'=>'whois.inima.al',   
                  'an'=>'whois.una.net',   
                  'ao'=>'whois.fccn.pt',   
                  'aq'=>'whois.nsrc.org',   
                  'ar'=>'whois.nic.ar',   
                  'as'=>'whois.nic.as',   
                  'am'=>'whois.amnic.net',   
                  'au'=>'whois.amnic.net',   
                  'at'=>'whois.amnic.net',   
                  'az'=>'whois.domain.az',   
                  'ba'=>'whois.utic.net.ba',   
                  'bb'=>'whois.domains.org.bb',   
                  'be'=>'whois.dns.be',   
                  'bf'=>'whois.onatel.bf',   
                  'bg'=>'whois.digsys.bg',   
                  'bh'=>'whois.batelco.com.bh',   
                  'bi'=>'whois.nic.bi',   
                  'biz'=>'whois.nic.biz',   
                  'bm'=>'whois.bermudanic.bm',   
                  'bn'=>'whois.brunet.bn',   
                  'bo'=>'whois.digsys.bo',   
                  'by'=>'whois.unibel.by',   
                  'bz'=>'whois.belizenic.bz',   
                  'br'=>'whois.registro.fapesp.br',   
                  'bt'=>'whois.nic.bt',   
                  'bv'=>'whois.norid.no',   
                  'ca'=>'whois.cira.ca',   
                  'cc'=>'whois.nic.cc',   
                  'cd'=>'whois.nic.cd',   
                  'cf'=>'whois.socatel.intnet.cf',   
                  'cg'=>'whois.nic.cg',   
                  'ch'=>'whois.nic.ch',   
                  'ci'=>'whois.aipdi.ci',   
                  'ck'=>'whois.oyster.net.ck',   
                  'cl'=>'whois.nic.cl',   
                  'cm'=>'whois.info.intelcam.cm',   
                  'cn'=>'whois.cnnic.net.cn',   
                  'co'=>'whois.nic.uniandes.edu.co',   
                  'coop'=>'whois.nic.coop',   
                  'cu'=>'whois.nic.cu',   
                  'cx'=>'whois.nic.cx',   
                  'cy'=>'whois.nic.cy',   
                  'cz'=>'whois.nic.cz',   
                  'de'=>'whois.denic.de',   
                  'dk'=>'whois.dk-hostmaster.dk',   
                  'dj'=>'whois.intnet.dj',   
                  'do'=>'whois.nic.do',   
                  'dz'=>'whois.nic.dz',   
                  'ec'=>'whois.nic.ec',   
                  'edu'=>'whois.educause.net',   
                  'ee'=>'whois.eenet.ee',   
                  'eg'=>'whois.frcu.eun.eg',   
                  'es'=>'whois.nic.es',   
                  'et'=>'whois.telecom.net.et',   
                  'fi'=>'whois.ripe.net',   
                  'fj'=>'whois.usp.ac.fj',   
                  'fk'=>'whois.fidc.org.fk',   
                  'fm'=>'whois.dot.fm',   
                  'fo'=>'whois.nic.fo',   
                  'fr'=>'whois.nic.fr',   
                  'gb'=>'whois.nic.uk',   
                  'ge'=>'whois.nic.net.ge',   
                  'gf'=>'whois.nplus.gf',   
                  'gg'=>'whois.nic.gg',   
                  'gh'=>'whois.ghana.com',   
                  'gi'=>'whois.gibnet.gi',   
                  'gl'=>'whois.nic.gl',   
                  'gm'=>'whois.nic.gm',   
                  'gn'=>'whois.psg.com',   
                  'gov'=>'whois.nic.gov',   
                  'gp'=>'whois.nic.gp',   
                  'gq'=>'whois.getesa.gq',   
                  'gr'=>'whois.hostmaster.gr',   
                  'gs'=>'whois.adamsnames.tc',   
                  'gt'=>'whois.uvg.edu.gt',   
                  'gu'=>'whois.gadao.gov.gu',   
                  'hk'=>'whois.hkdnr.net.hk',   
                  'hm'=>'whois.registry.hm',   
                  'hn'=>'whois.nic.hn',   
                  'hr'=>'whois.carnet.hr',   
                  'hu'=>'whois.nic.hu',   
                  'id'=>'whois.idnet.net.id',   
                  'ie'=>'whois.domainregistry.ie',   
                  'il'=>'whois.isoc.org.il',   
                  'im'=>'whois.nic.im',   
                  'in'=>'whois.domain.ncst.ernet.in',   
                  'info'=>'whois.afilias.com',   
                  'int'=>'whois.iana.org',   
                  'io'=>'whois.nic.io',   
                  'ir'=>'whois.nic.ir',   
                  'is'=>'whois.isnic.is',   
                  'it'=>'whois.nic.it',   
                  'je'=>'whois.isles.net',   
                  'jo'=>'whois.nic.net.jo',   
                  'jp'=>'whois.nic.ad.jp',   
                  'ke'=>'whois.nbnet.co.ke',   
                  'kg'=>'whois.domain.kg',   
                  'kh'=>'whois.mptc.gov.kh',   
                  'kn'=>'whois.clu.edu',   
                  'kr'=>'whois.nic.or.kr',   
                  'kw'=>'whois.domainname.net.kw',   
                  'kz'=>'whois.domain.kz',   
                  'lb'=>'whois.aub.edu.lb',   
                  'lc'=>'whois.isisworld.lc',   
                  'li'=>'whois.nic.li',   
                  'lk'=>'whois.nic.lk',   
                  'lr'=>'whois.psg.com',   
                  'ls'=>'whois.co.ls',   
                  'lt'=>'whois.domreg.lt',   
                  'lu'=>'whois.dns.lu',   
                  'lv'=>'whois.nic.lv',   
                  'ly'=>'whois.nic.ly',   
                  'ma'=>'whois.iam.ma',   
                  'mc'=>'whois.nic.mc',   
                  'md'=>'whois.ripe.net',   
                  'mil'=>'whois.nic.mil',   
                  'mg'=>'whois.orstom.mg',   
                  'mh'=>'whois.nic.net.mh',   
                  'mk'=>'whois.mpt.com.mk',   
                  'mm'=>'whois.nic.mm',   
                  'mn'=>'whois.nic.mn',   
                  'mo'=>'whois.umac.mo',   
                  'mp'=>'whois.marketplace.mp',   
                  'mq'=>'whois.nic.mq',   
                  'mr'=>'whois.univ-mkc.mr',   
                  'ms'=>'whois.adamsnames.tc',   
                  'mt'=>'whois.um.edu.mt',   
                  'mu'=>'whois.posix.co.za',   
                  'mw'=>'whois.tarsus.net',   
                  'mx'=>'whois.nic.mx',   
                  'my'=>'whois.mynic.net.my',   
                  'mz'=>'whois.nambu.uem.mz',   
                  'na'=>'na-nic.com.na',   
                  'name'=>'whois.nic.name',   
                  'nc'=>'whois.norstom.nc',   
                  'nf'=>'whois.names.nf',   
                  'ni'=>'whois.nic.ni',   
                  'nl'=>'whois.domain-registry.nl',   
                  'no'=>'whois.norid.no',   
                  'np'=>'whois.mos.com.np',   
                  'nu'=>'whois.nic.nu',   
                  'nz'=>'whois.domainz.net.nz',   
                  'om'=>'whois.gto.net.om',   
                  'pa'=>'whois.nic.pa',   
                  'pe'=>'whois.ekeko.rcp.net.pe',   
                  'ph'=>'whois.domreg.org.ph',   
                  'pg'=>'whois.unitech.ac.pg',   
                  'pk'=>'whois.pknic.net.pk',   
                  'pl'=>'whois.nask.pl',   
                  'pm'=>'whois.nic.pm',   
                  'pn'=>'whois.nic.pn',   
                  'pr'=>'whois.uprr.pr',   
                  'ps'=>'whois.nic.ps',   
                  'pt'=>'whois.fccn.pt',   
                  'py'=>'whois.nic.py',   
                  'qa'=>'whois.qatar.net.qa',   
                  're'=>'whois.nic.fr',   
                  'ro'=>'whois.rnc.ro',   
                  'ru'=>'whois.ripn.net',   
                  'rw'=>'whois.nic.rw',   
                  'sa'=>'whois.saudinic.net.sa',   
                  'sb'=>'whois.sbnic.net.sb',   
                  'sd'=>'whois.sudatel.sd',   
                  'se'=>'whois.nic-se.se',   
                  'sg'=>'whois.nic.net.sg',   
                  'sh'=>'whois.nic.sh',   
                  'si'=>'whois.arnes.si',   
                  'sj'=>'whois.norid.no',   
                  'sk'=>'whois.sk-nic.sk',   
                  'sm'=>'whois.intelcom.sm',   
                  'sn'=>'whois.nic.sn',   
                  'so'=>'whois.nic.so',   
                  'st'=>'whois.st-registry.tecnisys.net',   
                  'su'=>'whois.ripn.net',   
                  'sv'=>'whois.svnet.org.sv',   
                  'sz'=>'whois.iafrica.sz',   
                  'tc'=>'whois.adamsnames.tc',   
                  'td'=>'whois.tit.td',   
                  'tf'=>'whois.adamsnames.tc',   
                  'tg'=>'whois.nic.tg',   
                  'th'=>'whois.thnic.net',   
                  'tj'=>'whois.nic.tj',   
                  'tm'=>'whois.nic.tm',   
                  'tn'=>'whois.ati.tn',   
                  'to'=>'whois.tonic.to',   
                  'tp'=>'whois.nic.tp',   
                  'tr'=>'whois.metu.edu.tr',   
                  'tt'=>'whois.nic.tt',   
                  'tw'=>'whois.twnic.net',   
                  'tz'=>'whois.psg.com',   
                  'tv'=>'whois.networksolutions.com',   
                  'ua'=>'nic.net.ua',   
                  'ug'=>'whois.nic.ug',   
                  'uk'=>'whois.nic.uk',   
                  'uk'=>'whois.ripe.net',   
                  'um'=>'whois.isi.edu',   
                  'us'=>'whois.nic.us',   
                  'uy'=>'whois.rau.edu.uy',   
                  'uz'=>'whois.freenet.uz',   
                  've'=>'whois.nic.ve',   
                  'wf'=>'whois.nic.fr',   
                  'vg'=>'whois.adamsnames.tc',   
                  'vi'=>'whois.nic.vi',   
                  'vn'=>'whois.batin.com.vn',   
                  'vu'=>'whois.vunic.vu',   
                  'ws'=>'samoanic.ws',   
                  'yt'=>'whois.nic.fr',   
                  'yu'=>'whois.nic.yu',   
                  'za'=>'whois.co.za',   
                  'zm'=>'whois.zamnet.zm',   
           
              );   
              public $domain="";   
              function SetDomain($udomain)   
              {   
                  $this->domain = $udomain;   
              }   
           
              function GetInfo()   
              {   
                  $wl = "";   
                  $w_server = $this->GetServer();   
                  if($w_server=="") return "";   
                      $fp = fsockopen($w_server, 43, $errno, $errstr, 30);   
                  if(!$fp) {   
                      echo $errstr;   
                      return "";   
                  }   
                  $out = $this->domain."";   
                  fputs($fp, $out);   
                  while (!feof($fp))   
                  {   
                      $wl = fgets($fp, 255);   
                      if(preg_match("/no match/",$wl))   
                      {   
                          fclose($fp);   
                          return "ok";   
                      }   
                      if(preg_match("/Expiration Date/",$wl))   
                      {   
                          $lines = explode(":",$wl);   
                          $t = trim($lines[1]);   
                          $ts = explode(" ",$t);   
                          $t = $ts[0];   
                          if(preg_match("/[^0-9-]/",$t))   
                          {   
                      return date("Y-m-d",strtotime($t));   
                          }   
                          fclose($fp);   
                  return '';   
                      }   
                  }   
                  fclose($fp);   
                  return "";   
              }   
              //   
              //獲得域名的整個(gè)whois信息   
              //   
              function GetWhois()   
              {   
                  $wh = "";   
                  $w_server = $this->GetServer();   
                  if($w_server=="") return "";   
                  $fp = fsockopen($w_server, 43, $errno, $errstr, 30);   
                  if(!$fp)   
                  {   
                      echo $errstr;   
                      return "";   
                  }   
                  $out = $this->domain."";   
                  $out .= "Connection: Close";   
                  fputs($fp, $out);   
                  while (!feof($fp))   
                  {   
                      $wh .= nl2br(fgets($fp, 255));   
                  }   
                  fclose($fp);   
                  return $wh;   
              }   
              //   
              //輸出當(dāng)前域名的狀態(tài)信息   
              //   
              function PrintSta()   
              {   
                  $rs = $this->GetInfo();   
                  if($rs=="ok") echo $this->domain." 未注冊(cè)!<br/>";   
                  else if($rs=="") echo "無(wú)法查詢 ".$this->domain." 狀態(tài)!<br/>";   
                  else echo $this->domain." 已注冊(cè),到期時(shí)間:$rs<br/>";   
              }   
              //   
              //獲得 whois 查詢服務(wù)器   
              //   
              function GetServer()   
              {   
                  $udomain=strtolower(substr(strrchr($this->domain,'.'),1));   
                  return array_key_exists($udomain,$this->arr_whois_servers) ? $this->arr_whois_servers[$udomain] : '';   
              }   
              //   
              //英語(yǔ)的月份轉(zhuǎn)為數(shù)字   
              //   
              function MonthToNum($m)   
              {   
                  echo $m;   
                  $m = strtolower($m);   
                  for($i=1;$i<=12;$i++)   
                  {   
                      $tt = mktime(0,0,0,$i+1,0,2005);   
                      if($m==strtolower(strftime("%b",$tt)))   
                      {   
                          if($i>9) return $i-1;   
                          else return "0".$i-1;   
                      }   
                  }   
              }   
          }   
           
          $sd = new SearchDomain();   
          $sd->SetDomain("$domain");   
          //查詢域名是否被注冊(cè),等價(jià)于 $sd->PrintSta();   
          $rs = $sd->GetInfo();   
          if($rs=="ok") echo $sd->domain." 未注冊(cè)!<br/>";   
          else if($rs=="") echo "無(wú)法查詢 ".$sd->domain." 狀態(tài)!<br/>";   
          else echo $sd->domain." 已注冊(cè),到期時(shí)間:$rs<br/>";   
          //獲得域名的詳細(xì)whois信息   
          //echo $sd->GetWhois();   
           
          ?>
          
          請(qǐng)注意:經(jīng)進(jìn)一步使用發(fā)現(xiàn)上面的whois server返回的并不是統(tǒng)一格式的信息,并且部分whois server無(wú)響應(yīng)。部分小后綴域名是無(wú)法查詢的,還需要進(jìn)一步處理。(舉例,.kr返回韓文數(shù)據(jù),.fr,.de返回某種協(xié)議的格式,而.ru返回了另一種格式的協(xié)議,說(shuō)明頁(yè)面是俄文的。)

          對(duì)應(yīng)的 域名后綴 -> whois 服務(wù)器 的映射關(guān)系大致如下:
            1. 'com'=>'whois.internic.net',   
            2. 'net'=>'whois.internic.net',   
            3. 'org'=>'whois.pir.org',   
            4. 'asia'=>'whois.crsnic.net'
            5. 'cn'=>'whois.cnnic.net.cn',   
            6. 'cc'=>'whois.nic.cc',   

                  對(duì)于這種方法,雖然實(shí)現(xiàn)起來(lái)很簡(jiǎn)單,但是對(duì)于在Godaddy.com平臺(tái)或者是國(guó)內(nèi)的廈門(mén)易名網(wǎng)注冊(cè)的 域名來(lái)說(shuō),只能查到一個(gè)大概,而無(wú)法查到具體真正的 domain 的信息,如下:

          <?php
          include('whois_inc/whois.main.php');
          $whois =newWhois();
          $result = $whois->Lookup($domain);
          $output = implode("\n", $result['rawdata']);
          echo $output;?>

          在godday注冊(cè)的域名的whois信息

          DomainName: lxfq.cn
          ROID:20130114s10001s62921725-cn
          DomainStatus: ok
          Registrant ID:000046dbRegistrant:黎軍RegistrantContactEmail:2673732891@qq.com
          SponsoringRegistrar:北京網(wǎng)尊科技有限公司NameServer: ns1.vtopchina.cn
          NameServer: ns2.vtopchina.cn
          RegistrationDate:2013-01-1404:02:16ExpirationDate:2014-01-1404:02:16
          DNSSEC:unsigned

          在廈門(mén)易名網(wǎng)注冊(cè)的域名的whois信息

                  所以,無(wú)論上面兩種方法,都不能比較完善的實(shí)現(xiàn) whois 的查詢功能。

                  這時(shí)候 Jay感覺(jué)到,僅僅是 whois 這件小事,也需要用牛刀,我們需要一個(gè)完善 whois查詢組件。

                  此時(shí)的 Jay立刻打開(kāi) google.com,搜索 php whois,果不其然!

                  在 百度中,搜了半天,出來(lái)的都是一些外門(mén)奇方,google一搜,就立馬出現(xiàn)一套完整的 whois client 的 php 實(shí)現(xiàn),項(xiàng)目名稱就叫《phpWhois》,項(xiàng)目主頁(yè):http://www.phpwhois.org/ ,于是立馬 download 下來(lái),根據(jù)文檔中的 demo,很快就把 whois 的查詢功能實(shí)現(xiàn)了。

                  下面是調(diào)用 phpWhois 組件,實(shí)現(xiàn) whois信息查詢的核心代碼部分:

          <?php
          include('whois_inc/whois.main.php');
          $whois =new Whois();
          $result = $whois->Lookup($domain);
          $output = implode("\n", $result['rawdata']);
          echo $output;
          ?>

                  在這里<pre></pre>標(biāo)簽的作用是定義預(yù)格式化的文本,就是將 whois 查詢到的 raw text 按原來(lái)的文本排版格式直接輸出。

          DomainName: lxfq.cn
          ROID:20130114s10001s62921725-cn
          DomainStatus: ok
          Registrant ID:000046dbRegistrant:黎軍RegistrantContactEmail:2673732891@qq.com
          SponsoringRegistrar:北京網(wǎng)尊科技有限公司NameServer: ns1.vtopchina.cn
          NameServer: ns2.vtopchina.cn
          RegistrationDate:2013-01-1404:02:16ExpirationDate:2014-01-1404:02:16
          DNSSEC:unsigned

          總結(jié):

                  whois雖然僅僅只是一種最簡(jiǎn)單的基于 tcp 的查詢協(xié)議,但是很多工作,即便我們實(shí)現(xiàn)起來(lái)也非常簡(jiǎn)單,如果有現(xiàn)成的 php組件可以用的話,就應(yīng)該盡量避免自己重復(fù)發(fā)明一個(gè)輪子。倒不是說(shuō)不可以,只是重新實(shí)現(xiàn)一種協(xié)議,即便是最簡(jiǎn)單的那種,也會(huì)遇到很多的例外。

                  就像 phpWhois 組件,爭(zhēng)對(duì)godaddy類似這種的例外情況,就處理的非常好。

                  所以,專業(yè)的事情,還是讓專業(yè)的開(kāi)源組件去實(shí)現(xiàn)吧!

          熱門(mén)關(guān)鍵詞: php 域名 whois 信息查詢
          欄目列表
          推薦內(nèi)容
          熱點(diǎn)內(nèi)容
          展開(kāi)