.net IIS 7.5在应用程序web.config中设置时不压缩JSON
我一直致力于从我们的一个MVC3站点启用JSON压缩。从我读过的各种文章来看,似乎我应该能够设置.net IIS 7.5在应用程序web.config中设置时不压缩JSON,.net,asp.net-mvc-3,iis-7.5,windows-server-2008-r2,.net,Asp.net Mvc 3,Iis 7.5,Windows Server 2008 R2,我一直致力于从我们的一个MVC3站点启用JSON压缩。从我读过的各种文章来看,似乎我应该能够设置应用程序/json;charset=utf-8applications web.config文件中的MIME类型。但这样做并不能实现压缩。但是,当添加到applicationhost.config文件时,它可以工作。我是不是遗漏了什么 My application web.config中添加了以下内容: <httpCompression directory="%SystemDrive%\inet
应用程序/json;charset=utf-8
applications web.config文件中的MIME类型。但这样做并不能实现压缩。但是,当添加到applicationhost.config文件时,它可以工作。我是不是遗漏了什么
My application 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”读取服务器级属性,因此即使您使用
appcmd
或overrideModeDefault=“Allow”
)解锁该节,较低级别的设置也将被忽略。谢谢,它消除了混淆。事实证明,即使您向ApplicationHost.config添加了一个元素,以便站点尝试并允许在站点级别进行HttpCompression,但由于AppHostOnly属性,它仍会保持锁定状态。唯一的方法是将application/json MIME类型添加到ApplicationHost.config中的“global”部分,从而为服务器上的所有站点启用该类型。@tpeczek压缩模块仅从“ApplicationHost.config”读取服务器级属性。
您有相关的源代码吗?我找不到任何来自微软的官方信息,尽管看起来确实如此,尤其是IIS8+请看这篇文章:stackoverflow.com/a/7634875/1131855我无法通过Notepad++编辑applicationHost.config。这个链接建议使用一个控制台命令,这对我很有用