【Bug】 [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed

当你在进行深度学习相关操作时,若因缺少本地的 CA 证书而无法下载资源,下面为你介绍几种解决办法:

方法一:更新 CA 证书

在大多数 Linux 发行版中,你可以使用包管理器来更新 CA 证书。例如,在基于 Debian 或 Ubuntu 的系统中,你可以运行以下命令:

bash 复制代码
sudo apt-get update
sudo apt-get install --reinstall ca-certificates

在基于 Red Hat 或 CentOS 的系统中,你可以使用以下命令:

bash 复制代码
sudo yum update ca-certificates

方法二:指定 CA 证书路径

在某些深度学习框架或工具中,你可以通过设置环境变量来指定 CA 证书的路径。例如,在 Python 中使用 requests 库时,可以通过设置 REQUESTS_CA_BUNDLE 环境变量来指定 CA 证书的路径:

python 复制代码
import os
import requests

os.environ['REQUESTS_CA_BUNDLE'] = '/path/to/your/cacert.pem'

response = requests.get('https://example.com')
print(response.text)

方法三:临时忽略 SSL 验证(不推荐用于生产环境)

在测试或开发环境中,你可以临时忽略 SSL 验证。但需要注意的是,这种方法存在安全风险,不建议在生产环境中使用。

在 Python 的 requests 库中,可以通过设置 verify=False 来忽略 SSL 验证:

python 复制代码
import requests

response = requests.get('https://example.com', verify=False)
print(response.text)

方法四:手动下载 CA 证书

你可以从 Mozilla 的官方仓库手动下载 CA 证书:

bash 复制代码
wget https://curl.se/ca/cacert.pem

然后将下载的 cacert.pem 文件放置在合适的位置,并按照方法二的步骤指定证书路径。

你可以依据自身的具体状况,选择合适的解决办法。

相关推荐
极地星光1 小时前
TCP/IP 网络编程面试题及解答
网络·网络协议·tcp/ip
Lucky高3 小时前
HTTP和HTTPS复习
网络协议·http·https
hhh123987_5 小时前
以太网基础⑥ ZYNQ PS端 基于LWIP的TCP例程测试
网络·网络协议·tcp/ip
Lfsd5 小时前
根据ip获取地址库
网络·网络协议·tcp/ip
GOATLong10 小时前
传输层协议TCP
c语言·开发语言·网络·c++·网络协议·tcp/ip
DemonAvenger11 小时前
HTTP/2在Go中的实现与优化
网络协议·架构·go
程序员良辰12 小时前
URL与URI:互联网世界的“门牌号“与“身份证“
java·网络协议
摘星编程12 小时前
MCP协议深度解析:客户端-服务器架构的技术创新
网络协议·技术创新·系统架构设计·mcp协议·客户端服务器架构
Arwen3031 天前
解密国密 SSL 证书:SM2、SM3、SM4 算法的协同安全效应
算法·安全·ssl
bksheng1 天前
【SSL证书校验问题】通过 monkey-patch 关掉 SSL 证书校验
网络·爬虫·python·网络协议·ssl