首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >asp.net和IIS缓存问题

asp.net和IIS缓存问题
EN

Stack Overflow用户
提问于 2011-10-18 23:48:35
回答 2查看 2.1K关注 0票数 0

我已经对我的网站进行了Google的页面速度测试,它告诉我要“利用浏览器缓存”。

我对此做了一些研究,发现我需要在IIS 6中启用内容过期。我这样做了,并将内容设置为每30天过期一次。然后,我再次对我的网站进行了页面速度测试,仍然得到了“利用浏览器缓存”的建议。

我还通过http://web-sniffer.net查看了网站返回的内容,返回的结果是缓存控制:私有。

然后我在网页表单中尝试了<%@ OutputCache Duration="30" VaryByParam="none" %>,现在返回缓存控制:公共,最大年龄=30,我猜这是正确的,但谷歌页面速度测试仍然返回我的网页上没有过期的资源列表(主要是图像)。

在这个问题上我很困惑。我一直以为网站会继承IIS设置,但在我打开页面上的outputcache之前,情况并非如此。有没有办法让网站使用IIS设置,还是必须逐页完成?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-10-19 01:36:23

尝试将以下内容添加到窗体中的代码隐藏中:

代码语言:javascript
复制
Response.Cache.SetCacheability(HttpCacheability.Server);
Response.Cache.SetExpires(DateTime.Parse("6:00:00PM"));

http://msdn.microsoft.com/en-us/library/system.web.httpcachepolicy.aspx

HttpCacheability枚举:

  1. NoCache
  2. Private
  3. Server
  4. ServerAndNoCache
  5. Public
  6. ServerAndPrivate

http://msdn.microsoft.com/en-us/library/system.web.httpcacheability.aspx

票数 0
EN

Stack Overflow用户

发布于 2011-10-18 23:55:42

Pagespeed可能指的是静态资源,如js、css、png、gif等文件。默认情况下,IIS内容过期不适用于这些文件。您需要手动编辑IIS元数据库。

http://www.galcho.com/Blog/post/2008/02/27/IIS7-How-to-set-cache-control-for-static-content.aspx

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7810039

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档