【发布时间】:2014-12-07 21:38:30
【问题描述】:
嗨,这是我想要做的。
$contents = file_get_contents('http://123.34.56.123:3000/?location=Example'); //Not the original ip
//Node script running on port 3000
在 localhost 上一切正常,当我直接从浏览器访问此 url 但在我的网络服务器上,我会收到此错误
file_get_contents(http://123.34.56.123:3000/?location=Example) Failed to open stream: Connection timed out in ....
我已经尝试使用 curl 、套接字和文件流进行连接,但是虽然它在我的本地服务器上工作正常,但所有获得连接的东西都超时了
我也用过ini_set('max_execution_time', 300);,但没有任何帮助
注意:file_get_contents('http://www.google.com'); 在 Web 服务器上工作正常
任何人都可以帮助我理解为什么会出现此错误?我已经尝试了几乎所有我能解决的问题。
【问题讨论】:
-
这个IP是公共IP吗?例如如果它是您网络内部的私有 IP,并且运行此代码的机器位于您的网络外部,它将无法工作。
-
@MarcB 但我可以直接从我的浏览器访问它,并且它在我的本地服务器上也可以正常工作,这意味着它是一个公共 IP 对吗?
标签: php file file-get-contents