IIS 7上的缓存配置

时间:2011-06-27 03:25:58

标签: asp.net-mvc iis iis-7 iis-7.5

对于IIS7。将此web.config放在要设置它的文件夹或站点的根目录中是确保客户端将Web图像缓存7天的最佳方法吗?

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

我读到了一些关于“Javascript的默认配置是将.js文件作为动态文件提供,而不是静态的,因此除非您将它们添加为staticContent类型,否则它们不会被此配置缓存。”

有人可以解释我是如何以及是否需要将.js文件设置为staticContent。

稍微偏离主题我的网页上的页面很少,但起始页面很少变化。这些是MVC3页面,它们由我的站点的控制器和视图提供。有什么方法可以设置,以便这些页面可以在浏览器中缓存吗?

还有一个问题。现在我有了这个设置,我检查了firebug并在加载静态CSS页面时获得以下内容:

Content-Type    text/css
Content-Encoding    gzip
Expires Mon, 06 May 2013 00:00:00 GMT
Last-Modified   Sun, 26 Jun 2011 12:30:53 GMT
Accept-Ranges   bytes
Etag    "27e21e4fc33cc1:0"
Vary    Accept-Encoding
Server  Microsoft-IIS/7.5
X-Powered-By    ASP.NET
Date    Mon, 27 Jun 2011 03:29:32 GMT
Content-Length  503

我不明白的是,随着2013年设定的到期,为什么firefox每次都会下载所有这些数据?

st  www.xxx.com
User-Agent  Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
Accept  text/css,*/*;q=0.1
Accept-Language en-us,en;q=0.5
Accept-Encoding gzip, deflate
Accept-Charset  ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive  115
Connection  keep-alive
Referer http://www.xxx.com/xx/
Cookie  __utma=62996397.135679654.1309106351.1309113550.1309143643.4; __utmz=62996397.1309106351.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utmc=62996397; __utmb=62996397.3.10.1309143643

1 个答案:

答案 0 :(得分:0)

不确定这是否对您有帮助,但您可以按照此处的说明为每个文件设置缓存:How to configure static content cache per folder and extension in IIS7?