Бормотухи.НЕТ

Вернуться   Бормотухи.НЕТ > Web-мастеру > Сайтостроение > Разные скрипты
Расширенный поиск

Разные скрипты Раздел посвященный готовым движкам сайтов, форумов, ...

Ответ
 
Опции темы Поиск в этой теме
Старый 24.12.2010, 07:42 Вверх   #1
forever alone
 
Аватар для no name
no name вне форума
Доп. информация
По умолчанию Скрипт, определяющий занят домен или нет

На многих сайтах хост-провайдеров можно часто увидеть сервис, который позволяет осуществить проверку домена - занят он или нет. Приведённый ниже скрипт раскрывает детали такой проверки.
PHP код:
  <?php 

  
// Устанавливаем не ограниченное время выполнения скрипта

  
set_time_limit(0);

  
$servers = array(

    array(
"ac","whois.nic.ac","No match"),

    array(
"ac.cn","whois.cnnic.net.cn","No entries found"),

    array(
"ac.jp","whois.nic.ad.jp","No match"),

    array(
"ac.uk","whois.ja.net","no entries"),

    array(
"ad.jp","whois.nic.ad.jp","No match"),

    array(
"adm.br","whois.nic.br","No match"),

    array(
"adv.br","whois.nic.br","No match"),

    array(
"aero","whois.information.aero","is available"),

    array(
"ag","whois.nic.ag","does not exist"),

    array(
"agr.br","whois.nic.br","No match"),

    array(
"ah.cn","whois.cnnic.net.cn","No entries found"),

    array(
"al","whois.ripe.net","No entries found"),

    array(
"am.br","whois.nic.br","No match"),

    array(
"arq.br","whois.nic.br","No match"),

    array(
"at","whois.nic.at","nothing found"),

    array(
"au","whois.aunic.net","No Data Found"),

    array(
"art.br","whois.nic.br","No match"),

    array(
"as","whois.nic.as","Domain Not Found"),

    array(
"asn.au","whois.aunic.net","No Data Found"),

    array(
"ato.br","whois.nic.br","No match"),

    array(
"be","whois.geektools.com","No such domain"),

    array(
"bg","whois.digsys.bg","does not exist"),

    array(
"bio.br","whois.nic.br","No match"),

    array(
"biz","whois.biz","Not found"),

    array(
"bj.cn","whois.cnnic.net.cn","No entries found"),

    array(
"bmd.br","whois.nic.br","No match"),

    array(
"br","whois.registro.br","No match"),

    array(
"ca","whois.cira.ca","Status: AVAIL"),

    array(
"cc","whois.nic.cc","No match"),

    array(
"cd","whois.cd","No match"),

    array(
"ch","whois.nic.ch","We do not have an entry"),

    array(
"cim.br","whois.nic.br","No match"),

    array(
"ck","whois.ck-nic.org.ck","No entries found"),

    array(
"cl","whois.nic.cl","no existe"),

    array(
"cn","whois.cnnic.net.cn","No entries found"),

    array(
"cng.br","whois.nic.br","No match"),

    array(
"cnt.br","whois.nic.br","No match"),

    array(
"com","whois.verisign-grs.net","No match"),

    array(
"com.au","whois.aunic.net","No Data Found"),

    array(
"com.br","whois.nic.br","No match"),

    array(
"com.cn","whois.cnnic.net.cn","No entries found"),

    array(
"com.eg","whois.ripe.net","No entries found"),

    array(
"com.hk","whois.hknic.net.hk","No Match for"),

    array(
"com.mx","whois.nic.mx","Nombre del Dominio"),

    array(
"com.ru","whois.ripn.ru","No entries found"),

    array(
"com.tw","whois.twnic.net","NO MATCH TIP"),

    array(
"conf.au","whois.aunic.net","No entries found"),

    array(
"co.jp","whois.nic.ad.jp","No match"),

    array(
"co.uk","whois.nic.uk","No match for"),

    array(
"cq.cn","whois.cnnic.net.cn","No entries found"),

    array(
"csiro.au","whois.aunic.net","No Data Found"),

    array(
"cx","whois.nic.cx","No match"),

    array(
"cz","whois.nic.cz","No data found"),

    array(
"de","whois.denic.de","No entries found"),

    array(
"dk","whois.dk-hostmaster.dk","No entries found"),

    array(
"ecn.br","whois.nic.br","No match"),

    array(
"ee","whois.eenet.ee","NOT FOUND"),

    array(
"edu","whois.verisign-grs.net","No match"),

    array(
"edu.au","whois.aunic.net","No Data Found"),

    array(
"edu.br","whois.nic.br","No match"),

    array(
"eg","whois.ripe.net","No entries found"),

    array(
"es","whois.ripe.net","No entries found"),

    array(
"esp.br","whois.nic.br","No match"),

    array(
"etc.br","whois.nic.br","No match"),

    array(
"eti.br","whois.nic.br","No match"),

    array(
"eun.eg","whois.ripe.net","No entries found"),

    array(
"emu.id.au","whois.aunic.net","No Data Found"),

    array(
"eng.br","whois.nic.br","No match"),

    array(
"far.br","whois.nic.br","No match"),

    array(
"fi","whois.ripe.net","No entries found"),

    array(
"fj","whois.usp.ac.fj",""),

    array(
"fj.cn","whois.cnnic.net.cn","No entries found"),

    array(
"fm.br","whois.nic.br","No match"),

    array(
"fnd.br","whois.nic.br","No match"),

    array(
"fo","whois.ripe.net","no entries found"),

    array(
"fot.br","whois.nic.br","No match"),

    array(
"fst.br","whois.nic.br","No match"),

    array(
"fr","whois.nic.fr","No entries found"),

    array(
"g12.br","whois.nic.br","No match"),

    array(
"gd.cn","whois.cnnic.net.cn","No entries found"),

    array(
"ge","whois.ripe.net","no entries found"),

    array(
"ggf.br","whois.nic.br","No match"),

    array(
"gl","whois.ripe.net","no entries found"),

    array(
"gr","whois.ripe.net","no entries found"),

    array(
"gr.jp","whois.nic.ad.jp","No match"),

    array(
"gs","whois.adamsnames.tc","is not registered"),

    array(
"gs.cn","whois.cnnic.net.cn","No entries found"),

    array(
"gov.au","whois.aunic.net","No Data Found"),

    array(
"gov.br","whois.nic.br","No match"),

    array(
"gov.cn","whois.cnnic.net.cn","No entries found"),

    array(
"gov.hk","whois.hknic.net.hk","No Match for"),

    array(
"gob.mx","whois.nic.mx","Nombre del Dominio"),

    array(
"gs","whois.adamsnames.tc","is not registered"),

    array(
"gz.cn","whois.cnnic.net.cn","No entries found"),

    array(
"gx.cn","whois.cnnic.net.cn","No entries found"),

    array(
"he.cn","whois.cnnic.net.cn","No entries found"),

    array(
"ha.cn","whois.cnnic.net.cn","No entries found"),

    array(
"hb.cn","whois.cnnic.net.cn","No entries found"),

    array(
"hi.cn","whois.cnnic.net.cn","No entries found"),

    array(
"hl.cn","whois.cnnic.net.cn","No entries found"),

    array(
"hn.cn","whois.cnnic.net.cn","No entries found"),

    array(
"hm","whois.registry.hm","(null)"),

    array(
"hk","whois.hknic.net.hk","No Match for"),

    array(
"hk.cn","whois.cnnic.net.cn","No entries found"),

    array(
"hu","whois.ripe.net","MAXCHARS:500"),

    array(
"id.au","whois.aunic.net","No Data Found"),

    array(
"ie","whois.domainregistry.ie","no match"),

    array(
"ind.br","whois.nic.br","No match"),

    array(
"imb.br","whois.nic.br","No match"),

    array(
"inf.br","whois.nic.br","No match"),

    array(
"info","whois.afilias.info","Not found"),

    array(
"info.au","whois.aunic.net","No Data Found"),

    array(
"it","whois.nic.it","No entries found"),

    array(
"idv.tw","whois.twnic.net","NO MATCH TIP"),

    array(
"int","whois.iana.org","not found"),

    array(
"is","whois.isnic.is","No entries found"),

    array(
"il","whois.isoc.org.il","No data was found"),

    array(
"jl.cn","whois.cnnic.net.cn","No entries found"),

    array(
"jor.br","whois.nic.br","No match"),

    array(
"jp","whois.nic.ad.jp","No match"),

    array(
"js.cn","whois.cnnic.net.cn","No entries found"),

    array(
"jx.cn","whois.cnnic.net.cn","No entries found"),

    array(
"kr","whois.krnic.net","is not registered"),

    array(
"la","whois.nic.la","NO MATCH"),

    array(
"lel.br","whois.nic.br","No match"),

    array(
"li","whois.nic.ch","We do not have an entry"),

    array(
"lk","whois.nic.lk","No domain registered"),

    array(
"ln.cn","whois.cnnic.net.cn","No entries found"),

    array(
"lt","ns.litnet.lt","No matches found"),

    array(
"lu","whois.dns.lu","No entries found"),

    array(
"lv","whois.ripe.net","no entries found"),

    array(
"ltd.uk","whois.nic.uk","No match for"),

    array(
"mat.br","whois.nic.br","No match"),

    array(
"mc","whois.ripe.net","No entries found"),

    array(
"med.br","whois.nic.br","No match"),

    array(
"mil","whois.nic.mil","No match"),

    array(
"mil.br","whois.nic.br","No match"),

    array(
"mn","whois.nic.mn","Domain not found"),

    array(
"mo.cn","whois.cnnic.net.cn","No entries found"),

    array(
"ms","whois.adamsnames.tc","is not registered"),

    array(
"mus.br","whois.nic.br","No match"),

    array(
"mx","whois.nic.mx","Nombre del Dominio"),

    array(
"name","whois.nic.name","No match"),

    array(
"ne.jp","whois.nic.ad.jp","No match"),

    array(
"net","whois.verisign-grs.net","No match"),

    array(
"net.au","whois.aunic.net","No Data Found"),

    array(
"net.br","whois.nic.br","No match"),

    array(
"net.cn","whois.cnnic.net.cn","No entries found"),

    array(
"net.eg","whois.ripe.net","No entries found"),

    array(
"net.hk","whois.hknic.net.hk","No Match for"),

    array(
"net.lu","whois.dns.lu","No entries found"),

    array(
"net.mx","whois.nic.mx","Nombre del Dominio"),

    array(
"net.uk","whois.nic.uk","No match for "),

    array(
"net.ru","whois.ripn.ru","No entries found"),

    array(
"net.tw","whois.twnic.net","NO MATCH TIP"),

    array(
"nl","whois.domain-registry.nl","is not a registered domain"),

    array(
"nm.cn","whois.cnnic.net.cn","No entries found"),

    array(
"no","whois.norid.no","no matches"),

    array(
"nom.br","whois.nic.br","No match"),

    array(
"not.br","whois.nic.br","No match"),

    array(
"ntr.br","whois.nic.br","No match"),

    array(
"nx.cn","whois.cnnic.net.cn","No entries found"),

    array(
"nz","whois.domainz.net.nz","Not Listed"),

    array(
"plc.uk","whois.nic.uk","No match for"),

    array(
"odo.br","whois.nic.br","No match"),

    array(
"oop.br","whois.nic.br","No match"),

    array(
"or.jp","whois.nic.ad.jp","No match"),

    array(
"org","whois.verisign-grs.net","No match"),

    array(
"org.au","whois.aunic.net","No Data Found"),

    array(
"org.br","whois.nic.br","No match"),

    array(
"org.cn","whois.cnnic.net.cn","No entries found"),

    array(
"org.hk","whois.hknic.net.hk","No Match for"),

    array(
"org.lu","whois.dns.lu","No entries found"),

    array(
"org.ru","whois.ripn.ru","No entries found"),

    array(
"org.tw","whois.twnic.net","NO MATCH TIP"),

    array(
"org.uk","whois.nic.uk","No match for"),

    array(
"pl","nazgul.nask.waw.pl","does not exists"),

    array(
"pp.ru","whois.ripn.ru","No entries found"),

    array(
"ppg.br","whois.nic.br","No match"),

    array(
"pro.br","whois.nic.br","No match"),

    array(
"psi.br","whois.nic.br","No match"),

    array(
"psc.br","whois.nic.br","No match"),

    array(
"pt","whois.ripe.net","No entries found"),

    array(
"qh.cn","whois.cnnic.net.cn","No entries found"),

    array(
"qsl.br","whois.nic.br","No match"),

    array(
"rec.br","whois.nic.br","No match"),

    array(
"ro","whois.rotld.ro","No entries found"),

    array(
"ru","whois.ripn.ru","No entries found"),

    array(
"sc.cn","whois.cnnic.net.cn","No entries found"),

    array(
"sd.cn","whois.cnnic.net.cn","No entries found"),

    array(
"se","whois.nic-se.se","No data found"),

    array(
"sg","whois.nic.net.sg","NO entry found"),

    array(
"sh","whois.nic.sh","No match for"),

    array(
"sh.cn","whois.cnnic.net.cn","No entries found"),

    array(
"si","whois.arnes.si","No entries found"),

    array(
"sk","whois.ripe.net","no entries found"),

    array(
"slg.br","whois.nic.br","No match"),

    array(
"sm","whois.ripe.net","no entries found"),

    array(
"sn.cn","whois.cnnic.net.cn","No entries found"),

    array(
"srv.br","whois.nic.br","No match"),

    array(
"st","whois.nic.st","No entries found"),

    array(
"sx.cn","whois.cnnic.net.cn","No entries found"),

    array(
"tc","whois.adamsnames.tc","is not registered"),

    array(
"th","whois.nic.uk","No entries found"),

    array(
"tj.cn","whois.cnnic.net.cn","No entries found"),

    array(
"tmp.br","whois.nic.br","No match"),

    array(
"to","whois.tonic.to","No match"),

    array(
"tr","whois.ripe.net","Not found in database"),

    array(
"trd.br","whois.nic.br","No match"),

    array(
"tur.br","whois.nic.br","No match"),

    array(
"tv","whois.tv","MAXCHARS:75"),

    array(
"tv.br","whois.nic.br","No match"),

    array(
"tw","whois.twnic.net","NO MATCH TIP"),

    array(
"tw.cn","whois.cnnic.net.cn","No entries found"),

    array(
"uk","whois.thnic.net","No match for"),

    array(
"va","whois.ripe.net","No entries found"),

    array(
"vet.br","whois.nic.br","No match"),

    array(
"vg","whois.adamsnames.tc","is not registered"),

    array(
"wattle.id.au","whois.aunic.net","No Data Found"),

    array(
"ws","whois.worldsite.ws","No match for"),

    array(
"xj.cn","whois.cnnic.net.cn","No entries found"),

    array(
"xz.cn","whois.cnnic.net.cn","No entries found"),

    array(
"yn.cn","whois.cnnic.net.cn","No entries found"),

    array(
"zlg.br","whois.nic.br","No match"),

    array(
"zj.cn","whois.cnnic.net.cn","No entries found")

  );



  
