file_get_contents(): php_network_getaddresses: getaddrinfo failed: name or service not known

我正在尝试使用xampp服务器上的网站上的PHP脚本从服务器下载图像。

正在使用file_get_contents功能下载映像。

在服务器上下载的 php 代码是:

if(isset($_GET['path']) && isset($_GET['username'])) {
    echo "path:".$_GET['path'];
    $temp = explode(".", $_GET['path']);
    $extension = end($temp);
    $fname="images/".$_GET['title'];
    $filenameIn  = $_GET['path'];
    $filenameOut = "" . $fname;
    $contentOrFalseOnFailure   = file_get_contents($filenameIn);
    $byteCountOrFalseOnFailure = file_put_contents($filenameOut,$contentOrFalseOnFailure);
}

但是我得到这个错误:

警告:file_get_contents(): php_network_getaddresses:getaddrinfo 失败:名称或服务在第 19 行的 /opt/lampp/htdocs/xampp/project/upload_art.php 中未知

警告:file_get_contents(http://app6.pixlr.com/_temp/528afa6e2f7cc6a5b1000101.jpg):无法打开流:php_network_getaddresses:getaddrinfo 失败:名称或服务在第 19 行的 /opt/lampp/htdocs/xampp/project/upload_art.php 中未知

我已经在这里检查了所有发布的答案,但似乎没有一个可以解决这个问题。请帮忙!


答案 1

这意味着您的服务器无法连接到外部世界

鉴于DNS问题,这可能不会改变任何东西

因此,如果您有权限,请尝试将 /etc/resolv.conf 文件中的名称服务器更改为其他名称服务器。


答案 2

也应该允许httpd在外面连接。检查你的 selinux 策略。这有助于我解决连接问题:

setsebool -P nis_enabled 1
setsebool -P httpd_can_network_connect 1

推荐