繁体   English   中英

在应用程序web.config中设置时,IIS 7.5不压缩JSON

[英]IIS 7.5 not compressing JSON when set in application web.config

我一直致力于从我们的一个MVC3站点启用JSON压缩。 从我读过的各种文章看起来好像我应该能够设置application/json; charset=utf-8 应用程序web.config文件中的application/json; charset=utf-8 MIME类型。 但这样做并不能实现压缩。 但是当添加到applicationhost.config文件时,它可以工作。 我在这里错过了什么吗?

我的应用程序web.config添加了以下内容:

<httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files">
    <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" />
    <dynamicTypes>
        <add mimeType="application/javascript; charset=utf-8" enabled="true" />
        <add mimeType="application/x-javascript" enabled="true" />
        <add mimeType="application/json" enabled="true" />
        <add mimeType="application/json; charset=utf-8" enabled="true" />
    </dynamicTypes>
    <staticTypes>
        <add mimeType="application/javascript; charset=utf-8" enabled="true" />
        <add mimeType="application/x-javascript" enabled="true" />
        <add mimeType="application/json" enabled="true" />
        <add mimeType="application/json; charset=utf-8" enabled="true" />
    </staticTypes>
</httpCompression>
<urlCompression doStaticCompression="true" doDynamicCompression="true" />

服务器正在运行带有IIS7.5的Windows Server 2008 R2。 我还为相关网站安装并启用了动态压缩功能。

任何帮助将不胜感激,因为我不希望为整个服务器启用JSON压缩。

HttpCompression部分在ApplicationHost.config中定义了AppHostOnly ,它阻止您在web.config中设置其属性。

压缩模块仅从“ApplicationHost.config”中读取服务器级属性,因此即使您解锁该部分(使用appcmdoverrideModeDefault="Allow" ),也会忽略较低级别的设置。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM