在laravel中使用guzzlehttp报错:cURL error 60: SSL certificate problem: unable to get local issuer certificate。

产生这个错误的原因证书校验失败。

临时解决办法

设置guzzle的verify为flase,该办法不校验证书,可能会产生安全隐患。

$client->setDefaultOption('verify', false);

正规解决办法

1.下载cacert.pem文件,下载网址:https://curl.haxx.se/ca/cacert.pem

2.放在/php-7.2.1-nts/extras/ssl 文件下【本地PhpStudy环境】

3.修改php.ini文件,将 curl.cainfo 和 openssl.cafile 的值修改为上面存放 cacert.pem 的路径。

curl.cainfo = "F:/MyProgram/PHPTutorial/php/php-7.2.1-nts/extras/ssl/cacert.pem"
openssl.cafile = "F:/MyProgram/PHPTutorial/php/php-7.2.1-nts/extras/ssl/cacert.pem"