【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 小时前
应用层协议 HTTP
网络·网络协议·http
Jay Kay2 小时前
Event loop is closed when AsyncClient exists in multiple event_loops.
bug
yuanjj882 小时前
域格移芯平台模块FTP下载应用
单片机·物联网·网络协议
小李独爱秋3 小时前
Cisco Packet Tracer仿真实验 12:运输层端口
网络·网络协议·计算机网络·智能路由器·仿真实验
xxp43213 小时前
Qt 网络编程 UDP通信
网络·网络协议·udp
草莓熊Lotso6 小时前
unordered_map/unordered_set 使用指南:差异、性能与场景选择
java·开发语言·c++·人工智能·经验分享·python·网络协议
二狗mao13 小时前
Uniapp使用websocket进行ai回答的流式输出
websocket·网络协议·uni-app
1560820721919 小时前
基于7VX690T FPGA实现万兆TCP/IP资源和性能测试
网络协议·tcp/ip·fpga开发
踏浪无痕21 小时前
线上偶发 502 排查:用 Netty 成功复现 KeepAlive 时间窗口案例实战(附完整源码)
运维·网络协议
北京耐用通信1 天前
告别“牵一发而动全身”:耐达讯自动化Profibus PA分线器为石化流量计网络构筑安全屏障
人工智能·网络协议·安全·自动化·信息与通信