【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 文件放置在合适的位置,并按照方法二的步骤指定证书路径。

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

相关推荐
一口一口吃成大V2 小时前
lattice mipi ip开启DESKEW_EN属性(“ENABLED“),输出异常
网络·网络协议·tcp/ip
fen_fen6 小时前
Docker部署PostgreSQL10 开启SSL和证书安装文档
docker·容器·ssl
奇牙coding1236 小时前
OpenAI Realtime API WebSocket 断连 4008/1006 怎么解决?不是 Key 失效,是实时多模态独有的会话超时规则
python·websocket·网络协议·ai
Helen_cai6 小时前
OpenHarmony http 网络请求封装与全局拦截实战(API Version23 + 适配版)
网络·网络协议·http·华为·harmonyos
刘马想放假6 小时前
生成树协议 STP、RSTP、MSTP 分析:二层环网如何既冗余又不环路
运维·网络协议
发光小北8 小时前
SSF-BOX-200 PLC 数据采集网关如何应用?
网络协议
weixin_545019329 小时前
Nginx 配置SSL实现HTTPS访问
nginx·https·ssl
我今晚不熬夜1 天前
Java语言实现Modbus协议通过用串口读取数据(以RTU为例)
java·网络协议
DLYSB_1 天前
《从零开始搭建机房轻量化“声光告警”系统:基于 HTTP API 与 TTS 的运维实践》
运维·网络协议·http·报警灯
ZhengEnCi1 天前
N3A-一个端口只能给一个程序使用吗?
网络协议