Gandi.net和Heroku域路由

Pat*_*ick 12 dns heroku

我的.io域适用于www.domain.io,但不适用于domain.io版本.以下是我尝试过的每个版本和修订版,每个版本和修订版之间有足够的时间.我...

@ 10800 IN A 174.129.212.2
@ 10800 IN A 75.101.145.87
@ 10800 IN A 75.101.163.44
blog 10800 IN CNAME blogs.vip.gandi.net.
imap 10800 IN CNAME access.mail.gandi.net.
pop 10800 IN CNAME access.mail.gandi.net.
smtp 10800 IN CNAME relay.mail.gandi.net.
webmail 10800 IN CNAME webmail.gandi.net.
www 10800 IN CNAME domain.herokuapp.com
@ 10800 IN MX 50 fb.mail.gandi.net.
@ 10800 IN MX 10 spool.mail.gandi.net.

@ 10800 IN A 174.129.212.2
@ 10800 IN A 75.101.145.87
@ 10800 IN A 75.101.163.44
www 10800 IN CNAME domain.herokuapp.com

@ 10800 IN A 174.129.212.2
@ 10800 IN A 75.101.145.87
@ 10800 IN A 75.101.163.44
www 10800 IN CNAME domain.herokuapp.com.
Run Code Online (Sandbox Code Playgroud)

@由于Gandi和Heroku设置问题而删除了行

www 10800 IN CNAME domain.herokuapp.com.
Run Code Online (Sandbox Code Playgroud)

从阅读其他答案,如如何设置指向Heroku应用程序的顶点域(无www)的DNS?,似乎最好从根域重定向到www.还有其他方法吗?

gandi.net的线路也是必要的吗?

小智 18

似乎最好从根域重定向到带有www的域.还有其他方法吗?

截至目前,没有.不幸的是,Gandi不使用ALIAS记录,并且A记录不能用于Heroku,因为Heroku不使用固定的IP地址.

Heroku和Gandi识别的记录类型是CNAME记录,不能用于裸域.或者,至少,不应该用于裸域.请参阅https://superuser.com/questions/264913/cant-set-example-com-as-a-cname-record.

对于任何迷路的人来说,寻找实现这个目标的方法,这是我的解决方案.

步骤1:在Gandi中,设置DNS区域文件.

Name  Type     Value

@     A        217.70.184.38  # Gandi's server
*     CNAME    my-app.herokuapp.com.  # trailing . is required
www   CNAME    my-app.herokuapp.com.  # trailing . is required
Run Code Online (Sandbox Code Playgroud)

步骤2:在Gandi中,为域设置Web转发.

转发类型为"直接(永久)",将子域留空,并将转发地址设置为www.my-custom-domain.com.

第3步:在Heroku中,设置Heroku自定义域.

Domain Name                 DNS Target

*.my-custom-domain.com      my-app.herokuapp.com
my-custom-domain.com        my-app.herokuapp.com
www.my-custom-domain.com    my-app.herokuapp.com
Run Code Online (Sandbox Code Playgroud)


Ant*_*den 2

看来最好从根域重定向到带有 www 的域。还有其他办法吗?

某些 DNS 提供商具有 ALIAS 记录类型,该类型会在请求时合成裸域上的 A 记录。这和 URL 记录是唯一的选择,因为 Heroku 基本上已经在当前堆栈中删除了固定 IP 地址的使用。

gandi.net 的线路也有必要吗?

如果您不使用 Gandi 发送电子邮件或撰写博客,则可以删除所有 gandi 行。MX 记录告诉 SMTP 服务器使用 Gandi 的邮件交换来尝试传递邮件,而 CNAME 记录只是通过您的自定义域访问这些 Gandi 服务的方法。