需要一些 IIS7 web.config 压缩设置方面的帮助

Pur*_*ome 9 compression iis-7 gzip web.config

我正在尝试在我的 web.config 文件中配置我的 IIS7 压缩设置。我正在尝试将 HTTP 1.0 请求启用为 gzip。

MSDN在此处提供有关它的所有信息。

是否可以在我自己网站的 web.config 文件中包含此配置信息?还是我需要在应用程序级别设置它?目前,我的 web.config 中有该代码...

<system.webServer>
    <urlCompression 
        doDynamicCompression="true" 
        dynamicCompressionBeforeCache="true" />
    <httpCompression 
        cacheControlHeader="max-age=86400" 
        noCompressionForHttp10="False" 
        noCompressionForProxies="False" 
        sendCacheHeaders="true" />

    ... other stuff snipped ...

</system.webServer>
Run Code Online (Sandbox Code Playgroud)

它不起作用:( HTTP 1.1 请求正在被压缩,而不是 1.0.0.

上面的 MSDN 页面说它可以用于:-

  • 机器配置
  • 应用主机配置文件
  • 根应用程序 Web.config
  • 应用程序 Web.config
  • 目录 Web.config

那么,我们可以在 web.config 文件中以编程方式基于每个网站设置这些设置吗?(这是一个 Application Web.config 文件...)我做错了什么?

欢呼:)

编辑:有人问我怎么知道 HTTP1.0 没有被压缩。我正在使用失败的请求跟踪规则,它会报告:-

DYNAMIC_COMPRESSION_START
DYNAMIC_COMPRESSION_NOT_SUCESS
    Reason: 3
    Reason: NO_COMPRESSION_10
DYNAMIC_COMPRESSION_END
Run Code Online (Sandbox Code Playgroud)

Pur*_*ome 2

经过大量研究后,它默认在应用程序级别“锁定”。因此,它需要被“解锁”。这可以通过命令行或通过(额外下载)iis7 管理工具来实现。

例如。appcmd set config -section:urlCompression /doDynamicCompression:true

参考文献: