配置Git使用Window的SSL证书信任列表washingtown 发表于 2025-01-22

自建了一个Git服务,在网站上部署了HTTPS证书
在拉取和推送时,出现错误:

SSL certificate problem: unable to get local issuer certificate

查询可知,错误原因是服务器证书不在Git客户端的信任列表里。
网上搜索到的解决方案是关闭Git的ssl验证:

git config --global http.sslVerify

这种方法简单粗暴,但并不安全,而且我的网站使用的也不是自签名证书,为什么Git会不信任呢?
搜索了一圈,发现是因为Git默认使用的是自身的信任证书列表,而我的网站用的是ZeroSSL,这个服务商比较新,大概是没有被Git添加到信任列表里。
可以更新Git的信任列表解决这个问题,但Windows环境下有更好的解决方案,就是配置Git使用Windows系统的SSL证书信任列表:

git config --global http.sslbackend schannel

这样,Windows证书更新时,Git也可以一同更新了。
参考资料:
SSL certificate problem: Unable to get local issuer certificate

本网站已有91722次访问鲁ICP备19064947号-1©2020-2022 washingtown版权所有