[AWS CloudFront] 使ってみる

ユーザへの配信を行うサーバを「エッジサーバ」といい、CloudFrontドメイン(*.cloudfront.net)のようなCloudFrontドメインへアクセスさせることにより、CloudFrontのエッジサーバを経由した配信が行える。

ユーザがCloudFrontにアクセスすると、最寄りのエッジサーバIPが返される。このIPにアクセスして、高速な配信が受けられる。

# CloudFrontの使い方
### ディストリビューション作成
Create Distribution

origin-domain-pathは適当に、s3の laravel8-test.s3.amazonaws.com にします。

その他の項目はデフォルトのまま。項目だけ一応見ておく。
– Origin Settings
Enable Origin Shield, Origin ID, Restrict Bucket Access, Origin Connection Attempts, Origin Connection Timeout, Origin Custom Headers
– Default Cache Behavior Settings
Path Pattern, Viewer Protocol Policy, Allowed HTTP Methods, Field-level Encryption Config, Cached HTTP Methods, Cache and origin request settings, Cache Policy, Origin Request Policy, Smooth Streaming, Restrict Viewer Access, Compress Objects Automatically, Lambda Function Associations, Enable Real-time Logs
– Distribution Settings
Price Class, AWS WAF Web ACL, Alternate Domain Names(CNAMEs), SSL Certificate, Supported HTTP Versions, Default Root Object, Standard Logging, S3 Bucket for Logs, Log Prefix, Cookie Logging, Enable IPv6, Comment, Distribution State

ファイルパスを叩く
d2*.cloudfront.net/hoge.jpg
-> S3と同じ画像が表示される。

sugeeeeeeeeee
画像はキャッシュされる
-> 更新のない画像で、海外からのアクセスが多い場合に高速化を発揮する
-> 逆に、更新が多い場合は、キャッシュした画像は更新されない

なるほど、根本的な使い方を勘違いしてたかも