在Asp.net中添加Expire标头

时间:2016-11-29 09:20:12

标签: asp.net iis yslow

我正在使用YSlow来评估我的应用程序的性能,我获得了添加过期标题方面的D等级。

我正在使用IIS express,所以我在网上发现了这个代码并将其添加到web.config文件中,但它不起作用;等级仍为D。

我是在web.config文件中完成的。任何想法如何提高"添加过期标题" ?

    <system.webServer>
   <staticContent>

<clientCache cacheControlMaxAge="30.00:00:00" cacheControlMode="UseMaxAge"/>

</staticContent>

2 个答案:

答案 0 :(得分:2)

请尝试以下方法:

  1. IIS - &gt;展开网站 - &gt;选择您的网站 - &gt;点击“HTTP响应标题” - &gt;在右侧的“操作”下,点击“设置常用标题” - &gt;勾选'过期网页内容复选框' - &gt;选择“After”单选按钮,然后将Days值设置为7。

    https://technet.microsoft.com/en-us/library/cc770661(v=ws.10).aspx

  2. IIS - &gt;展开网站 - &gt;选择您的网站 - &gt;点击“压缩” - &gt;勾选“启用动态内容压缩”和“启用静态内容压缩”。

    https://www.iis.net/configreference/system.webserver/httpcompression

答案 1 :(得分:0)

必须在应用程序的根目录中进行配置。一般做法是365天。此配置仅适用于静态文件请求。

<configuration>
  <system.webServer>
    <staticContent>
      <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="365.00:00:00" />
    </staticContent>
  </system.webServer>
</configuration>

确保配置显示在"%programfiles(x86)%\IIS Express\appcmd" list config "YOUR SITE" -section:system.webServer/staticcontent

对于动态文件请求,您可以配置output caching