【发布时间】:2011-01-05 20:20:25
【问题描述】:
这个问题似乎过去在google和here上到处都在讨论过,但我还没有找到解决方案。
一个非常简单的 fopen 给了我一个
PHP 警告:fopen(http://www.google.ca):打开流失败:HTTP 请求失败!”。
我获取的 URL 并不重要,因为即使我获取 http://www.google.com 它也不起作用。完全相同的脚本适用于不同的服务器。失败的一个是 Ubuntu 10.04 和 PHP 5.3.2。这在我的脚本中不是问题,它在我的服务器中有所不同,或者它可能是 PHP 中的错误。
我尝试在 php.ini 中使用 user_agent 但没有成功。我的 allow_url_fopen 设置为 On。
如果您有任何想法,请随意!
【问题讨论】:
-
你能从命令行做一个
wget http://www.google.ca吗?fopen()没有提供更多错误信息吗? -
你能做 fopen('173.194.43.104') 吗? (那是 google.ca 的 ip)也许该服务器上的 PHP 无法访问 DSN?
-
@Pekka 是的,这样我可以毫无问题
-
@Viper_Sb:没有区别 DNS 工作正常,其他一切正常,我可以 wget 或 lynx 到网络服务器,它只是 fopen
-
这就是为什么我说 PHP 可能无法访问它,它可能工作得很好但 PHP 无法访问它。