LoginSignup
1
0

More than 3 years have passed since last update.

CloudFront + S3 構成でのリダイレクト設定

Posted at

はじめに

当記事はこちらの記事を読んでいる前提で書いてます。
読んでない方は先にこちらをどうぞ

前回の記事ではwwwありとなし、それぞれページにアクセスできている状態ですが、
URLはそのままで口が空いている状態でした。

SEO対策でリダイレクトしたほうがいいという話を聞きますので(知らんけど)
今回はS3 + CloudFrontの構成でリダイレクトするには?
ということで記事を書いていきます。

また前回の記事では画面オペレーションの画像を細かく載せておりましたが、
今回は大幅にはしょって重要な点だけ載せていきます。

全体の構成

全体の構成は以下のようになります。

  • Route53
  • CloudFront×2
  • S3×2
  • SSL証明書×1

SSL証明書については、
追加ドメインの別名に*.example.comやwww.example.comが設定されている場合は特に触る必要はありません。

前回の記事を参考に作った場合は既にそうなっているかと思います。

S3の追加

バケット名をwww.example.comで新規作成します。
その他の設定はデフォルトのままで大丈夫です。

作成したバケットを選択し、プロパティ -> 静的ウェブサイトホスティング を編集します。

以下のように、wwwなしのドメインにリダイレクトされるように設定します。

image.png

プロトコルオプションはhttpでアクセスされた場合でもhttpsでリダイレクトされるように
httpsを選択しておきます。

CloudFrontの追加

OriginDomainNameを手動で入力します。
「www.exsample.com.s3-website.us-east-1.amazonaws.com」
のようにドメイン.s3-website.リージョン名.amazonaws.comとします。

今回はバケットのポリシーは設定しません。
(カスタムOriginとみなされて自動的にバケットポリシー部分の選択肢が消えます)

image.png

CNAMEsにwww.example.comを設定し、SSL証明書は前回の記事で作成したものを選択します。

image.png

Route53の編集

wwwのAレコード向き先を作成したCloudFrontに設定してやります。

image.png

以上です。これでwwwありがwwwなしにリダイレクトされるようになりました。

最後に

なんかこの構成気持ち悪いですよね。
CloudFrontとS3を2つ使っているあたりが・・・
でもこれしか見つけられませんでした。

ソース上でwwwありでアクセスされてたらなしにリダイレクトする
みたいな事が許されるなら前回の記事の構成でもいいと思います。

AWS Amplifyを使わずにS3+CloudFront構成で各1個ずつでリダイレクトを設定できる方法がございましたらご教授ください

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0