Article

ブログ

2015/04/09

Route 53 でHerokuドメインを管理

こんにちは、本間です。

今回は Heroku におけるRoute 53 の利用価値についてです。Amazon EC2 などのAWSサーバーを利用している場合はRoute 53 を使われることが多いかと思いますが、Heroku で Route 53 を使うべきケースはどんな時なのでしょうか。

Heroku のカスタムドメイン

私はHerokuを好んで利用しています。Webアプリを作る際に独自ドメインでHerokuアプリを公開したいとしましょう。

特にそこまで強いこだわりがなければ、 www.yourdomain.com として登録します。そしてサブドメインとしてお名前.com や muumuuドメインのドメイン管理で www, CNAME, yourapp.herokuapp.comを登録します。

Heroku のアプリページの設定で、以下のようにドメイン登録をします。

heroku domain

サブドメインのみの運用を考えているのであれば、Heroku で Route53 を利用するケースはあまりないと言えます。

ちなみに カスタムドメインで SSLを実装したい場合は別のSSLアドオンを入れて運用する必要があります。 Expedited SSL で月$15が現時点でお得なようです。SSLはお金かかりますね。

Heroku アプリにおけるドメインの欠点

このケースは実は Heroku の弱いところです。というのも、HerokuはIPアドレスを公開していないため、Aレコードとしてドメイン登録ができないためです。また、大抵のドメイン管理のサービスはルートドメインの登録ができないようになっており、お名前.comやmuumuuドメインだけでルートドメインを管理することができないのです。

そのため、また新たにドメイン管理のネームサーバを指定し、そこでドメイン管理させるようにする必要があります。

そこで Route 53 の出番です。

Route 53 を利用すれば、 ルートドメインにアクセスが来ても、wwwにリダイレクトを飛ばせるようになるため、アクセスが可能になります。また、メールアドレスもルートドメインで運用することが可能です。

Route 53 の設定方法

ではRoute 53を利用し、ドメイン設定をしてみます。

まずは Route53 で Zone を登録します。すると、デフォルトで指定すべきネームサーバが表示されます。

Type: NS

Content: ns-1060.awsdns-04.org. , ns-800.awsdns-36.net., ns-1718.awsdns-22.co.uk., ns-425.awsdns-53.com.

これを取得したドメインサービスのネームサーバとして向き先を変えます。これには1~2日かかりますのでご注意ください。

ルートドメインをリダイレクトさせるには、 S3 の登録も必要です。 ルートドメインをバケット名としてバケットを登録してください。

S3 のバケット設定でStatic Website HostingRedirect all requests to another host nameをwww付きのドメインとしてリダイレクトさせるようにします。

Route 53内で新しくレコードを作成し、A type の Alias を yes にしてAlias Target から作成した S3 のバケット名を指定します。 これも反映には数分かかりますので、選択肢に出てこなくても落ち着いてください。

Route53 alias

しばらく待つとルートドメインでも対象サイトにアクセスすることができるようになります。これには1日くらいかかる場合があります。

まとめ

Route 53 はドメイン管理を簡単にしてくれます。AWSのサーバを利用していなくても、このように Route 53 は有用ですので試してみてはいかがでしょうか。

特にドメインでワイルドカードでの指定も可能、ということがRoute 53 の魅力のようです。それについても追って報告します。