0

asp.net mvc 4 出力キャッシュを使用していますが、何らかの理由で機能しません。私がやろうとしているのは標準ですが、出力キャッシュは決して作動しません。クッキーが変更されたため、キャッシュされていないことが原因である可能性があります。クライアントに出力キャッシュが必要です。私のサイトはすべて https にあり、すべてのリクエストは https の下にあります。

私が持っているいくつかの質問:

  1. Cookie の変更を無視するように出力キャッシュを設定するにはどうすればよいですか?
  2. 出力キャッシュが機能しているかどうかを理解するには、応答ヘッダーで何を探す必要がありますか?
  3. 場所を ServerAndClient に設定します - これにより、サーバーとクライアントのブラウザーでキャッシュが発生するというのは正しいですか?

ありがとう。

詳細情報:

フィドラー経由で気付いたのは、http ヘッダー リクエストに Cache-Control: max-age=0 が含まれていることですが、どのように、またはなぜこれに設定されているのかわかりません。

4

1 に答える 1

0
  1. デフォルトでは、キャッシュ属性は Cookie を無視します!

  2. コントローラーにブレークポイントを設定して、出力キャッシュが機能するかどうかを確認できます。どこを見ればよいか知っているようです! 「... Cache-Control が含まれています: max-age=0 ですが ...」

  3. はい、正しいです

キャッシングフィルターに期間を設定することをお勧めします


web.config ファイルを調べて、cacheControlMode 属性が異常に設定されていないかどうかを確認してください。s-maxage=0 の場合は、共有プロキシが原因です

キャッシュしたいコントローラーにこのような属性を設定します

[OutputCache( Duration = 360 )]
于 2013-09-15T08:17:58.627 に答える