我正在尝试添加一个出站重写规则,从网站上的解析url中删除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>更新2
我注意到,这与出站规则的语法无关,因为即使通过IIS接口插入最简单的规则也会破坏网站(导致500个错误):
<outboundRules>
<rule name="test">
<match filterByTags="A" pattern="test.com" />
<action type="Rewrite" value="blah" />
</rule>
</outboundRules>URL重写模块的安装是因为我们有正确工作的入站规则。如果有帮助的话,IIS的版本是7。
发布于 2015-08-04 08:13:38
你在使用GZIP压缩吗?这与出站重写规则相冲突,可能是错误的原因。
有关如何将出站重定向规则与压缩相结合的一些建议,请参见:http://forums.iis.net/t/1165899.aspx。
https://stackoverflow.com/questions/31670167
复制相似问题