Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ssl Heroku自动证书管理在一个域中失败_Ssl_Heroku_Ssl Certificate_Namecheap_Dnsimple - Fatal编程技术网

Ssl Heroku自动证书管理在一个域中失败

Ssl Heroku自动证书管理在一个域中失败,ssl,heroku,ssl-certificate,namecheap,dnsimple,Ssl,Heroku,Ssl Certificate,Namecheap,Dnsimple,我正试图通过Heroku为我的应用程序获得SSL认证,但两个域名中的一个都失败了 我在2017年3月之前创建了dyno,因此我必须运行heroku certs:auto:enable,如前所述 然后,heroku域返回: Domain Name DNS Record Type DNS Target ─────────────── ─────────────── ───────────────────────────── example.com ALIA

我正试图通过Heroku为我的应用程序获得SSL认证,但两个域名中的一个都失败了

我在2017年3月之前创建了dyno,因此我必须运行heroku certs:auto:enable,如前所述

然后,
heroku域
返回:

Domain Name         DNS Record Type  DNS Target
───────────────     ───────────────  ─────────────────────────────
example.com         ALIAS or ANAME   example.com.herokudns.com
www.example.com     CNAME            www.example.com.herokudns.com
Domain             Status
───────────────    ────────────
example.com        Failing
www.example.com    OK          
这似乎符合我的观点

无论如何,
heroku certs:auto
返回:

Domain Name         DNS Record Type  DNS Target
───────────────     ───────────────  ─────────────────────────────
example.com         ALIAS or ANAME   example.com.herokudns.com
www.example.com     CNAME            www.example.com.herokudns.com
Domain             Status
───────────────    ────────────
example.com        Failing
www.example.com    OK          
我承认我对域、DNS等设置相当无知。因此,我认为这可能是一个非常简单的错误。然而,我读了一些类似的问题,例如or,但仍然不知道哪里出了问题

www.example.com
还行,但
example.com
失败的事实让我更加困惑。不幸的是,我收到了一封没有通知的电子邮件

廉价的 我想问题不是在Heroku上,就是在我买域名的地方。那是namescape.com

选项卡上,我有:

NAMESERVERS namecdns

REDIRECT DOMAIN   Source URL     Destination
                  example.com    http://www.example.com
高级DNS
选项卡上:

Type                  Host    Value                               TTL
-------------         -----   -------------------------------     -------
CNAME Record          www     example.com.herokudns.com           Automatic
TXT Record            @       google-site-verification...         Automatic
URL Redirect Record   @       http://www.example.com/ Unmasked
我做错了什么


更新 这个问题似乎是由于价格便宜。我在Heroku上找到了:

问题 用户在指向其根域(又名apex)时遇到问题 域/裸域)添加到他们的Heroku应用程序,或者设置 正确的DNS记录,或通过HTTPS访问它

决议 Heroku上的根域通常需要使用“类似CNAME”的记录 称为别名或ANAME记录

不幸的是,一些流行的DNS主机,如GoDaddy, Namecheap、Bluehost和其他不支持这些类型的记录。 相反,他们倾向于提供以下内容:

  • A唱片

  • URL重定向/转发

这两个选项都有注意事项

令人惊讶的是,我没有找到任何地方可以清楚地解释所有步骤。到目前为止,我所做的是:

  • 在支持此功能的DNS主机上打开帐户。我采取了简单的行动。在撰写本文时,价格从5欧元/月开始,但有一个免费试用月
  • 转让域名的费用为14欧元/年,因此我只是将域名添加到DNSimple中,以创建DNS记录
  • 然后是DNSimple上的配置。我按照文档中的步骤1进行操作;忽略步骤2,因为Heroku的ACM已经完成了;对于第三步,这篇文章非常有用。我手动添加了一条
    别名记录
    ,还添加了一条
    CNAME
    记录,如下所示:

    Type        Name                   Content
    ─────       ───────────────        ───────────────────────
    ALIAS       example.commyapp.com.herokudns.com
    CNAME       www.example.commyapp.com.herokudns.com
    
  • 开始时,一切正常,浏览器显示以下错误:

    无法访问此网站 找不到www.example.com的服务器IP地址

    检查时,我发现唯一的可能性是
    名称服务器传播延迟
    ,所以我等待。感觉时间很长,但实际上不到一个小时网站就重新上线了


    但是,SSL认证在超过48小时后一直失败…

    供将来参考:在联系Heroku支持部门后,他们手动刷新了我的证书请求,并最终为我的应用程序颁发了证书…

    在此处检查答案,尤其是CloudFlare解决方案,因为它是免费的

    自动证书管理还为您提供免费的SSL证书 来自各地的https。你不需要买证书

    但是,namecheap不适用于ACM,因为它们不允许 您的“apex”域的“别名”记录,即您的域没有 子域,所以不是

    您可以选择切换到支持“别名”的dns注册器 像dnsimple这样的记录。他们每月收费5美元 域名注册费

    或者使用SSL附带的免费cloudflare实例

    如果您已经购买了证书,可以通过 SSL插件

    我在一些应用程序上使用DNSimple/Heroku ACM,在一些应用程序上使用cloudflare 其他的。两者都很好,但cloudflare是免费的,可以为您提供 CDN也是