我正在嘗試使用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失?。涸诘?9行的/opt/lampp/htdocs/xampp/project/upload_art.php中名稱或服務未知警告:file_get_contents(http://app6.pixlr.com/_temp/528afa6e2f7cc6a5b1000101.jpg):無法打開流:php_network_getaddresses:getaddrinfo失敗:在/ opt / lampp / htdocs / xampp / project / upload_art中未知的名稱或服務。第19行的php我已經在這里簽出了所有已發布的答案,但似乎沒有一個可以解決該問題。請幫忙!
3 回答

不負相思意
TA貢獻1777條經驗 獲得超10個贊
這意味著您的服務器無法連接到外部世界
鑒于DNS問題,這可能不會改變任何內容
因此,如果您有權限,請嘗試將/etc/resolv.conf文件中的名稱服務器更改為其他名稱服務器。

catspeake
TA貢獻1111條經驗 獲得超0個贊
還應該允許httpd連接到外部。檢查您的selinux策略。這可以幫助我解決連接問題:
setsebool -P nis_enabled 1
setsebool -P httpd_can_network_connect 1

慕俠2389804
TA貢獻1719條經驗 獲得超6個贊
如果您將Docker env用于您的Web應用程序,則提供以下建議。我在使用docker php映像時遇到了同樣的問題,在yml文件中添加了dns選項解決了我的問題。
docker-compose.yml
version: '2'
services:
webserver:
build: ./docker/webserver
image: my_webapp
dns: 8.8.8.8
dns_opt:
- use-vc
- no-tld-query
ports:
- 80:80
- 443:443
volumes:
- ./:/var/www/html
- 3 回答
- 0 關注
- 1343 瀏覽
添加回答
舉報
0/150
提交
取消