dns_get_records ведут себя по-разному
У меня есть php-скрипт, который запускается внутри докера ( версия php — 7.2.34 на orcalelinux ). Он использует dns_get_records для получения записей spf для доменов. Для одного конкретного домена выдает предупреждение:
Warning dns_get_record(): a temporary server error has occurred on line 7
и возвращает пустой результат.
Я попытался запустить тот же скрипт на php: 7.2-fpm-alpine, результат тот же, но другое предупреждение:
Warning: dns_get_record(): Unable to parse DNS data received on line 7
Но когда я запускаю скрипт на моем wsl linux (Ubuntu с php версии 7.2.34), скрипт выполняется без предупреждения и возвращает действительный результат для того же домена.
Почему одна и та же функция php ведет себя по-разному в трех разных средах и как это можно исправить?
Моя хост-операционная система - Windows 11. Вот php-скрипт:
<?php
/* do some stuff*/
$spf = dns_get_record('somedomain',DNS_TXT);
print("---------------------------------SMC SPF record---------------------------------\n");
print("\n$spf\n");
print("---------------------------------SMC SPF record---------------------------------\n");
?>
Я не могу открыть доменное имя из-за проблем с конфиденциальностью.