【问题标题】:some questions with asp.net mvc output cachingasp.net mvc 输出缓存的一些问题
【发布时间】:2013-09-15 01:21:20
【问题描述】:

我正在使用 asp.net mvc 4 输出缓存,但由于某种原因我无法让它工作。我想做的是标准的,但输出缓存永远不会启动。我认为这可能是由于 cookie 被更改,因此没有缓存。我想在客户端上输出缓存。我的所有网站都在 https 下,所有请求都在 https 下。

我有一些问题:

  1. 如何设置输出缓存以忽略 cookie 中的任何更改?
  2. 我应该在响应标头中查找什么来了解输出缓存是否正常工作?
  3. 将位置设置为 ServerAndClient - 我是否正确地说这会导致服务器和客户端浏览器中的缓存?

谢谢。

更多信息:

我通过 fiddler 注意到的是 http 标头请求包含 Cache-Control: max-age=0 但我不知道如何或为什么将其设置为此。

【问题讨论】:

    标签: asp.net-mvc asp.net-mvc-4 caching outputcache


    【解决方案1】:
    1. 默认缓存属性忽略cookies!

    2. 您可以在控制器中设置断点以查看输出缓存是否有效,看来您知道在哪里查看! "... 包含 Cache-Control: max-age=0 但是..."

    3. 是的,没错

    我建议你在缓存过滤器上设置 Duration


    查看 web.config 文件,看看 cacheControlMode 属性是否设置为奇怪的东西! 如果是 s-maxage=0 是因为共享代理

    在要缓存的控制器上设置这样的属性

    [OutputCache( Duration = 360 )]
    

    【讨论】:

    • 感谢您提供此信息。是的,我相信 Cache-Control: max-age=0 是问题所在。知道为什么会发生这种情况吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-30
    • 2019-05-13
    • 2011-01-22
    • 2011-05-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多