2012-03-03 21 views
2

私のウェブサイトでは、www.johnshammas.comでは、すべてのブラウザで完全に動作します。例外を除いて... Chrome上の以前のバージョンを見た人は、そのバージョンがキャッシュを空にするまでそのバージョンに固執しています。実際にはそれが大きく変更されている場合、ウェブサイトは「変更されていない」ヘッダを返す原因は何ですか?Chromeキャッシュが長すぎる

+2

ページと一緒に送信されているヘッダーを見て、それが問題の原因でないかどうかを確認する必要があります。ヘッダーの意味を理解できない場合は、質問に含めてください。 –

答えて

0

いくつかの可能な解決策は次のように行く...開発ツールのための

ない1(パーマネント)

なし2(半永久的)

  • はCtrl + Shiftキー+ Nを介してシークレットモードに切り替えます。しかし、この はまたあなたのセッションを終了して気をつけてください。

いいえ3(ワンタイム)

  • はCtrl + +デルが>

いいえ4(ワンタイム)

を確認シフト
  • Devツール>ネットワークタブ>右クリックコンテンツエリア> ブラウザキャッシュのクリア>確認のF12。
1

304 Not Modified応答が返された場合、それがために、以前サーバはETag又はLast-Modifiedヘッダと応答を送信しました。

その後、ブラウザはこの値をETagまたはIf-Modified-Sinceヘッダーとして送信しました。サーバーは、ブラウザが最後に要求してからリソースが変更されていないようにETagまたは日付を認識しました。

したがって、304が返されました。

これらのキャッシュヘッダーや他のキャッシュヘッダーに精通していない場合は、それらに関するいくつかの調査を行うことをお勧めします。これらが何であり、どのように使用するかについての多くの素晴らしいチュートリアルがあります。

0

問題は、ファイルを再チェックして再フェッチする必要があるかどうかを確認するために、Chromeがキャッシュコントロールのヘッダーにmust-revalidateを持つ必要があるという問題です。

には、以下のレスポンスヘッダをオススメ:

Cache-Control: must-validate 

これは、サーバーに確認し、新しいファイルがあるかどうかを確認するためにChromeを伝えます。新しいファイルがある場合、それは応答でそれを受け取ります。そうでない場合は、304応答を受信し、キャッシュ内の応答が最新であることを保証します。

このヘッダーを設定しないと、ファイルを無効にする設定がない場合、Chromeはになりません。は新しいバージョンがあるかどうかサーバーに確認します。

さらにこの問題について説明しているblog postがあります。

関連する問題