// Доменное имя

  
$domain "mysql.com";

  
// Извлекаем домен первого уровня

  
$first_dom substr($domainstrpos($domain".") + 1);

  
// Получаем имя whois-сервера, который отвечает за

  // домен $first_dom

  
for($i 0$i count($servers); $i++)

  {

    if(
$servers[$i][0] == $first_dom)

    {

      
// Запоминаем имя сервера

      
$whois $servers[$i][1];

      
// и фразу, означающую, что домен отсутствует

      
$not_found_string $servers[$i][2];

      
// Покидаем цикл

      
break;

    }

  }



  
// Проверяем определён ли whois-сервер который несёт

  // ответственность за данный доменный уровень

  
if(empty($whois)) exit("К сожалению не найден соответствующий Whois-сервер");

  
// Обращаемся к whois-серверу и получаем информацию

  // о доменном имени

  
$fp fsockopen($whois43);

  
fputs($fp"$domain\r\n");

  
$str "";

  while(!
feof($fp))

  {

    
$str .= fgets($fp,128);

  }

  
fclose($fp);

  
// если в ответе имеется фраза-отказ, домен не

  // зарегистрирован, если такой фразы нет -

  // следовательно домен зарегистрирован

  
if(!preg_match("/".$not_found_string."/is"$str))

  {

    echo 
"Домен уже зарегистрирован";

  }

  else

  {

    echo 
"Домен не зарегистрирован";

  }

