PHP php_network_getaddresses: getaddrinfo failed: no that host is known

2022-08-30 13:43:28

我在某个目标域上遇到了 DNS 问题。我正在使用(但与其他函数相同的问题)来检索图像,但我得到这个错误:fopen()Warning: fopen(): php_network_getaddresses: getaddrinfo failed: No such host is known

我能够从命令提示符处ping或nslookup域,但由于某种原因,php会抛出此错误。当我尝试或其他域时,一切顺利。但是上面提到的域根本无法用PHP解决。我已经刷新了DNS,重新启动了Apache,但仍然没有运气。fopen('http://www.google.com', r);

我尝试过:

  • Windows 7, Apache 2.2 PHP 5.3.6
  • Windows server 2008r2, Apache 2.2 PHP 5.3.6

什么原因可能导致此单个域无法解析?


答案 1

IMO 这是从操作系统和PHP解析名称的不同方法。

尝试:

echo gethostbyname("host.name.tld");

var_export (dns_get_record ( "host.name.tld") );

$dns=array("8.8.8.8","8.8.4.4");
var_export (dns_get_record ( "host.name.tld" ,  DNS_ALL , $dns ));

您应该发现一些DNS /解析程序错误。


答案 2

您的“本地主机”无法解析名称 www.google.com,这意味着您的计算机无法/无法访问有效的dns服务器。

尝试在该计算机的控制台上 ping google.com 以验证这一点。


推荐