我刚刚更改了 AppEngine 上某个特定域的 SSL 证书。虽然我预计在新的证书 (CRT、IA) 生效之前 Google 系统可能会出现传播延迟,但我在通过多台机器上的多个浏览器使用 SSL 访问网站时没有遇到问题,但我一直在 Python 客户端上收到验证错误。我还在找到的每个在线 SSL 检查器网站上不断收到“未找到 SSL 证书”的提示。
有谁能解释为什么会发生这种情况吗?
答案1
这可能表明 AppEngine 没有发送中级证书。您可以使用 openssl 进行验证:
openssl s_client -showcerts -connect yourapp.com:443
输出将显示 Web 服务器发送的证书链中的所有证书。如果仅显示 1 个,则需要重新上传证书。
连接中间证书非常简单,只需使用您最喜欢的文本编辑器,在顶部输入证书,在下一行输入中间证书,您将得到一个如下所示的文件:
-----BEGIN CERTIFICATE-----
(Your SSL certificate: BASE64 encoded stuff)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
(Your Intermediate certificate: more BASE64 encoded stuff)
-----END CERTIFICATE-----
答案2
事实证明,AppEngine 最多可能会有一个小时左右的延迟。此外,“openssl s_client”可以检查主机名,但请确保提供“-servername”参数。