出现SSL certificate problem: unable to get local issuer certificate 解决方法

解决方法

一、 出错原因
错误提示:SSL certificate problem: unable to get local issuer certificate
是在使用 curl 时出错,
意思是“SSL证书问题:无法获取本地颁发者证书”

二、 解决办法
有两种方式:
2-1) 检查你安装的证书路径
看下跟你 curl 中使用的是否一致

2-2) curl 取消 ssl 检查
如果你没有证书,
可以在 curl 相关代码中添加下面的代码

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

表示不检查 ssl

这种方式一般用于本地调试。

function curl_post1($url, $data = array(), $header = array(), $timeout = 80, $port = 80)
{
	$ch = curl_init ( $url );
	curl_setopt ( $ch, CURLOPT_POST, 1 );
	curl_setopt ( $ch, CURLOPT_HEADER, 0 );
	curl_setopt ( $ch, CURLOPT_FRESH_CONNECT, 1 );
	curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
	curl_setopt ( $ch, CURLOPT_FORBID_REUSE, 1 );
	curl_setopt ( $ch, CURLOPT_TIMEOUT, 30 );
	curl_setopt ( $ch, CURLOPT_HTTPHEADER, array ('Content-Type: application/json; charset=utf-8', 'Content-Length: ' . strlen ( $data ) ) );
	curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 	//todo::增加改行
	$result = array();
	$result['result'] = curl_exec ( $ch );
	echo $functionName . " : Request Info : url: " . $url . " ,send data: " . $data . "  \n";
	echo $functionName . " : Respnse Info : " . $ret . "  \n";
	curl_close ( $ch );
	return $result;
}

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值