如何在IIS中的静态资源的HTTP标头中设置到期日期或最长期限

Ede*_*com 45 iis caching

我使用IIS 6IIS 7作为Web服务器.

在线运行谷歌网页速度后,它说我应该:Setting an expiry date or a maximum age in the HTTP headers for static resources instructs the browser to load previously downloaded resources from local disk rather than over the network.

它列出了很多普通的图像,我的javascript文件样式表.

如何为这些静态文件设置此到期日期?我以为这是由浏览器自动完成的?

Ram*_*ine 29

利用浏览器缓存:

在静态资源的HTTP标头中设置到期日期或最长期限会指示浏览器从本地磁盘而不是通过网络加载以前下载的资源.

http://code.google.com/speed/page-speed/docs/caching.html#LeverageBrowserCaching

在静态资源的HTTP标头中设置到期日期或最长期限

打开IIS管理器 - >单击您的站点 - >单击主页中的HTTP响应标题 - >单击"动作"面板上的"设置公共标题" - >"检查过期Web内容" - >"设置7天后"(按照页面速度中的建议)分析"为以下资源指定将来至少一周的到期时间"

http://technet.microsoft.com/en-us/library/cc770661%28WS.10%29.aspx

  • 我确实将此参数设置为7天,但今天使用Google页面速​​度测试仍会产生相同的警告.但是,我没有重新启动网站.您是否碰巧知道此参数是否需要重启才能生效? (2认同)
  • Google表示`(我们更喜欢Expires over Cache-Control:max-age,因为它得到了更广泛的支持.)不要将它设置为超过一年,因为这违反了RFC指南.不幸的是,IIS没有让你设置动态过期标题.这意味着他们的pagespeed工具将始终报告您需要"利用浏览器缓存" (2认同)
  • @ChrisS FWIW PageSpeed似乎对在IIS上使用max-age感到满意,[根据这个答案](http://stackoverflow.com/a/24483447/231851). (2认同)