gpt4 book ai didi

Python SSL 请求和让我们加密证书

转载 作者:太空狗 更新时间:2023-10-29 20:28:19 26 4
gpt4 key购买 nike

我现在正在努力获得 requests使用 Let's Encrypt 向我的网站执行简单的 GET 请求的库证书。该站点一切正常,我可以从 Chrome 访问它。 (我目前正在运行 OSX El Capitan)。

首先,我尝试向站点发出 GET 请求:

>>> import requests
>>> requests.get('https://example.com')

这给了我:

requests.exceptions.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)

然后我尝试了各种方法,包括获取 Let's Encrypt authority certificate ,并且以下 openssl 命令成功验证了我站点的证书:

> openssl s_client -CAfile ./letsencryptauthorityx1.pem -connect example.com:443

其输出包括底部的以下内容:

...
SSL-Session:
Protocol : TLSv1
Cipher : DHE-RSA-AES256-SHA
Session-ID: ...
Session-ID-ctx:
Master-Key: ...
Key-Arg : None
Start Time: 1452865123
Timeout : 300 (sec)
Verify return code: 0 (ok)
---

也许我在这里遗漏了一些东西,但在我看来,我的网站似乎已经根据我提供的 Let's Encrypt 授权证书进行了验证。所以,我高兴地将我的 Python 代码更改为:

>>> requests.get('https://example.com', verify='./letsencryptauthorityx1.pem')

但我仍然不断收到 requests.exceptions.SSLError 错误。我也尝试过使用授权证书的 DER 格式,但随后我从 requests 收到以下错误:

requests.exceptions.SSLError: unknown error (_ssl.c:2825)

有人可以教我如何解决这个问题吗?

最佳答案

听起来您机器上的 CA CERTS 不是最新的,或者网络服务器没有配置为提供完整的证书链。

关于Python SSL 请求和让我们加密证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34812787/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com