所以我有一个site.com/blog/12/12/articleNames,我想将所有内容重定向到site.com/articles/12/12/articleNames。
所以在我的博客文件夹中,我在我的web.config
中有这个 <rewrite>
<rules>
<rule name="articleMove" stopProcessing="true">
<match url="^blog/([0-9]+)/([0-9]+)/([_0-9a-z-])/" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" />
</conditions>
<action type="Rewrite" url="/articles/{R:1}/{R:2}/{R:3}" />
</rule>
</rules>
</rewrite>
然而,我仍然继续获得404页面。
答案 0 :(得分:1)
使用IIS Failed Request Tracing进一步调查“幕后”发生的事情。
答案 1 :(得分:1)
<rule name="articleMove" stopProcessing="true">
<match url="^([0-9]+)/([0-9]+)/([_0-9a-z-]+)" />
<action type="Redirect" url="/articles/{R:1}/{R:2}/{R:3}" />
<conditions>
</conditions>
</rule>
因此,如果网址为http://site.com/blog/whatevergoeshere。忽略博客部分。你只需要做{R:1}等等。所以如果网址是http://site.com/blog/12/10/the-article-name而你希望它是http://site.com/articles/12/10/the-article-name就是上面所做的。