2016-05-02 5 views
1

大規模なWebサイト用の製品イメージを格納するためにS3バケットを使用しています。これらの画像はS3バケットを起点としてCloudfrontを通じて提供されています。私は、キャッシュヘッダーをカスタマイズし、Cloudfrontで長、最大、およびデフォルトのTTLを長く設定するように配布動作を設定していても、Cloudfrontはイメージに有効期限ヘッダーを挿入しないことに気付きました。CloudfrontはS3 Originから期限切れヘッダーを設定しません

私はS3オブジェクトに有効期限を付けることができると私は理解していますが、私は何百万ものイメージを持っているので、これは非常に実用的ではありません。クラウドフロントが私にこのヘッダーを追加するという栄誉を与えてくれることを期待していましたが、そうではありません。

この期限切れヘッダーを取得してS3オブジェクトごとに適用する唯一の方法は私の質問ですか、それともCloudfrontで私のために何かが行方不明になっているのでしょうか?

答えて

2

CloudFrontのTTL設定では、CloudFrontは、オブジェクトをキャッシュに保持する時間のみを制御します。

ヘッダーは追加されません。

はい、S3のオブジェクトでこれらを設定する必要があります。

通常、Cache-Control:Expires:よりも良い選択とみなされます。


onjectsの更新を回避するための代替は、バケットと同じ領域にEC2でプロキシサーバーを設定し、応答がそれを通過すると、サーバがヘッダを追加できるようにすることです。

Request: CloudFront >> Proxy >> S3 
Response: S3 >> Proxy >> CloudFront 

...これは価値があります。

+0

ありがとうございます。私はそれらをすべて更新するスクリプトを実行しています。私は私のツールボックスにプロキシの考えを維持します。 –

関連する問題