首页 > 代码库 > ASP.NET MVC 3 网站优化总结(三)Specify Vary: Accept-Encoding header

ASP.NET MVC 3 网站优化总结(三)Specify Vary: Accept-Encoding header

继续进行 ASP.NET MVC 3 网站优化工作,使用 Google Page 检测发现提示 You should Specify Vary: Accept-Encoding header,The following publicly cacheable, compressible resources should have a "Vary: Accept-Encoding" header。

相信很多人遇到过这个问题,它是什么意思呢?网上找到的资料为:

原来对CSS和JS文件开启Gzip后,会输出两份文件:Gzip压缩过的、未经Gzip压缩的,这样一来不仅没加快网页加载速度,反而更慢了;而 Vary: Accept-Encoding header 的作用就是指定输出压缩过的那部分文件。这样一来,Gzip压缩才算是真正起了作用。

解决的方法为在 configuration 节点下添加下边的代码片断即可:

<configuration>    <system.webServer>        <httpProtocol>            <customHeaders>                <remove name="Vary"></remove>                <add name="Vary" value="Accept-Encoding"></add>            </customHeaders>        </httpProtocol>    </system.webServer></configuration>

重新运行网站,发现此问题已经解决,如下图:

技术分享

这样我们的 ASP.NET MVC 3 网站性能又提升了一下,下篇我们会看看 ASP.NET MVC 3 中缓存的使用。

 

ASP.NET MVC 3 网站优化总结(三)Specify Vary: Accept-Encoding header