• IIS启用GZIP压缩js、css无效的原因及解决方法


    IIS启用GZIP压缩之后,原以为可以压缩所有文件了,包括html、CSS、JS、图片这些文件,但是当我检查的时候,发现并不是这样的,压缩的只有html文件,而CSS、JS并没有压缩

    在卡卡网的网站速度诊断里的检测结果:

    html网页已经成功启用了GZip压缩

    css文件未成功启用GZip压缩

          后来研究发现,IIS启用GZip时默认压缩的只有html网页,如果需要压缩css、js等文件,还需要另外简单配置一个文件。

          打开C:WINDOWSsystem32inetsrvMetaBase.xml这个文件,然后查找“IIsCompressionScheme”,会发现有三段,后面那个不用管,只设置前面两个即可。其中,"/LM/W3SVC/Filters/Compression/gzip"用于设置gzip压缩,"/LM/W3SVC/Filters/Compression/deflate"用于设置deflate压缩。

          如需压缩静态文件,则将HcDoStaticCompression和HcDoOnDemandCompression设置为“TRUE”,并在HcFileExtensions的属性中加入需要压缩的静态文件:css、js等;

          如需压缩动态文件,则将HcDoDynamicCompression设置为“TRUE”,并在HcScriptFileExtensions属性中加入需要压缩的动态文件:aspx、php等。

          另外,HcDynamicCompressionLevel属性和HcOnDemandCompLevel属性一般都推荐设置为9, 具有最佳性价比。

          参考如下各参数设置:

    <IIsCompressionScheme Location ="/LM/W3SVC/Filters/Compression/deflate"
      HcCompressionDll="%windir%system32inetsrvgzip.dll"
      HcCreateFlags="0"
      HcDoDynamicCompression="TRUE"
      HcDoOnDemandCompression="TRUE"
      HcDoStaticCompression="TRUE"
      HcDynamicCompressionLevel="9"
      HcFileExtensions="htm
                            html
                            txt
                            css
                            js
                            xml"
      HcOnDemandCompLevel="9"
      HcPriority="1"
      HcScriptFileExtensions="asp
                            aspx
                            dll
                            exe"
     >
    </IIsCompressionScheme>
    <IIsCompressionScheme Location ="/LM/W3SVC/Filters/Compression/gzip"
      HcCompressionDll="%windir%system32inetsrvgzip.dll"
      HcCreateFlags="1"
      HcDoDynamicCompression="TRUE"
      HcDoOnDemandCompression="TRUE"
      HcDoStaticCompression="TRUE"
      HcDynamicCompressionLevel="9"
      HcFileExtensions="htm
                            html
                            txt
                            css
                            js
                            xml"
      HcOnDemandCompLevel="9"
      HcPriority="1"
      HcScriptFileExtensions="asp
                            aspx
                            dll
                            exe"
     >
    </IIsCompressionScheme>

          设置完毕后,重新启动IIS,再检测时发现css、js等文件已经成功启用IIS GZip了。

  • 相关阅读:
    第108题:将有序数组转换成二叉搜索树
    第107题:二叉树的层次遍历II
    第106题:从中序与后序遍历序列构造二叉树
    java类读取properties文件
    WdatePicker.js开始日期和结束日期比较
    对两个整数变量的值进行互换
    Java基础知识总结
    jdk环境变量
    逻辑运算符有什么用?
    if和switch的应用
  • 原文地址:https://www.cnblogs.com/cfinder010/p/3428668.html
Copyright © 2020-2023  润新知