c# - 静态内容不在 Asp.net MVC 中缓存

标签 c# asp.net asp.net-mvc asp.net-mvc-4 caching

我想缓存 mvc 应用程序的所有静态内容。

我在 Content 文件夹中添加了这样的 Web.config 文件 enter image description here

我从我的服务器获得了正确的响应 header 。

enter image description here

即使在收到带有 max-age 属性的 header 后,对服务器的下一个请求也会使用 Cache-Control: no-cache

enter image description here

这将再次检索整个数据。

它不是缓存。

我想知道我在这里错过了什么。提前致谢。

最佳答案

屏幕截图中的无缓存是请求 header 而不是响应 header 。

它可能是由您的浏览器发出的,以响应您强制刷新 (Control-F5)。浏览器实际上是在说“请给我新数据,我不需要缓存数据”。服务器端无法控制这一点 - 客户端是发出请求的人。

如果您没有强制刷新,那么您可能禁用了浏览器缓存(例如 https://stackoverflow.com/a/7000899/34092)。

另见 https://stackoverflow.com/a/14544664/34092 .

关于c# - 静态内容不在 Asp.net MVC 中缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44411405/

相关文章:

c# - 如何在数据绑定(bind)期间在datagridview中自定义格式数据

c# - 保存多个复选框的状态并在应用程序启动时重新加载它们

c# - 静态方法签名类型参数和部分应用

asp.net - AjaxControlToolkit TabContainer 具有奇怪的渲染行为

c# - string.IndexOf() 无法识别修改后的字符

c# - 如何打开浏览器PDF格式的数据?

c# - 你能用复选框识别这个多选下拉菜单吗?

c# - 获取 chrome 的控制台日志

html - 页面底部的小线

c# - 如果单词比 X 长,则用点替换字符串的结尾