我们已经将我们的网站从一个php apache网站移动到一个asp.net mvc网站,我正试图让特定的重定向工作但是卡住了。
基本上我希望将http://www.mysite.com/index.php?pr=about_us的任何请求重定向到http://www.mysite.com/About-Us
我试过这个,但它不起作用。有什么想法吗?
<rewrite>
<rules>
<rule name="About Us" stopProcessing="true">
<match url="index.php?pr=About_Us" ignoreCase="false" />
<action type="Redirect" redirectType="Permanent" url="http://www.mysite.com/About-Us" />
</rule>
</rules>
</rewrite>
我也试过了,但它也没有用。
<httpRedirect enabled="true" exactDestination="true" httpResponseStatus="Permanent">
<add wildcard="index.php?pr=About_Us" destination="/About-Us" />
</httpRedirect>
我需要在各种页面中实现十几个这些特定的重定向。
非常感谢任何帮助! 感谢
答案 0 :(得分:2)
试试这个:
<rule name="About Us" stopProcessing="true">
<match url="^(.*)$">
<conditions>
<add input="{URL}" pattern="index.php?pr=About_Us" />
</conditions>
</match>
<action type="Redirect" redirectType="Permanent" url="http://www.mysite.com/About-Us" />
</rule>
修改强>
这是条件的另一种可能性:
<conditions logicalGrouping="MatchAll">
<add input="{QUERY_STRING}" pattern="?pr=About_Us" />
<add input="{REQUEST_FILENAME}" pattern="index.php" />
</conditions>
编辑 - 工作解决方案
<rule name="About Us" stopProcessing="true">
<match url="^(.*)$" />
<conditions logicalGrouping="MatchAll">
<add input="{QUERY_STRING}" pattern="/?pr=About_Us$" />
<add input="{REQUEST_FILENAME}" pattern="index.php" />
</conditions>
<action type="Redirect" redirectType="Permanent" url="http://www.mysite.com/About-Us" />
</rule>