根据 Heroku 提供的信息添加了 DNS 记录,但 URL 仍然无法正确解析

根据 Heroku 提供的信息添加了 DNS 记录,但 URL 仍然无法正确解析

不久前,我在我的注册商 (Namecheap) 注册了域名 www.testapp.id。我希望它指向的应用程序是 Heroku 上托管的 Rails 应用程序。我按照 Heroku 网站上的说明进行操作这里, 具体来说:

您可以通过运行 Heroku CLI 命令来检查自定义域的正确 CNAME 目标:heroku domains -a your_app_name。

  • 在 herokudns.com 可用之前创建的自定义域将显示 your_app_name.herokuapp.com 作为 DNS CNAME 目标。自定义
  • 最近创建的域将显示 your_custom_domain.herokudns.com 作为 DNS CNAME 目标。

您应该根据这些设置设置 DNS CNAME 目标,尽管使用 your_app_name.herokuapp.com 适用于旧自定义域和新自定义域。如果 .herokudns.com 可用于自定义域,那么您应该使用它,因为它将使将来更容易过渡到 Heroku SSL。

我目前在 Namecheap 上仅设置了以下 URL 重定向记录和 CNAME 记录:

Namecheap 记录配置的屏幕截图

在 Heroku 端,当我运行 时heroku domains,我看到以下输出:

[ hello-world ] $  heroku domains
=== hidden-beach-71618 Heroku Domain
hidden-beach-71618.herokuapp.com

=== hidden-beach-71618 Custom Domains
Domain Name  DNS Record Type  DNS Target
───────────  ───────────────  ──────────────────────────────────────────────────────────
testapp.id   ALIAS or ANAME   concentric-wildfowl-rsf834gfj5eft9k4mqvpvjkp.herokudns.com

在浏览器中导航到hidden-beachURL 可以成功显示应用程序,但导航到 则http://www.testapp.id不行。我等了大约 30 分钟才重试,我希望这段时间足以让结果传播。

在我的 CLI 中执行dig www.testapp.id结果如下:

[ hello-world ] $  dig www.testapp.id

; <<>> DiG 9.10.6 <<>> www.testapp.id
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57445
;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 13, ADDITIONAL: 17

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.testapp.id.            IN  A

;; ANSWER SECTION:
www.testapp.id.     1703    IN  CNAME   concentric-wildfowl-rsf834gfj5eft9k4mqvpvjkp.herokudns.com.
concentric-wildfowl-rsf834gfj5eft9k4mqvpvjkp.herokudns.com. 59 IN A 52.207.111.186
concentric-wildfowl-rsf834gfj5eft9k4mqvpvjkp.herokudns.com. 59 IN A 52.22.236.254
concentric-wildfowl-rsf834gfj5eft9k4mqvpvjkp.herokudns.com. 59 IN A 34.199.255.1
concentric-wildfowl-rsf834gfj5eft9k4mqvpvjkp.herokudns.com. 59 IN A 52.45.248.161
concentric-wildfowl-rsf834gfj5eft9k4mqvpvjkp.herokudns.com. 59 IN A 34.226.180.131
concentric-wildfowl-rsf834gfj5eft9k4mqvpvjkp.herokudns.com. 59 IN A 54.236.200.27
concentric-wildfowl-rsf834gfj5eft9k4mqvpvjkp.herokudns.com. 59 IN A 34.206.9.96
concentric-wildfowl-rsf834gfj5eft9k4mqvpvjkp.herokudns.com. 59 IN A 52.203.66.95

;; AUTHORITY SECTION:
com.            155416  IN  NS  k.gtld-servers.net.
com.            155416  IN  NS  g.gtld-servers.net.
com.            155416  IN  NS  c.gtld-servers.net.
com.            155416  IN  NS  f.gtld-servers.net.
com.            155416  IN  NS  b.gtld-servers.net.
com.            155416  IN  NS  h.gtld-servers.net.
com.            155416  IN  NS  i.gtld-servers.net.
com.            155416  IN  NS  a.gtld-servers.net.
com.            155416  IN  NS  l.gtld-servers.net.
com.            155416  IN  NS  j.gtld-servers.net.
com.            155416  IN  NS  d.gtld-servers.net.
com.            155416  IN  NS  e.gtld-servers.net.
com.            155416  IN  NS  m.gtld-servers.net.

;; ADDITIONAL SECTION:
a.gtld-servers.net. 5594    IN  A   192.5.6.30
b.gtld-servers.net. 8284    IN  A   192.33.14.30
b.gtld-servers.net. 6036    IN  AAAA    2001:503:231d::2:30
c.gtld-servers.net. 155416  IN  AAAA    2001:503:83eb::30
d.gtld-servers.net. 155416  IN  AAAA    2001:500:856e::30
e.gtld-servers.net. 15649   IN  A   192.12.94.30
e.gtld-servers.net. 15509   IN  AAAA    2001:502:1ca1::30
f.gtld-servers.net. 14627   IN  A   192.35.51.30
f.gtld-servers.net. 11150   IN  AAAA    2001:503:d414::30
g.gtld-servers.net. 147526  IN  A   192.42.93.30
h.gtld-servers.net. 6533    IN  A   192.54.112.30
i.gtld-servers.net. 155416  IN  AAAA    2001:503:39c1::30
j.gtld-servers.net. 147526  IN  A   192.48.79.30
k.gtld-servers.net. 155416  IN  A   192.52.178.30
l.gtld-servers.net. 147526  IN  AAAA    2001:500:d937::30
m.gtld-servers.net. 9832    IN  AAAA    2001:501:b1f9::30

;; Query time: 57 msec
;; SERVER: 10.100.8.11#53(10.100.8.11)
;; WHEN: Wed May 08 16:40:51 PDT 2019
;; MSG SIZE  rcvd: 819

我在答案部分看到我的 URL 解析为 Heroku 的 DNS URL,根据 Heroku 的指示,这正是我所期望的。

另外,当我跟踪服务器日志(heroku logs -t来自我的本地项目存储库)时,我会看到日志,但是刷新浏览器时看不到任何活动,所以我知道服务器没有收到请求。

除了使用给我的 herokudns.com 域名创建 CNAME 记录之外,我还尝试创建 NS 记录并(未成功)创建 A 记录(尽管我知道 A 记录仅接受 IP)。

我的问题是——我忽略了什么?我没能创建正确类型的记录,还是有其他我不知道的事情?

相关内容