- 2017.06.08 create
S3+CloudFrontのHTTPS静的ウェブサイトでwwwありからwwwなしにリダイレクトする設定です。
SEO対策として必要になったのでメモしておきます。
本文ではhttps://www.hogehoge.com を https://hogehoge.com にリダイレクトするものとします。
参照URL: [AWS 独自ドメインを使用して静的ウェブサイトをセットアップする]
(https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/website-hosting-custom-domain-walkthrough.html)
####トピック
-
HTTPS静的サイト本体(wwwなし)を作る
-
リダイレクト用のS3バケットを作る
-
CloudFrontのDistributionを作る
-
DNS設定をする
-
HTTPS静的サイト本体(wwwなし)を作る
まずリダイレクト先であるHTTPS静的サイト本体を作る必要があります。
S3+CloudFront+ACM(AWS Certificate Manager)でHTTPS静的サイトを作ってみたの投稿がとても分かりやすかったので参照してください。
toshihirock様リンクさせていただきます。ありがとうございます。
- リダイレクト用のS3バケットを作る
ここからが本題。
分かりやすくwww付きのドメイン名でS3バケットを作成します。
バケット名:www.hogehoge.com
作成できたらSバケットプロパティタブのStatic website hostingで「リクエストをリダイレクトする」を有効にします。
-
リクエストをリダイレクトする
ターゲットバケットまたはドメイン: hogehoge.com
プロトコル: https
「ターゲットバケットまたはドメイン」はwwwなしのドメイン、「プロトコル」はhttpsを指定します。
ここでStatic website hostingのエンドポイントはcloudfrontのオリジンに設定するのでメモっておきます
エンドポイント:www.hogehoge.com.s3-website-ap-northeast-1.amazonaws.com
- CloudFrontのDistributionを作る
HTTPSなので「1.HTTPS静的サイト本体(wwwなし)を作る」と同様にcloudfrontの設定が必要になります。
先ほどメモったStatic website hostingのエンドポイントをオリジンにする以外は同様に作成します。
Origin Domain Name:www.hogehoge.com.s3-website-ap-northeast-1.amazonaws.com
CloudfrontのDomain NameはDNSの設定で必要になるのでメモっておきます。
Domain Name: hogehoge.cloudfront.net
- DNS設定をする
Route53でDNSレコードを作成します。
ここではaliasレコードを使用しますがroute53以外のDNS環境ではCNAMEでも問題ないと思います。
Create Record Setから
Name:www.hogehoge.com
Type:A-IPv4 address
Alias:YES
TTL (Seconds):3600
Value:hogehoge.cloudfront.net
でCreateします。Valueの値にCloudfrontのDomain Nameを指定します。
cloudfrontとDNSが反映されるまでに数分かかりますがhttps://www.hogehoge.com にアクセスしてhttps://hogehoge.com へリダイレクト出来たら成功です。