如何解决cURL 错误 60:SSL 证书问题:自签名证书参见 https://curl.haxx.se/libcurl/c/libcurl-errors.html 注意:
我在我的 Laravel 7 项目和 XAMPP 7.4.5 中使用 Guzzle,我正在尝试对我的本地 API localhost/events_platforma/view/users 进行 GET 它工作正常,但是当我尝试发出 POST 请求时到 https://localhost/events_platforma/register 它失败并给出 cURL 错误和我的 API 处于 SLIM 上。
我已经添加了这个文件
curl.cainfo = curl.cainfo="C:\xampp\php\extras\ssl\cacert.pem"
但是还是报错
解决方法
本地主机的快速解决方案是使用 verify
为 false 的选项关闭证书验证。
下面是一个简单的小例子
use GuzzleHttp\Client;
$client = new Client([
'base_uri' => 'http://exmaple.org'
]);
$client->request('GET','/',['verify' => false]);
如果您使用的是 laravel 提供的 Http-client,您可以添加这样的 guzzle 选项,
$response = Http::withOptions([
'verify' => false,])->get('http://example.org/');
注意:
尽管 guzzle 建议不要使用它,但如果您正在测试自己的 api,它可以工作。
尽管您只需提供路径即可根据请求简单地添加证书。
Mozilla 提供了一个常用的 CA 包,可以下载 here(由 cURL 的维护者提供)。
// Use a custom SSL certificate on disk.
$client->request('GET',['verify' => '/path/to/cacert.pem']);
阅读有关 https://curl.se/docs/sslcerts.html 证书的更多信息。
从 guzzle docs verify
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。