URL重写出站规则IIS7

den*_*isb 15 asp.net iis iis-7 url-rewriting

尝试使用此模块重写URL,但是在尝试访问URL时出现以下错误.在网上寻找答案,但不知道解决这个问题的最佳方法是....任何想法?

HTTP错误500.52 - URL重写模块错误.当HTTP响应的内容被编码时,不能应用出站重写规则("gzip").**

IIS收到了请求; 但是,在处理请求期间发生了内部错误.此错误的根本原因取决于哪个模块处理请求以及发生此错误时工作进程中发生的情况.

IIS无法访问网站或应用程序的web.config文件.如果NTFS权限设置不正确,则会发生这种情况.

IIS无法处理网站或应用程序的配置.

经过身份验证的用户无权使用此DLL.

请求将映射到托管处理程序,但未安装.NET可扩展性功能.

Sea*_*arp 16

我尝试了aracntido的评论,但它似乎在IIS7中不起作用.它在IIS7.5的服务器上工作正常,所以我不确定是否有解决方法.

修复是在web.config中使用它:

<system.webServer>
  <urlCompression doStaticCompression="false" doDynamicCompression="false" dynamicCompressionBeforeCache="false" />
</system.webServer>
Run Code Online (Sandbox Code Playgroud)

  • 感谢您告诉我们如何在网站级别进行配置.改变整个服务器不是我很兴奋的事情. (2认同)

ara*_*ido 6

这是设计的,这意味着当HTML可用于URL Rewrite模块时,HTML已被压缩,因此它无法重写它,因为它必须首先解压缩它,重写它然后再次压缩它,这也是处理器能力强大.如果是动态内容,请在压缩之前尝试重写它.

在服务器级别(InetMgr)的"模块"中的URL重写模块之后移动动态压缩模块.禁用规则的"日志重写URL"(默认),否则模块将尝试成为管道中的最后一个.

静态压缩与出站重写不兼容.