CloudFrontを勉強してみたので各概念の関係性をまとめてみた
主要概念は、Distribution、Behavior、Originの3つ。
- Distribution
- CloudFrontのインスタンス。ここを起点に様々な設定をする
- カスタムドメインとSSL証明書はDistributionに設定する
- Origin
- CloudFrontから転送する先のサーバー。
- S3に転送する場合は、OAIなどの専用の設定ができる
- APIGatewayに転送する場合は、カスタムドメインとして汎用的な設定を適用する
- 複数のOriginをまとめてOriginGroupを作ると、Originの代わりに使える
- Behavior
- パスごとに、どのOriginに転送するかの設定
- CachePolicy
- CloudFrontのキャッシュの振る舞いを決める
- TTL(Time To Live): キャッシュの保持期間
- キャッシュキー設定: 同じパスでもクエリーパラメータの値ごとにキャッシュを分けることもできる
- 「Managed-CachingDisabled」など出来合いのものも用意されている
- OriginRequestPolicy
- どのヘッダー、クエリーパラメータ、CookieをOriginに転送するか
- 「Managed-CORS-S3Origin」など出来合いのものも用意されている。