我买了一个Gandi.net SSL证书,我正在学习这个教程 。
和… Pem无效/密钥不符合Pem证书。
我试了三次,我真的不知道发生了什么事。
你能帮我吗 ?
当我试图在Heroku上使用Gandi证书时,我想可能遇到类似的问题。 Heroku一直抱怨说我的PEM文件与我的密钥不匹配,运行openssl x509 -noout -modulus -in example.com.crt给了我一个“ unable to load certificate ”的错误。
这个问题非常简单:当我从Gandi下载证书时,证书文本和“–END CERTIFICATE …”行之间有一个额外的空白行:
ghjg86GHHJ47Nmmmaiuoj8bUW8bbn/9w78sTxuguHQWjhuhuQWQhuybyyA== -----END CERTIFICATE-----
当我删除空白行,一切工作完美:
ghjg86GHHJ47Nmmmaiuoj8bUW8bbn/9w78sTxuguHQWjhuhuQWQhuybyyA== -----END CERTIFICATE-----
我想当你创build最终的PEM文件,你想连接你的证书和你的CA证书,而不是你的证书和你的私钥:
cat example.com.crt certificate-issuer.com.pem > example.com.pem
最后,我发现http://blog.bloom.io/2011/09/16/https-ssl-table-stakes/对整个过程非常有帮助。
不知道这是否是相关的,但我有类似的问题使用Heroku的SSL端点,并最终做了一个博客文章:
编辑:用Heroku,你需要确保你的证书是在正确的顺序。 如果你已经推送/添加了一个搞砸了的证书,你可以尝试以不同的顺序安排它们(效率不高,但它完成了工作),你可以检查出Heroku SSL医生,并利用“旁路”选项放弃通常的show-stoppers,这将允许你添加/更新新的证书。
TL; DR =>使用Heroku SSL端点时,一定要确保包含整个包并确保该包的内容按正确顺序排列。 尝试Heroku SSL医生,如果你有问题。
我从另一个提供商处获得了我的证书,但是我将公共证书和私钥保存在不同的文件中,并且工作正常。