【发布时间】:2017-08-04 19:25:27
【问题描述】:
当我使用带有 url(http://example.com 或其他)的 file_get_contents 时,它会在不同的上下文、user_agent 等下返回 false:
file_get_contents(http://example.com):failed 打开流:操作 失败
但是,当我们将 file_get_contents() 用于本地文件时,它可以工作。但是当我们尝试通过http访问任何文件时,它会显示上述错误。
我尝试使用 cURL 进行相同操作,但出现以下错误:
cURL 错误 (7):无法连接到主机
根据stackoverflow上的一些解决方案,我们在php.ini文件中更改了这个设置:
ini_set('allow_url_fopen', 1);
在包含 snoopy class.php 后我也使用了 snoopy 库
require "Snoopy/Snoopy.class.php";
$snoopy = new $Snoopy;
fetchtext("http://example.com");
$text = $snoopy->results;
它也给出了一个空的响应。
如果我使用终端 cURL 或 wget 相同的 URL,它会完美运行。但是当文件不是本地文件(通过 HTTP)时,它在 PHP 代码中不起作用。
服务器详情:
Debian GNU/Linux 7.6 (wheezy)
Apache/2.2.22 (Debian)
PHP 5.4.45-0+deb7u7
【问题讨论】:
标签: php linux apache curl debian