我无法解释为什么我的应用程序没有缓存首页。
我在页面上放置了一个日期戳:@DateTime.Now
这是家庭控制器动作
[OutputCache(Duration = 60)]
public ActionResult Index()
{
return View();
}
但是,缓存无效,首页会不断更改日期。
我试图将首页和关联的布局减少到最小,因此只标记了DateTime.Now。
我已经检查了所有基本控制器是否有任何禁用缓存代码。
还检查了global.asax
检查了web.config是否有任何缓存配置 - 无。
与提琴手一起检查。这是响应标题。
HTTP/1.1 200 OK
Cache-Control: public, no-cache="Set-Cookie", max-age=60
Content-Type: text/html; charset=utf-8
Expires: Wed, 04 Mar 2015 05:20:45 GMT
Last-Modified: Wed, 04 Mar 2015 05:19:45 GMT
Vary: *
我还尝试过不同的浏览器,不会修改任何本地缓存设置。
还尝试将应用程序部署到舞台服务器,因此它不能在我的开发计算机上运行。
尝试制作一个新的asp.net mvc应用程序。这确实有效。至少告诉我技术的工作有点帮助。
问题出在哪里?
答案 0 :(得分:2)
要检查的几件事情:
如果这是在您的生产环境中,请检查IIS上是否启用了输出缓存。请参阅this page。
尝试切换缓存的位置,以帮助缩小问题所在:
e.g。
[OutputCache(Duration = 60, Location = OutputCacheLocation.Server)]
[OutputCache(Duration = 60, Location = OutputCacheLocation.Client)]