Laravel Firebase cURL错误60:SSL证书问题:无法获取本地发行者证书

时间:2019-01-29 18:53:05

标签: php laravel firebase ssl

我刚刚在Laravel上安装了Firebase。但是,当我尝试执行任何操作时,都会收到消息:cURL error 60: SSL certificate problem: unable to get local certificate issuer (see http://curl.haxx.se/libcurl/c/libcurl-errors.html )。 我按照herehere所述的步骤进行操作,但问题并未消失。 在Laravel上安装Firebase时,我遵循了此tutorial和此document的过程。 因此,即使下载最后一个 cacert.pem 并通过;curl.cainfo修改行curl.cainfo = "C: \ wamp64 \ bin \ php \ php7.2.10 \ cacert.pem"并重新启动服务器,它也没有任何改变,问题仍然存在。 有人能帮我吗?我真的开始感到绝望。

2 个答案:

答案 0 :(得分:1)

如果您使用“PHP artisan serve”命令为您的应用程序提供服务,则意味着您使用的是 PHP 内置网络服务器,这意味着您的所有 .ini 文件配置都不会影响您的应用程序。如果您在本地环境中并遵循 Zishan Denmark Neno 的回答,请使用 Wamp 或 Lamp 来为您的 Laravel 应用程序提供服务。

答案 1 :(得分:0)

您需要从以下位置下载CA捆绑包:https://curl.haxx.se/docs/caextract.html

下载后,将其保存到您的C:\wamp64\目录中,然后将以下行添加到php.ini文件的底部:

url.cainfo="C:/wamp64/cacert-2019-01-23.pem"
openssl.cafile="C:/wamp64/cacert-2019-01-23.pem"

最后,重新启动WAMP。

除此之外,您还可以设置以下cURL选项(以防由于自签名或错误的SSL证书而导致上述操作无效):

curl_setopt($this->ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($this->ch, CURLOPT_SSL_VERIFYPEER, 0);