0

サーブレットコンテナとしてTomcat6を使用し、WebサーバーとしてApache2.2を使用してJava/SpringMVCアプリケーションを実行しています。

最近、サイトのルックアンドフィールを完全に見直した新しいブランド変更を展開しました。

ヘッドセクションのリソースに?v = 1パラメータを追加しましたが、古いキャッシュリソースで問題が発生する問題が発生しています。

新しいコピーが確実にプルされるようにtomcatまたはapacheに設定できるものはありますか、それともクライアントに新しいバージョンのリソースを取得させるためにリビジョン番号を使用する必要がありますか?

4

2 に答える 2

1

次のように、メタ タグを使用してみることができます。

<meta http-equiv="Expires" content="Mon, 26 Jul 1997 05:00:00 GMT" />
<meta http-equiv="Cache-Control" content="no-store, no-cache, must-revalidate">
<meta http-equiv="Pragma" content="no-cache">

しかし、私の Web プロジェクトの 1 つで、IE9 がこれらのメタ タグを無視しているように見えることに気付きました。そのため、メタ タグを使用する代わりに、URL に乱数を追加しまし?v=1235324324た。value を常に使用するのではなく、 の値が毎回異なることを確認する必要があります。Math.random()Date.getTime()v1

于 2013-01-11T20:00:51.853 に答える
0

私の知る限り、開発者ツールなしでブラウザのキャッシュを無効にする方法はありません。

ただし、ブラウザのキャッシュを無効にすることは、webapp 自体からの HTTP ヘッダーによって行うことができます。2000 年以降のブラウザーでは、HTTP 1.1 の「Cache-Control」ヘッダーだけで十分です。ただし、保護を強化するために、サーバーはHTTP 1.1 の「Cache-Control」ヘッダーと HTTP 1.0 の「Expires」ヘッダーを一緒に発行できます。

于 2013-01-11T16:19:59.447 に答える