?>
Важно отметить, что если вы относитесь к любителям поискать не занятый домен в автоматическом режиме, следует быть крайне аккуратным - ставьте задержки между обращениями, иначе вы будете заблокированы, а разблокировка IP-адреса требует длительной переписки с администрацией сервиса.
  Ответить с цитированием
2 пользователя(ей) сказали cпасибо:
Старый 24.12.2010, 23:05 Вверх   #2
Fedoraвод
 
Аватар для Злой
Злой вне форума
Доп. информация
По умолчанию

Цитата Сообщение от m1kar Посмотреть сообщение
разблокировка IP-адреса
Да это не проблема, все равно львиная доля на модемах сидит, выключил - включил и опа-на новый ip ))) Все не перебанишь. Другое дело если запускать скрипт на хостинге или своем сервере.
А по теме, интересная реализация )) Но все равно можно сократить код...
  Ответить с цитированием
Cказали cпасибо:
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Инструкция] Домен на динамическом ip Spartak Интернет 5 15.11.2021 13:15
[Вопрос] Выбрать домен) imbanoob Сайтостроение 5 15.02.2011 19:26
При удалениии пользователя его id остается занят Ganjabass vBulletin 3.х 8 15.01.2011 22:38
Как забрать свой домен? stereomax Хостинг (Hosting) 14 24.11.2010 14:27
[Вопрос] Как забрать свой домен ? Serberg Сайтостроение 21 10.09.2010 11:21


Текущее время: 22:01. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
 

Время генерации страницы 0.17805 секунды с 14 запросами