IIS:如何在站点级别启用 httpcompression?

IIS: How to enable httpcompression on site level?

在 Azure 云服务中,我们已启动任务以在 server 级别启用 httpcompression。

%appcmd% set config -section:system.webServer/serverRuntime /frequentHitThreshold:"1"
%appcmd% set config -section:system.webServer/urlCompression /doDynamicCompression:"True"

%appcmd% set config -section:system.webServer/httpCompression /-"dynamicTypes.[mimeType='text/css']"
%appcmd% set config -section:system.webServer/httpCompression /+"dynamicTypes.[mimeType='text/css',enabled='True']"

然后在 web.config 中,我们这样做是为了在站点级别启用 httpcompression:

<urlCompression doDynamicCompression="true" dynamicCompressionBeforeCache="true" doStaticCompression="true" />

这不起作用。在 IIS 管理器中,我可以看到站点级别启用了 httpcompression,但响应未压缩。

但是,如果我在 web.config 中将所有内容设置为 false,然后在 IIS 管理器中手动启用设置,它然后工作!

知道为什么会这样吗?这需要自动化,所以即使手动设置也能正常工作,但对我来说不是解决方案。

谢谢!!

忘记回复我的发现 - 结果我需要删除 httpCompressionurlCompression 设置 web.config ,然后一切正常。感觉像一个 IIS 错误。