2014-03-12 51 views
1

我們正在從Engine Yard遷移到Heorku。鬥爭與Heroku使用CNAME記錄有關。通配符CNAME和通配符MX記錄

我想設置上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的應用。他們也可以通過電子郵件發送[email protected],這將轉到正常的Gmail收件箱。但是,當他們發送電子郵件至[email protected]時,電子郵件由MailGun處理。例如,Craiglist使用此方法來回復帖子。

上面的DNS設置無效Route53。這是因爲CNAME記錄名稱在所有記錄類型中必須是唯一的。 A記錄不是問題,這是它之前設置的方式。

需要注意的是一個簡單的301重定向就不會在這裏做。我們希望demo.example.com始終指向demo.example.com。 heroku應用程序使用每個子域來確定要加載的帳戶(或者如果您想到Craiglist示例,這是一個單獨的地理區域,我們不希望只重定向到一個區域,並且有很多區域是我們動態創建的)。

解決此問題的建議方法是什麼?

+0

經過一番挖掘,我發現Route53支持別名記錄,但不在他們自己的網絡之外。 http://stackoverflow.com/questions/21295614/heroku-ssl-with-route53。仍然想知道是否有解決方案,這不涉及切換。 –

+1

即使您找到允許您擁有此配置的提供商,您也需要知道它與DNS應該工作的方式基本不一致。根據定義,CNAME意味着不應該有特定主機的其他記錄。對於試圖通過電子郵件發送給您的人而言,正確的MX記錄是CNAME的* target *的MX記錄(也就是CNAME記錄所指向的主機的MX)......這不是什麼你要。但實際上,實現方式各不相同,因此發件人的電子郵件傳送能力可能會有所不同 –

回答

0

交談Heroku的支持,Mailgun支持和你們中許多人後。很明顯,Route53無法做到這一點。

要做到這一點,你需要可以使用ALIAS記錄或ANAME記錄。 Route53僅支持將別名用於您自己的AWS賬戶中的端點。因此,迄今爲止他們的服務仍然無法實現。

我們切換到DNSMadeEasy這是建議的Heroku,並有很好的表現。我覺得界面非常不直觀,但你只需要做一次。我需要做的只是創建一個指向heroku的通配符ANAME,其他一切正常。

我建議您結帳DNSimple,他們的界面很棒,我喜歡他們的服務。它們並不像DNSMadeSimple那樣成熟,但它們肯定更易於使用。我希望有一天能夠使用他們的服務。

2

我發現,Route53支持別名記錄,但不應超出自己的網絡的

的解決辦法是在這裏:

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

基本上是:

  1. 創建S3存儲桶稱爲:yourdomain.com和m AKE重定向到www.yourdomain.com
  2. 在路線53,創建一個A記錄別名指向您的桶的yourdomain.com
  3. Naked/root域最後,創建www.yourdomain.com CNAME記錄指向yourapp.herokuapp.com

那應該這樣做。

+0

但是,這給了我一個301重定向到'www'這不是我想要做的。我想留在'demo.example.com'並在DNS級別進行重定向。也許我沒有在問題中強調這一點,我會更新它。 –

+1

然後你可以用Route 53做任何事情。使用Heroku推薦的另一種服務。 – Rico

+0

謝謝Rico,那也是我的結論。我會明天嘗試其他服務之一,並回答一個答案。 Heroku支持建議使用'DNSMadeEasy',所以會嘗試。 –