2012-03-27 15 views
0

私が取り組んでいるサイトでは、少しずつのシナリオがあります。モジュール用のIIS 7出力キャッシュ

"静的な"コンテンツを動的に出力するカスタムHTTPモジュールに、特定の要求パスをルーティングします。それで、私はjavascriptとcssのコンテンツを意味します。しかし、そのコンテンツはモジュールによって動的に生成されますが、生成されると頻繁に変更されることはありません。

カスタムモジュールの出力をキャッシュしたいのですが、なんらかの理由でキャッシュされたコンテンツも304も期待通りにクライアントに返されません。

Firefoxを使用してURLを参照すると、ローカルブラウザのキャッシュが機能しているようです。ブラウザはローカルにキャッシュされたものを使用し、サーバーに要求しません。

ただし、ページ上でF5キーを押すと、ブラウザはサーバーからファイルを再取得しようとします。その後、サーバーはモジュールにリダイレクトされ、コンテンツが再生成され、本質的にフレッシュです。 IISが代わりに304をクライアントに返すか、キャッシュからコンテンツを提供し、モジュールを完全に呼び出さないようにすると思います。

http://www.mydomain.com/SpecialPath/File_17aa85bf3bf430066a0524787be6af7b9363c8ae.js

のCache-Control公共、最大エージング= 1800

コンテンツのエンコードgzipで

のContent-Length 60568

モジュールは、正しいキャッシュ・ヘッダーを返しているように見えます

コンテンツタイプapplication/x-javascript;文字セット= UTF-8

日(火)、2012年3月27日午後08時25分42秒GMT

たEtag 17aa85bf3bf430066a0524787be6af7b9363c8ae

のLast-Modified火、2012年3月27日午前20時25分43秒GMT

サーバーマイクロソフト-IIS/7.5

が受け入れ-エンコーディングを

X-ASPNET-バージョン4.0.30319

ヴァリ

私はF5を使用する場合は、ブラウザのリクエストヘッダでもOKのように見える:

のCache-Control最大エージング= 0

場合 - 変更 - ので火、2012年3月27日午後8時25分21秒GMT

なし-マッチした場合、

を17aa85bf3bf430066a0524787be6af7b9363c8ae私はブレークポイントを設定する場合は、私は、要求がモジュールに渡されている参照してください。

304は返されず、出力キャッシュから提供されたコンテンツも返されません。

カスタムモジュールから返されたコンテンツをキャッシュにキャッシュするには、特別な処理や特別な処理を行う必要がありますか?

ヘッダーに問題がありますか?

答えて

2

変更される場合は、-ので、午前20時25分21秒GMT

リソースは、IMS値の後に22秒を変更された火、2012年3月27日のLast-Modified火、2012年3月27日20時25分43秒GMT 304は返されません