HTTP 経由で提供され、時々変更されるいくつかのファイルがあります。
ブラウザの読み込み速度を最適化すると同時に、ブラウザに最新バージョンのファイルがあることを確認させるために HTTP 応答で返すべき、キャッシングに関連する HTTP ヘッダーはどれですか?
過去の日付を含む "Expires" ヘッダーを既に設定しています (この時点ではコンセンサスがあるようです)。
ただし、このヘッダーを設定することを推奨する人もいます。
Cache-Control: no-cache, no-store, must-revalidate
しかし、このヘッダーの問題は、ブラウザがファイルのローカル コピーを保持できないため、ファイルが変更されていなくても毎回ダウンロードされ、応答コード 200 が返されることです。
私がちょうど使用する場合:
Cache-Control: no-cache
次に、ブラウザー (少なくとも Firefox 14 および Chrome 20) はローカル コピー、送信If-Modified-Since
、およびIf-None-Match
ヘッダーを保持し、サーバーは 304 コードを返し、ファイルの内容はダウンロードされません。 これは、いつでも変更できるこれらのファイルの最適な動作です。
問題は、「no-cache」を設定するだけで、すべてのブラウザー (古いがまだ使用されているバージョンを含む) とプロキシ サーバーがローカルにキャッシュされたコピーをサーバーで再検証するのに十分かどうかわからないことです。
最後にPragma: no-cache
ヘッダーは?HTTP 応答にも含める必要がありますか?