2010-06-12 112 views
2

我使用file_get_contents()来获取动态数据。 这里是我的脚本...file_get_contents()连接超时问题

$str = file_get_contents("http://cba.am/"); 
some script here... 

它正常工作了很长时间,但现在它返回Connection timed out

什么是奇怪的,当我从本地服务器运行脚本,它工作正常。

你能告诉我为什么,我能做些什么来解决这个问题。 也许我必须在php.ini中设置更高的超时时间?

感谢

回答

2

尝试把下面一行在你的脚本的顶部,延长脚本执行时间:

ini_set('max_execution_time', 14000); // or whatever value of time 

更新:

当我加入www到网址,它的工作:

file_get_contents("http://www.cba.am/"); 
+0

艾哈迈德你是真的。非常感谢,但你能解释这种行为吗? – Simon 2010-06-12 12:37:42

+0

@Syom:我不是一个服务器的东西专家,但我怀疑它与网站运行的服务器设置有关。 – Sarfraz 2010-06-12 12:39:10

+0

这是因为服务器设置没有设置别名。很多时候,在apache中有一个虚拟主机设置可以接受这两个版本的url - www和non www。这就是为什么你只能访问www.cba.com。 – 2014-10-30 08:39:09

3

为的file_get_contents超时可以用下面的设置来控制:

ini_set('default_socket_timeout', 60); 
2

他们的服务器根本就没有配置为不带www回应。 它只响应www.cba.am的请求,因此超时。