file_get_contents - 连接超时

时间:2010-11-15 23:46:57

标签: php

<?php
$a = file_get_contents('http://www.google.com');
echo $

为什么浏览器会返回此错误?

Warning: file_get_contents(http://www.google.com) [function.file-get-contents]: failed to open stream: Connection timed out in /home/test.php on line 2

4 个答案:

答案 0 :(得分:3)

很可能您的服务器无法连接到外部资源,例如,由于防火墙限制。

答案 1 :(得分:2)

我有同样的问题,无法使用file_get_contents()下载,但在命令行上使用curl对同一个URL工作正常。原来它试图通过IPv6连接失败。

我通过在内核参数中禁用IPv6来解决它。

答案 2 :(得分:1)

file_get_contents在获取远程文件时效果不佳,不应使用。它不处理慢速网络连接或重定向,也不返回错误代码。您应该使用curl来获取远程文件。

curl_exec手册中有一个例子:http://us3.php.net/manual/en/function.curl-exec.php

答案 3 :(得分:0)

可能是服务器端问题,可能是您的服务器无法远程与其他服务器通信。您必须与服务器管理员通信。