1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【CloudFront】オブジェクト指定でキャッシュ削除したがキャッシュ削除されない

Posted at

AWS CloudFrontのコンソール上でディストリビューションのキャッシュ削除をする際にオブジェクトを指定してキャッシュ削除。

/index.html
/img/hoge.jpg

その後キャッシュ削除ステータスが「完了」となったがCDNにキャッシュされたままサイトが更新されない現象が発生。

前提

構成

・ドキュメントルート直下にindex.htmlを配置、画像などのリソースは/img/に配置
https://example.com/ にリクエストしたら、index.htmlを表示させる構成
・ブラウザキャッシュはさせず、CloudFrontにキャッシュさせる

■更新したいファイル(=キャッシュ削除したいファイル)
・/index.html
・/img/hoge.jpg

解決

CloudFrontはクライアントからのリクエストパスでそのままキャッシュされる。
言い換えると/へのリクエストは/でキャッシュされ、/index.htmlは/index.htmlでキャッシュされる。
なので今回の場合、

/index.html
/img/hoge.jpg

でキャッシュ削除するのではなく

/
/img/hoge.jpg

でキャッシュ削除するのが正しかったようです。

サイトのファイル数とアクセス数が多く、極力オリジンへのリクエスト負荷を減らしたかったためオブジェクト指定でキャッシュ削除していました。
オリジンへの負荷を気にしなければ/*でキャッシュ削除で十分かもしれません。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?