我得到以下错误使用卷曲:

curl: (77) error setting certificate verify locations:
  CAfile: /etc/ssl/certs/ca-certificates.crt
  CApath: none

如何设置证书验证位置?


当前回答

创建一个文件~/。使用以下内容进行Curlrc

cacert=/etc/ssl/certs/ca-certificates.crt

如下

echo "cacert=/etc/ssl/certs/ca-certificates.crt" >> ~/.curlrc

其他回答

此错误与缺少一个包有关:ca-certificates。安装它。

在Ubuntu Linux(以及类似的发行版)中:

# apt-get install ca-certificates

通过Apt-Cyg在CygWin中

# apt-cyg install ca-certificates

在Arch Linux下(树莓派)

# pacman -S ca-certificates

文档告诉我们:

该包包含CA证书的PEM文件,允许基于SSL的应用程序检查SSL连接的真实性。

在Debian——压缩包ca-certificates的详细信息

curl默认使用“bundle”执行SSL证书验证 的证书颁发机构公钥(CA certs)。默认的 Bundle名为curl-ca-bundle.crt;您可以指定一个备用文件 使用——cacert选项。

如果此HTTPS服务器使用由中表示的CA签名的证书 ,证书验证可能失败,由于 证书的问题(它可能过期了,或者名称可能过期了 不匹配URL中的域名)。

如果您想关闭curl对证书的验证,请使用 -k(或——insecure)选项。

例如

curl --insecure http://........

视窗:-

证书从https://curl.se/docs/caextract.html下载 重命名cacert。Pem到curl-ca-bundle.crt 将文件添加到以下任何位置

查看详情https://curl.se/docs/sslcerts.html

只需创建文件夹,这在您的系统中是缺失的..

/ etc / pki / tls证书

并使用以下命令创建文件,

Sudo apt-get install ca-certificates

然后复制并粘贴证书到目标文件夹,这是显示在您的错误..我的是“with message”错误设置证书验证位置:CAfile: /etc/pki/tls/certs/ca-bundle.请确保您将文件粘贴到错误中提到的确切位置。使用以下命令复制粘贴..

电脑:sudo cp /etc/ssl/证书/呆滞 / etc / pki / tls证书/ ca-bundle crt。

固定的。

在git bash中运行以下命令,这对我来说很好

git config --global http.sslverify "false"