WebEnh

.net7 mvc jquery bootstrap json 学习中 第一次学PHP,正在研究中。自学进行时... ... 我的博客 https://enhweb.github.io/ 不错的皮肤:darkgreentrip,iMetro_HD
  首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

继续进行 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>

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

Specify a Vary: Accept-Encoding header

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