我尝试添加从网站上已解析的网址中删除index.aspx
的出站重写规则。请参阅我的以下更新,了解我所拥有的规则。关于一个不起作用的简单规则,请参阅我的调查结果的第二次更新。
在这两种情况下,我都会收到500错误,并且无法在事件查看器中看到任何内容以帮助缩小问题范围。我们的入站规则已经运行正常,因此当我添加出站规则时,这是一个特别的问题。
我一直在线阅读并尝试使用以下出站规则,但仍然遇到500内部服务器错误?
<outboundRules>
<rule name="Remove index.aspx" preCondition="IsHTML">
<match pattern="(.*?)/?index\.aspx" />
<action type="Rewrite" value="{R:1}/" />
</rule>
<preConditions>
<preCondition name="IsHTML">
<add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" />
</preCondition>
</preConditions>
</outboundRules>
我注意到这不是我的出站规则语法的问题,因为即使通过IIS接口放入最简单的规则也会破坏网站(导致500错误):
<outboundRules>
<rule name="test">
<match filterByTags="A" pattern="test.com" />
<action type="Rewrite" value="blah" />
</rule>
</outboundRules>
安装了URL重写模块,因为我们有正确运行的入站规则。如果有帮助,IIS的版本为7。
答案 0 :(得分:2)
您使用的是GZIP压缩吗?这与出站重写规则冲突,可能是错误的原因。
有关如何将出站重定向规则与压缩相结合的一些建议,请参阅:http://forums.iis.net/t/1165899.aspx。