Подтвердить что ты не робот

Проверка регистрации имени домена

Как я могу проверить, зарегистрировано ли имя домена? Я думал о проверке наличия соответствующего IP-адреса, но он, похоже, не работает так, как я надеялся. Есть ли решение на PHP или Python, которое можно проверить?

4b9b3361

Ответ 1

"Зарегистрированный" не означает "назначенный IP-адрес". Чтобы узнать, зарегистрировано ли имя домена, вам нужно выполнить запрос whois.

Для Python существует pywhois, но со своего веб-сайта кажется несколько незрелым. Также см. этот вопрос SO.

Для PHP есть... сюрприз... phpwhois.

Ответ 2

Майк Нотт создал простой класс PHP, который позволяет запрашивать данные who.is для любого домена, который вы хотите.

Как только вы вызываете

    $whois = getwhois($sld, $tld);

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

Ответ 3

используйте пакет net_whois из груши. для нескольких результатов, которые могут возникать, когда имена серверов также сообщаются вместе с именами доменов, делают что-то похожее на:

require_once ¨Net/Whois.php¨;
$whois = new Net_Whois;
$whois->authorative = true;
$data = $whois->query(¨example.com¨);

Ответ 4

Чтобы проверить, зарегистрировано ли имя домена, вам нужны две информации:

  • Сервер whois для соответствующего домена верхнего уровня (или домена второго уровня)
  • Соответствующий шаблон для ответа на сервер whois

Эти данные часто меняются. Этот список Whois Server пытается собрать необходимую информацию для более чем 500 доменов верхнего уровня. Список также предлагает службу API, чтобы проверить, доступен ли домен. Клиент PHP для этого API будет whois-api-php:

$whoisApi = new whoisServerList\WhoisApi("apiKey");
echo $whoisApi->isAvailable("example.net") ? "available" : "registered";