IIS7 + ASP.NET MVC 客户端缓存标头未生效

3

我已经在IIS7和Windows Server 2008上部署了一个ASP.NET MVC应用程序。

我已经阅读了这里和网络上的帖子,但是无法让客户端缓存正常工作。

我正在尝试缓存/Content文件夹中的所有内容。到目前为止,我已经在IIS管理器中选择了该文件夹,并设置了适当的HTTP响应标头(在常规标头下)。我还检查了/Content文件夹中的web.config文件,并且那里的值已经被设置。

/Content中的所有资源都返回以下内容(来自FireBug):

Cache-Control   no-cache, no-store, must-revalidate
Pragma        no-cache
Content-Type    image/png
Expires      -1
Last-Modified   Sun, 11 Oct 2009 19:01:40 GMT
Accept-Ranges   bytes
Etag            "f318d643a54aca1:0"
Server        Microsoft-IIS/7.0
X-Powered-By    ASP.NET
Date            Sun, 11 Oct 2009 20:40:01 GMT
Content-Length  620  

注意请求静态图片时的Cache-Control和Expires值。
该站点目前编译为调试模式(这将更改),但这不会有任何影响吧?
显然我忽视了某些东西,如果有想法请告知。
谢谢
1个回答

2

如果您无法使用IIS管理工具使其工作,请尝试Jeff Atwood在此帖子中的建议:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <staticContent>
      <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="7.00:00:00" />
    </staticContent>
  </system.webServer>
</configuration>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接