我有一个 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 扩展解决了错误