我尝试在IIS上使用IIS重写出站规则,其中某些网站已成功实施。
所以我创建了一个简单的规则,将“test”替换为“123456”。
我收到此错误
500 - 内部服务器错误。您的资源存在问题 正在寻找,它无法显示。
的Web.config
<system.webServer>
<!--<urlCompression dynamicCompressionBeforeCache="false" /> -->
<urlCompression doStaticCompression="false" doDynamicCompression="true" dynamicCompressionBeforeCache="false" />
似乎我添加任何(只是任何)oubound规则网站崩溃。 我的意思是规则的模式没有影响,但规则本身就是一个条目。
有任何线索吗?
P.S。我应该安装URL Rewrite Module 2.0,因为我似乎已经安装了旧版本...... 它会解决这个问题吗?
P.S。我做了一些额外的更改,但它根本不起作用。
&LT; urlCompression doStaticCompression =“false” doDynamicCompression =“false”dynamicCompressionBeforeCache =“false”/&gt;
我也在这里询问过这个问题https://forums.iis.net/t/1226401.aspx?Outbound+rule+is+giving+500+error+for+the+entire+website
答案 0 :(得分:2)
对于outboundRules,请使用如下详细信息..
3.最后一步,可能不需要 - 但是!打开IIS管理控制台 - 单击顶级项,从IIS段打开“模块”组件。在右侧栏中,单击“查看有序列表...”并确保RewriteModule出现在DynamicCompressionModule下面的列表中。 有关参考,请参阅此处 - http://codeblog.shawson.co.uk/iis7-urlrewrite-outbound-links-with-compression-enabled/
<rewrite>
<rules>
<rule name="InboundFriendlyAboutUs" stopProcessing="true">
<match url="^about-our-car-finance$" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="page.aspx" />
</rule>
</rules>
<outboundRules>
<rule name="Outbound1" preCondition="IsHtml">
<match filterByTags="A, Form" pattern="^(.*)About-Us\.aspx$"/>
<action type="Rewrite" value="{R:1}about-our-car-finance"/>
</rule>
<preConditions>
<preCondition name="IsHtml">
<add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html"/>
</preCondition>
</preConditions>
</outboundRules>
</rewrite>