我已经按照Heroku的Automated Certificate Management说明通过LetsEncrypt(LetsEncrypt和heroku !!)为我的Ruby Sinatra应用程序生成SSL证书,但为我的自定义域生成SSL证书是失败。
激活自动证书管理后,我的应用程序的heroku域名将按照预期从* .herokuapp.com更改为* .herokudns.com。
我已相应更新了我的Google域记录,但Google Domain不允许将域根指定为CNAME记录。相反,根需要通过子域转发指向http(s)://www.mycustomdomain.com,即
mycustomdomain.com --> http://www.mycustomedomain.com
当heroku的证书生成过程运行时,它预计将验证两个 www.mycustomdomain.com 和 mycustomdomain.com 。似乎域根通过子域转发指向www地址这一事实阻止了域根进行验证。
我是否认为这会导致自定义域SSL证书的生成失败?
在我检查heroku之前,我正在联系stackoverflow社区,任何人都遇到过这个并解决了它?
user@machine1:~/projects/mycustomdomain$ heroku domains
=== mycustomdomain Heroku Domain
mycustomdomain.herokuapp.com
=== mycustomdomain Custom Domains
Domain Name DNS Target
──────────────── ──────────────────────────────
mycustomdomain.com mycustomdomain.com.herokudns.com
www.mycustomdomain.com www.mycustomdomain.com.herokudns.com
mycustomdomain.com --> http://www.mycustomdomain.com
*.mycustomdomain.com --> http://www.mycustomdomain.com
<table style="border:1px solid black; border-collpase">
<tr>
<th>NAME</th>
<th>TYPE</th>
<th>TTL</th>
<th>DATA</th>
</tr>
<tr>
<td>www</td>
<td>CNAME</td>
<td>1h</td>
<td>www.mycustomdomain.com.herokudns.com</td>
</tr>
</table>
作为迟来的更新,我发现以下链接,我已成功用于配置托管在Google Domains上的应用,使用Let的加密SSL:https://medium.com/@connorleech/https-ssl-on-heroku-with-google-domains-as-dns-provider-c55c438556c6
(我提供链接而不是在这里重述信息,因为这是非常多的信息)
答案 0 :(得分:4)
Heroku已确认:
要使用apex域名,我们建议您切换到DNS提供商 支持顶点域的CNAME类功能,例如Cloudflare, 然后重新启用ACM。
这在他们的网站上有记录: https://devcenter.heroku.com/articles/custom-domains#configuring-dns-for-root-domains