Почему PHP-функция dns_get_record () возвращает пустой массив?

У меня был скрипт на одном из моих сайтов, который загружал записи DNS, используя dns_get_record() PHP функция Но примерно через 2 недели эта функция возвращает пустой массив. Я написал тестовый скрипт, как показано ниже:

<?php
$result = dns_get_record("php.net");
if (count($result)) {
print_r($result);
} else {
echo 'Empty Array';
}
?>

Он хорошо работает на моей локальной машине, но когда я тестирую его на своем сервере, он возвращает Пустой массив в результате.
В чем дело, друзья?

1

Решение

Убедитесь, что DNS-порты открыты на сервере, для этого требуется порт TCP / UDP 53.

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

dig exmaple.com и посмотреть, если вы получите ожидаемый ответ.

Убедитесь, что на сервере установлены DNS-серверы, а затем проверьте брандмауэр, как было предложено ранее.

Наконец, стоит проверить версии PHP на каждой машине?

0

Другие решения

Клиенты нуждаются в dns и dhcp или жестко запрограммированном заполнении бланков.

Серверы часто не видят ничего, только отвечая на их IP-трафик

0

По вопросам рекламы [email protected]