云服务器网:购买云服务器和VPS必上的网站!

php:php如何访问https

php如何访问https在php中使用curl库访问https,具体方法以下:function curlPost($url, $data = array(), $timeout = 30, $CA = true){ $cacert = getcwd() . \’

php如何访问https

在php中使用curl库访问https,具体方法以下:

function curlPost($url, $data = array(), $timeout = 30, $CA = true){

$cacert = getcwd() . '/cacert.pem'; //CA根证书

$SSL = substr($url, 0, 8) == "https://" ? true : false;

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);

curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout⑵);

if ($SSL && $CA) {

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true); // 只信任CA颁布的证书

curl_setopt($ch, CURLOPT_CAINFO, $cacert); // CA根证书(用来验证的网站证书是否是是CA颁布)

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); // 检查证书中是否是设置域名,并且是否是与提供的主机名匹配

} else if ($SSL && !$CA) {

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 信任任何证书

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 1); // 检查证书中是否是设置域名

}

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:')); //避免data数据太长问题

curl_setopt($ch, CURLOPT_POST, true);

curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

//curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); //data with URLEncode

$ret = curl_exec($ch);

//var_dump(curl_error($ch)); //查看报错信息

curl_close($ch);

return $ret;

}

本文来源:https://www.yuntue.com/post/59221.html | 云服务器网,转载请注明出处!

关于作者: yuntue

云服务器(www.yuntue.com)是一家专门做阿里云服务器代金券、腾讯云服务器优惠券的网站,这里你可以找到阿里云服务器腾讯云服务器等国内主流云服务器优惠价格,以及海外云服务器、vps主机等优惠信息,我们会为你提供性价比最高的云服务器和域名、数据库、CDN、免费邮箱等企业常用互联网资源。

为您推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注