Route53 を使って heroku アプリを サブドメイン の https にリダイレクトさせる
ドメインを Route53 で管理している場合、herokuが推奨する方法(Aレコード指定すればできるが非推奨)で rootdomain を設定することはできません。(2017/07/21時点)
したがってアプリケーションのURLは www. などのサブドメインをつけることになり、SEOの観点から rootdomain にアクセスがきたら サブドメイン へリダイレクトする必要があります。
また、https にリダイレクトして欲しい場合は、Static website hostingのエンドポイント が https に対応していないので、cloudfront を経由しなければなりません。
それらをクリアにすることで下記の通り、リダイレクトしてくれるようになります。(めちゃくちゃめんどい)
- http://www.pc-keyboard.info/ => https://www.pc-keyboard.info/
- http://pc-keyboard.info/ => https://www.pc-keyboard.info/
- https://pc-keyboard.info/ => https://www.pc-keyboard.info/
作業手順を簡単にまとめると下記のようになります。
- s3 backet 「pc-keyboard.info」を作成し、 Static website hosting で www.pc-keyboard.info にリダイレクトさせる
- herokuでwww.pc-keyboard.info のSSL証明書を作成する(Hodyで無料)
- AWS Certificate Manager で pc-keyboard.info のSSL証明書を作成する
- cloudfront の Origin Domain Name に さきほど作成した s3 backet のエンドポイントを設定する
- Route53 で Aレコードのaliasに cloudfront のDomain Name を設定する
- アプリケーションで http を https にリダイレクトする
参考にさせていただいたリンク
-
category:
- aws