我遇到的问题是IIS发送.aspx页面的最大年龄,这导致我们的应用程序出现各种奇怪现象。最初的目标是为静态内容启用缓存,但我们注意到我们的ASPX页面也被缓存,这是我们不想要的。我启用了几个月的缓存,并且不记得我是如何设置它的。
以下是我尝试过的一些事情。
我正在使用Chrome的开发工具和网络标签验证max-age和从缓存加载的页面。初始页面加载是一个全新的副本,如果我单击页面上的一个链接,将我带回同一页面,我已经在此加载来自Cache。
答案 0 :(得分:0)
我找到了发送max-age值的罪魁祸首。它是在httpCompression节点的appplicationHost.config文件中设置的。我直接在配置文件中进行了更改,但由于它是一个锁定的文件,编辑将不适用。然后我通过在同一节点下的IIS管理器中编辑配置找到它。删除该值后,我重新启动了我的站点的应用程序池,并且不再发送max-age。
答案 1 :(得分:0)
这是微软的一个已知错误,请按照此处的讨论:
IIS7.5 max-age issue(asp.net mvc output cache)
答案 2 :(得分:-1)
出于某种原因删除applicationHost.config中的条目对我没有任何改动。我通过在web.config中添加以下内容解决了这个问题:
<staticContent>
<clientCache cacheControlMode="NoControl" />
</staticContent>
因为我们正在添加这些标题,它似乎解决了这个问题。