我正在使用这个答案https://stackoverflow.com/a/13861795/848513,它非常适合我网站上不再存在的静态文件转发到新文件位置。
但我也有一些需要转发到新位置的动态网址,以下代码似乎不起作用:
使用:
<rule name="SpecificRedirect50" stopProcessing="true">
<match url="aboutus.php" /> <!-- static URL -->
<action type="Redirect" url="/about-us" redirectType="Permanent" />
</rule>
不起作用:
<rule name="SpecificRedirect1" stopProcessing="true">
<match url="topic.php?id=39" /> <!-- dynamic URL-->
<action type="Redirect" url="/folder/?id=520" redirectType="Permanent" />
</rule>
尝试访问www.site.com/topic.php?id=39时出现的错误是404 Not Found错误 - 即,它没有被重写脚本过滤。
格式应该是什么?
由于
答案 0 :(得分:0)
好的,找到答案 - 这种格式有效:
<rule name="SpecificRedirect1111" stopProcessing="true">
<match url="^topic\.php$" />
<conditions>
<add input="{QUERY_STRING}" pattern="^id=39$" />
</conditions>
<action type="Redirect" url="/folder/?id=520" appendQueryString="false" redirectType="Permanent" />
</rule>