simplexml_load_file()无法打开流连接被拒绝

时间:2016-05-12 13:18:19

标签: php curl

我正在尝试从远程服务器加载xml内容。我想在Go Daddy主持的网站上这样做。我使用simplexml_load_file()来执行此操作。这是错误:

  

警告:simplexml_load_file(https://remote-server/login_API_SP.php?id=Lake&p=asdfawefasdf12ds&ia=206.19.211.224):无法打开流:第185行/home/rjnonline/public_html/index.php中的连接被拒绝

     

警告:simplexml_load_file():I / O警告:无法在第185行的/home/rjnonline/public_html/index.php中加载外部实体“https://remote-server/login_API_SP.php?id=Lake&p=asdfawefasdf12ds&ia=206.19.211.224

我用“remote-server”替换了我们的实际远程服务器。

我尝试过的事情:

  1. 检查allow_url_fopenallow_url_include是否已开启。他们都在。
  2. 我尝试过使用cURL,遇到了例外情况。
  3. 我在浏览器中输入了网址,我能够得到结果。
  4. 使用file_get_contents,结果相同。
  5. 检查了API上的标头信息。这是:
    header('Access-Control-Allow-Origin: *');
  6. 这里没有选项,所以我想我伸手去看看是否有人可以帮助我。

1 个答案:

答案 0 :(得分:0)

如果这是真的"我在浏览器中输入了网址,我就能够得到结果。"

然后应该没问题。

您需要修复:"我已尝试使用cURL,但我遇到了例外。"

从来没有一个链接适用于浏览器,我无法使用卷曲。

因为你没有包含xml的链接,所以我无能为力。变量太多而你没有提供具体细节。

您可以发布失败的卷曲代码。

这是它的工作原理。

$xml = curl_exec($ch);
$xml = simplexml_load_string($xml);
GoDaddy糟透了,但他们不是这里的罪魁祸首。他们的支持人员更有可能弊大于利。

问题是请求标头。 simplexml_load_file()file_get_contents()都会发送裸请求标头。很容易检测到这些类型的标题并断开连接。