【问题标题】:Renewing SSL on Heroku & Getting, "Pem is invalid / Key doesn't match the PEM certificate"在 Heroku & Getting 上更新 SSL,“Pem 无效/密钥与 PEM 证书不匹配”
【发布时间】:2012-08-16 01:48:13
【问题描述】:
【问题讨论】:
标签:
heroku
ssl-certificate
【解决方案1】:
我最近更新了在 godaddy 注册的 heroku 托管域的 ssl 证书。我做了以下事情:-(不要在heroku删除旧证书)
- 在godaddy申请续订信用并使用之前的证书签名请求(csr),选择第三方托管域选项并提交。
-
在 Godaddy 颁发证书后,下载证书
“Nginx”服务器。
解压压缩文件,cd 进入目录,合并证书。
cat 48bcdx31xxxx.crt sf_bundle-g2-g1.crt > combined.crt
运行证书更新命令heroku certs:update combined.crt server.key
- 输入 app_name 确认更改。
- 检查您的证书
heroku certs:info --app=app_name
完成!
几秒钟后,应用程序在以前的 ssl 端点 url 上运行。所以,不需要更新 dns。
【解决方案2】:
在 GoDaddy 上更新 SSL 证书后,难以让您的应用再次在 Heroku 上运行的人。这是我解决问题的方法:
-
使用以下命令从 Heroku 中删除旧证书
$ heroku 证书:删除
在 GoDaddy 上更新证书后,下载证书(选择“ngnix”作为 Web 服务器)。
- 解压缩下载的文件,然后进入终端中的文件夹(您应该看到两个文件 - 在我的例子中,我有一个名称很奇怪的文件 82321234a.crt 和 gd_bundle.crt)
-
在此处运行以下命令以创建新的 CRT 文件:
$ cat 82321234a.crt gd_bundle.crt > combined.crt
在您的终端中进入您的应用程序的证书文件夹
-
使用以下命令将新证书添加到 Heroku
$ heroku certs:add combined.crt server.key
而且,就是这样!
我希望这会有所帮助。