加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php cURL https链接错误:Unknown SSL protocol error in connection to

发布时间:2023-09-28 10:47:47 所属栏目:PHP教程 来源:
导读:因爆出“OpenSSL Heartbleed”与“SSLv3中间人攻击”等漏洞,很多平台关闭掉SSLv2、SSLv3版本支持,不再支持部分使用SSLv2、 SSLv3或更低版本的客户端调用如微信公众平台等。

如果cURL操作ht
因爆出“OpenSSL Heartbleed”与“SSLv3中间人攻击”等漏洞,很多平台关闭掉SSLv2、SSLv3版本支持,不再支持部分使用SSLv2、 SSLv3或更低版本的客户端调用如微信公众平台等。

如果cURL操作https的url,请附带如下选项即可:

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

curl_setopt($ch, CURLOPT_SSLVERSION, 1);

例子:

PHP CURL HTTPS POST 
function vpost($url,$data){ // 模拟提交数据函数 
    $curl = curl_init(); // 启动一个CURL会话 
    curl_setopt($curl, CURLOPT_URL, $url); // 要访问的地址 
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查 
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1); // 从证书中检查SSL加密算法是否存在 
    curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); // 模拟用户使用的浏览器 
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // 使用自动跳转 
    curl_setopt($curl, CURLOPT_AUTOREFERER, 1); // 自动设置Referer 
    curl_setopt($curl, CURLOPT_POST, 1); // 发送一个常规的Post请求 
    curl_setopt($curl, CURLOPT_POSTFIELDS, $data); // Post提交的数据包 
    curl_setopt($curl, CURLOPT_TIMEOUT, 30); // 设置超时限制防止死循环 
    curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容 
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回 
    $tmpInfo = curl_exec($curl); // 执行操作 
    if (curl_errno($curl)) { 
       echo 'Errno'.curl_error($curl);//捕抓异常 
    } 
    curl_close($curl); // 关闭CURL会话 
    return $tmpInfo; // 返回数据 

 
$url = "https://xxx.xxx.xxx/xxx"; 
$data ="x=xxxxxx"; 
$result = vpost($url,$data); 
 

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章