web-dev-qa-db-ja.com

Amazon S3静的ウェブホスティングキャッシング

静的なhtml、js、css(など)ファイルにAmazon S3ウェブホスティングを使用しています。 index.htmlファイルを置き換えた後、ブラウザーを使用して古いバージョンを取得します。デフォルトのttlをバケットに設定します(その中の特定のオブジェクトには設定しません)。次のリンクを見つけました: http://docs.aws.Amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesDefaultTTL

ダッシュボードに「オブジェクトキャッシュ」設定が見つかりません。誰かがそれがどこにあるかを指摘できますか?

22
Mattan Bitner

Amazon S3リンク は、あなたの質問に答えます。 Amazonによると、サードパーティのツール(ページへのリンク)を使用しない限り、バケット全体にキャッシュ制御ヘッダーを設定することはできません。私が遭遇したツールの1つでは、PUT要求を使用して(またはツールを使用して一括して)送信されたオブジェクトのキャッシュディレクティブを設定する方法について説明します。詳細については、 BucketExplorer を参照してください。

これはAmazonの指示の切り貼りです(S.O.は変更または消滅する可能性のある外部リンクに依存することを好まないため)。

Amazon S3コンソールを使用してCache-ControlまたはExpiresヘッダーフィールドをAmazon S3オブジェクトに追加するには

  1. AWSマネジメントコンソールにサインインし、 https://console.aws.Amazon.com/s でAmazon S3コンソールを開きます。
  2. Amazon S3コンソールのバケットペインで、ファイルが含まれるバケットの名前をクリックします。
  3. オブジェクトのリストで、ヘッダーフィールドを追加する最初のオブジェクトを選択します。
  4. アクションをクリックし、プロパティをクリックします。
  5. 右側のペインで、Metadataを展開します。
  6. メタデータの追加をクリックします。
  7. キーリストで、Cache-ControlまたはExpires、該当する場合。
  8. Valueフィールドに、適切な値を入力します。
  9. Cache-Controlフィールドの場合、次を入力します:max-age=number of seconds that you want objects to stay in a CloudFront Edge cache
  10. Expiresフィールドには、HTML形式で日付と時刻を入力します。
  11. Saveをクリックします。

追加のオブジェクトにヘッダーフィールドを追加する場合は、次のオブジェクトの名前をクリックして、手順5〜9を繰り返します。

31
D. Woods