我遵循一些build议,指向一个Heroku应用程序的域名。 我在说的post可以在这里和这里find。 从命令行我将自定义域添加到我的应用程序
$ heroku domains:add www.myapp.com $ heroku domains:add myapp.com
然后我将这些configuration添加到我的Gandi Zones中
@ 300 IN A 174.129.212.2 @ 300 IN A 75.101.145.87 @ 300 IN A 75.101.163.44 imap 300 IN CNAME access.mail.gandi.net. pop 300 IN CNAME access.mail.gandi.net. smtp 300 IN CNAME relay.mail.gandi.net. webmail 300 IN CNAME agent.mail.gandi.net. www 300 IN CNAME myapp.herokuapp.com. @ 300 IN MX 50 fb.mail.gandi.net. @ 300 IN MX 10 spool.mail.gandi.net.
一切工作正常http://www.myapp.com ,但在裸域http://myapp.com我从Heroku得到一个应用程序错误 。
如何解决这个问题呢?
如果您的DNS提供商允许,则应将带有CNAME的裸域(“@”)别名到您的应用程序。
@ 300 IN CNAME myname.herokuapp.com.
Cloudflare允许这样做,但并不是所有的DNS提供者都这样做,因为它显然不符合规范。 Heroku依靠它。 将Heroku IP用作Alogging已被弃用,并可能导致问题。
不要这样做。 根据DNS规范,CNAMElogging不能与任何其他DNStypes共存,这就是CNAME通常不被允许用于根域的原因。
使用CNAME会阻止任何其他DNSlogging正常工作,例如排除为您的域configurationMXlogging的可能性,从而阻止您接收该域的电子邮件。
您将无法正确发送电子邮件,因为TXT和SPF将被忽略。
在这种情况下解决问题的唯一方法是: