はじめに
静的Webホスティングをする必要があり、その際に調べ物をしたので記事にします。
2024/11版です!(重要)
以下のケースを比較します
- S3 のみ
- S3 + CloudFront
- S3 + Amplify
2024/11~、S3+Amplifyで簡単に静的Webホスティングできるようになりました。その構成も含めた記事です。
参考:AWS Amplify ホスティングで Amazon S3 静的ウェブサイトホスティングを簡素化および強化
この記事で記載を省略すること
- 各サービスの設定方法
- 各サービスの概要
シンプルフローチャート
静的Webホスティングの公開方法の比較
S3 | S3+CloudFront | S3+Amplify | |
---|---|---|---|
よくある構成 | S3, Route53 | S3, CloudFront, ACM, Route53 | S3, Amplify, ACM, Route53 |
httpsアクセス | 不可 | 可 | 可 |
設定の楽さ | ◎ コンテンツの格納+アクセス制限 |
△ S3+ ACM,Route53,CloudFront |
◯ S3+ Amplify ※1 |
セキュリティ | △ バケットポリシー |
◎ WAF,バケットポリシー(OAC) |
△ バケットポリシー |
遅延 | △ アクセス元の地域に依存 |
◎ エッジロケーションを利用可 |
△ アクセス元の地域に依存 |
リクエスト/レスポンスのカスタマイズ | 不可 | 可 CloudFront関数、Lambda@Edgeを利用可 |
不可 |
△◯◎:行単位で3者を比較する指標と思っていただければよいです。雰囲気です。
※1
Amplifyは以下を自動で設定してくれるため、迷わず&少ない操作で配信できます。
- S3バケットポリシー設定
- ACMの証明書作成
- Route53のドメイン設定
参考)料金比較
下記は私のユースケースにおける料金比較です。
料金計算ツールを使い、利用規模に合わせて料金を見積もってください。
-
前提:
- S3保存ボリューム:100GB
- 月間データ転送量:50GB
- 月間リクエスト数:10,000
- 東京リージョン(ap-northeast-1)
-
月当たり料金:
S3 | S3+CloudFront | S3+Amplify | |
---|---|---|---|
合計 | 4.5$ | 8.2$ | 12.6$ |
内訳 | S3:4.5$ | S3:2.5$ CloudFront:5.7$ |
S3:4.5$ Amplify:8.1$ |
S3→CloudFront間の通信は無料です。
S3→Amplify間の通信は料金計算ツールにおいて特別な記載はありません。