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

Проверить, доступен ли домен или нет с помощью PHP?

Если у меня есть домен, например www.example.com, и я хочу проверить, доступен ли он, используя записи DNS (не whois)...

Можно ли это сделать с помощью PHP?

4b9b3361

Ответ 1

Вы можете использовать checkdnsrr или gethostbyname:

Документация:

http://www.php.net/checkdnsrr

http://www.php.net/gethostbyname

Пример checkdnsrr:

<?php
 if ( checkdnsrr('example.com.', 'ANY') ) {
  echo "DNS Record found";
 }
 else {
  echo "NO DNS Record found";
 }
?>

Пример gethostbyname:

<?php
 $domain = 'example.com';
 if ( gethostbyname($domain) != $domain ) {
  echo "DNS Record found";
 }
 else {
  echo "NO DNS Record found";
 }
?>

Ответ 3

Конечно. Это, что происходит для доступного домена.

Ответ 5

Мне нужно пойти на этот пакет Domain-Availability, он поддерживает множество доменов верхнего уровня и написан на объектно-ориентированном уровне.

Ответ 6

Это зависит от того, что вы подразумеваете под "доступным". Если вы имеете в виду доступность для регистрации, невозможно определить только на основе информации DNS. Должна использоваться система whois. Простым способом тестирования является использование неиспользуемого имени домена и установка серверов имен на что-то недействительное. DNS не будет доступен, но домен по-прежнему недоступен для регистрации. Я просто проверил предложения checkdnsrr(), gethostbyname() и dns_get_record(). Все показывают, что DNS не возвращается для домена, который не может быть зарегистрирован.

Следующий вопрос предлагает более подробную информацию: Проверка регистрации имени домена