通配符CNAME和通配符MX记录

时间:2014-03-12 23:30:15

标签: heroku amazon-web-services dns amazon-route53

我们正在从Engine Yard迁移到Heorku。奋斗是Heroku使用CNAME记录。

我想在Route53上设置以下记录(切换到另一个DNS提供商是最后的手段,我更愿意保留AWS,因为我们在那里使用了很多其他服务。)

CNAME www.example.com corporate-site.wpengine.com
CNAME *.example.com   example.herokuapp.com
MX    *.example.com   1 mailgun.org
MX      example.com   1 aspmx.l.google.com

这个想法是有人可以去demo.example.com并获得heroku申请。他们也可以通过电子邮件发送support@example.com,这将转到正常的Gmail收件箱。但是当他们向post@demo.example.com发送电子邮件时,MailGun会处理该电子邮件。例如,Craiglist使用此方法回复帖子。

上面的DNS设置对Route53无效。这是因为CNAME记录名称在所有记录类型中必须是唯一的。这不是一个问题,但A记录就是以前设置的方式。

请注意,此处不会执行简单的301重定向。我们希望demo.example.com始终指向demo.example.com。 heroku应用程序使用每个子域来确定要加载的帐户(或者如果您考虑Craiglist示例,单独的地理区域,我们不希望仅重定向到一个区域并且具有我们动态创建的许多区域。)< / p>

解决此问题的推荐方法是什么?

2 个答案:

答案 0 :(得分:2)

  

我发现Route53支持Alias记录,但不支持他们自己的网络

解决方法在这里:

https://devcenter.heroku.com/articles/route-53#naked-root-domain

基本上:

  1. 创建一个名为yourdomain.com的S3存储桶,并将其重定向到www.yourdomain.com
  2. 在Route 53上,创建一个A记录别名,以指向Naked/root yourdomain.comwww.yourdomain.com
  3. 的广告素材
  4. 最后,为yourapp.herokuapp.com创建一个指向{{1}}
  5. 的CNAME记录

    应该这样做。

答案 1 :(得分:0)

在与Heroku的支持,Mailgun支持以及许多人交谈之后。很明显,Route53无法做到这一点。

要实现此目的,您需要使用ALIAS记录或ANAME记录。 Route53仅支持对您自己的AWS账户内的端点进行别名。因此,它至今尚无法满足他们的服务。

我们切换到Heroku推荐的DNSMadeEasy并且表现非常好。我发现界面非常不直观,但你只需要做一次。我需要做的就是创建一个指向heroku的通配符ANAME记录,其他一切工作正常。

我建议您结帐DNSimple,他们的界面很棒,我喜欢他们的服务。它们不像DNSMadeSimple那样成熟,但它们使用起来肯定更友好。我希望有一天能使用他们的服务。