IIS 7.5 忽略 web.config 中的 HttpCompression 设置

Ben*_*Ben 8 iis compression gzip iis-7.5

我正在尝试为 mime 类型启用动态压缩application/json

在 applicationHost.config 中,我进行了以下更改:

<section name="httpCompression" allowDefinition="AppHostOnly" overrideModeDefault="Allow" />
Run Code Online (Sandbox Code Playgroud)

我还尝试使用以下命令解锁该部分:

appcmd unlock config /section:system.webserver/httpcompression
Run Code Online (Sandbox Code Playgroud)

我的 web.config 设置(与 applicationHost.config 相同,但具有额外的 mimetype):

    <httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files">
        <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" />
        <staticTypes>
            <add mimeType="text/*" enabled="true" />
            <add mimeType="message/*" enabled="true" />
            <add mimeType="application/x-javascript" enabled="true" />
            <add mimeType="application/atom+xml" enabled="true" />
            <add mimeType="application/xaml+xml" enabled="true" />
            <add mimeType="*/*" enabled="false" />
        </staticTypes>
        <dynamicTypes>
            <add mimeType="text/*" enabled="true" />
            <add mimeType="message/*" enabled="true" />
            <add mimeType="application/x-javascript" enabled="true" />
            <add mimeType="application/json" enabled="true" />
            <add mimeType="*/*" enabled="false" />
        </dynamicTypes>
    </httpCompression>
Run Code Online (Sandbox Code Playgroud)

但是响应没有被压缩。如果我将 mimetype 直接添加到 applicationHost.config,我知道设置是正确的。

我启用了失败请求跟踪并且没有产生错误。

小智 3

还尝试添加 mime 类型:

 <add mimeType="application/json; charset=utf-8" enabled="true" />
Run Code Online (Sandbox Code Playgroud)