IIS 7 URL重写规则
问题描述:
我想重写现有的URL /rss/content.aspx?id=4878
以显示为/rss
。IIS 7 URL重写规则
我还需要请求/rss
才能显示相同的内容。我有这样的规则:
<rule name="ContentRSS">
<match url="^rss$" />
<action type="Rewrite" url="rss/content.aspx?id=4878" />
</rule>
,但它不会重写请求rss/content.aspx?id=4878
作为/rss
答
您的规则应该是:
<rules>
<rule name="ContentRSS redirect" stopProcessing="true">
<match url="^rss/content.aspx$" />
<action type="Redirect" url="/rss" appendQueryString="false" />
<conditions>
<add input="{QUERY_STRING}" pattern="id=4878" />
</conditions>
</rule>
<rule name="ContentRSS rrewrite">
<match url="^rss$" />
<action type="Rewrite" url="/rss/content.aspx?id=4878" />
</rule>
</rules>
此规则将改写/rss
到/rss/content.aspx?id=4878
。并且当您尝试在浏览器中打开rss/content.aspx?id=4878
时,它将重定向至/rss