如何解决Python间歇性OpenSSL错误:FileNotFoundError:[Errno 2]没有这样的文件或目录
尝试使用kubernetes客户端库时,我的生产Django网站(在UWSGI下运行)出现间歇性错误。错误似乎是urllib3或OpenSSL。奇怪的是,我可以简单地重新启动服务器,问题就消失了,但是只是暂时的。一段时间后,我再次看到此错误:
Traceback (most recent call last):
File "/srv/hive/lib/python3.6/site-packages/urllib3/util/ssl_.py",line 353,in ssl_wrap_socket
context.load_verify_locations(ca_certs,ca_cert_dir,ca_cert_data)
FileNotFoundError: [Errno 2] No such file or directory
这非常难以解决,因为重新启动服务器会使问题消失了几个小时。我在load_verify_locations
的{{1}}函数中添加了一些额外的日志记录,以查看它试图打开的文件。 urllib3/util/ssl_.py
参数正在传递临时文件ca_certs
。其他两个参数是/tmp/tmp2xng8a6e
。
那么,为什么要使用临时文件,为什么要缺少它?有没有理由删除临时文件,或者为什么urllib3可能没有首先创建临时文件?
这是带有追溯的完整异常:
None
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。