11
8

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 5 years have passed since last update.

ブラウザキャッシュについて

Last updated at Posted at 2019-09-04

ブラウザキャッシュについて、
ふんわり仕立てだったので調べてみました。

ウェブページを作る際に下記を記載しておけば、
ファイルキャッシュされないんだろうくらいにしか思ってなかったです。

▼HTTPボディのmetaタグに記載

<!-- キャッシュさせない //-->
<meta http-equiv="Pragma" content="no-store">
<!-- キャッシュさせない //-->
<meta http-equiv="Cache-Control" content="no-store">
<!-- キャッシュされたコンテンツの有効期限を即切れにする。 //-->
<meta http-equiv="Expires" content="0">

ただし、キャッシュを制御する方法は2タイプあるそうです。

###①HTTPヘッダーで制御する方法
 ⇒RFC2616に記載あり
###②HTTPボディのMETAタグで制御する方法
 ⇒ブラウザやProxyが独自で取り入れている仕様

よって、基本的には①が推奨されています。
②の場合は、ブラウザによっては機能しない場合があるそうです。(広くひろまっていますが)

#▼メモ
###http-equiv="Pragma"
HTTP1.0プロトコルに対応
設定値no-cacheにすることで、キャッシュされない。

###http-equiv="Cache-Control"
HTTP1.1プロトコルに対応
設定値にno-cacheを設定すると、
コンテンツに変更がある場合は最新の情報を読み込むが、変更がない場合はキャッシュから読み込む。
設定値にno-storeを設定すると、キャッシュされない。
####注意
個人情報を含むページなどは、no-cacheではなく、no-storeを使用したほうが良いと思います。
画面の見え方ではなく、個人情報がキャッシュに残るというところに、注目すべき。

###http-equiv="Expires"
キャッシュの有効期限
設定値を0に設定すると、即有効期限切れにするため、キャッシュしていない状態とほぼ同等になる。
ただし、これに対応されていないブラウザも存在するため、確実なものではない。

11
8
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
11
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?