1

我有一个 PHP 脚本,它接收 GET 数据并使用 stream_get_contents 将其发布到另一个 URL。

header("Access-Control-Allow-Origin: http://submitting-domain.com");
$url = https://example.url
$getData = "Example data";
$getDataLength = strlen($getData);
$opts = array(
      'http'=>array(
      'method'=>"POST",
      'header'=>"Content-type: text/xml\r\n" .
                "Content-Length: ".$getDataLength."\r\n",
                "content"=>$getData
        )
    );

$ctx = stream_context_create($opts);
$fp = fopen($url, 'rb', false, $ctx);
$response = stream_get_contents($fp);
fclose($fp);
return $response;

当 URL 为http://example.url时,一切正常,但是当我将其更改为https://example.url时,它无法连接。我找不到太多关于如何使用安全连接创建流的文档,但一个建议是确保安装了 open_ssl 扩展。

不幸的是,事实证明很难做到这一点(它在客户端的服务器上),但我想知道是否有人有任何想法或可以看到我是否做错了什么?

我尝试将初始 opts 数组 http 键设置为 https,但没有任何改变。

任何帮助表示赞赏!谢谢。

编辑:在 PHP 中启用 open_ssl 扩展解决了错误

4

1 回答 1

0

为什么不尝试使用 CURL 函数?

http://www.php.net/manual/en/curl.examples-basic.php

于 2013-10-23T14:56:47.413 回答