php_network_getaddresses: getaddrinfo failed

php_network_getaddresses: getaddrinfo failed
该错误为服务器没配置dns。导致 file_get_content 中找不到要抓取的域名地址
linux 设置dns

[root@dzsw ~]# vi /etc/resolv.conf
nameserver 192.88.88.98
nameserver 61.144.56.101
 
/etc/rc.d/init.d/named restart

也可以配置/etc/hosts
比如,我们要抓取www.baidu.com的东西
C:/Documents and Settings/Administrator>ping www.baidu.com

Pinging www.a.shifen.com [202.108.22.5] with 32 bytes of data:

Reply from 202.108.22.5: bytes=32 time=21ms TTL=53
Reply from 202.108.22.5: bytes=32 time=23ms TTL=53

则我们可以 vi /etc/hosts
www.baidu.com 202.108.22.5
如此一来,在linux机器ping www.baidu.com可以得到 202.108.22.5了,
则 file_get_content www.baidu.com中的东西,由于已经可以找到,不会报错,
不过此时 file_get_content 其他网站还是会报错,但这个方法有个好处就是,代码只能
file_get_content我们在/etc/hosts写好的几个,如果被注射js木马,则js木马由于不能访问到它想访问的地方
等于无效了

你可能感兴趣的:(c,PHP,linux,File,服务器,NetWork)