simplexml_load_file()未能打开流连接拒绝
我想从远程服务器加载xml内容。我正在尝试在Go Daddy托管的网站上执行此操作。我正在使用simplexml_load_file()来这样做。这是错误:simplexml_load_file()未能打开流连接拒绝
Warning: simplexml_load_file(https://remote-server/login_API_SP.php?id=Lake&p=asdfawefasdf12ds&ia=206.19.211.224): failed to open stream: Connection refused in /home/rjnonline/public_html/index.php on line 185
Warning: simplexml_load_file(): I/O warning : failed to load external entity " https://remote-server/login_API_SP.php?id=Lake&p=asdfawefasdf12ds&ia=206.19.211.224 " in /home/rjnonline/public_html/index.php on line 185
我用“远程服务器”替换了我们的实际远程服务器。
那我尝试的事情:
- 检查,看看是否
allow_url_fopen
和allow_url_include
都在。他们都在。 - 我试过使用cURL,遇到了一个异常。
- 我在浏览器中输入了URL,我可以得到结果。
- 使用
file_get_contents
,结果相同。 - 检查API上的标题信息。那就是:
header('Access-Control-Allow-Origin: *');
暗战选择这里,所以我想伸手去看看有没有人能帮助我。
如果这是真的“我在浏览器中输入了URL,我就可以得到结果了。”
然后应该没有问题。
您需要解决的问题:“我尝试过使用cURL,但遇到了一个异常。”
从来没有一个链接在浏览器中工作,我无法使用curl工作。
因为您没有包含到xml的链接,所以我无能为力。变量太多,你没有提供任何细节。
您可以发布失败的卷曲代码。
这是如何工作的。
$xml = curl_exec($ch);
$xml = simplexml_load_string($xml);
GoDaddy的很烂,但他们在这里是不是罪魁祸首。他们的支持人员更可能做的更多,而不是更好。
问题是请求头。 simplexml_load_file()
和file_get_contents()
均发送裸露的请求标头。很容易检测到这些类型的标题并删除连接。
它可能是GoDaddy阻止请求。你是在本地还是从另一台服务器发出请求?我可能会尝试联系他们的支持,看看他们是否特别阻止了这个请求。 – cngodles