几个月前,我从 Gandi.net 购买了通配符 SSL 证书,购买后立即在 Heroku 以外的其他托管服务上成功使用了它。我现在需要在 Heroku 托管的应用程序上保护一个新的子域。
遵循这些说明...
https://devcenter.heroku.com/articles/ssl-endpoint#provision-the-add-on
...我进入了:
$ heroku certs:add ~/Desktop/certificate-32703.crt ~/Desktop/private.key
Resolving trust chain... done
Adding SSL Endpoint to dp-heroku-ssl... failed
! Certificate is no longer valid. The 'Not After' date restriction on the certificate has passed.
该证书本身的有效期是 2017 年。
我发现唯一一个对“Not After”参数的引用: https://www.openssl.org/docs/apps/verify.html
最后的操作是检查证书链的有效性。根据当前系统时间以及证书中的 notBefore 和 notAfter 日期检查有效期。此时还会检查证书签名。
我已经向 Gandi 和 Heroku 提交了票证。我会发布任何有用的回复。
答案1
令人尴尬的是,它告诉我的只是一件简单的事情:证书已过期。我以为的证书并没有过期。但我拿错了 .crt 文件。它是另一个已过期的证书。#facepalm
一旦我使用正确的 .crt 文件,它就立即起作用。