IIS 7 Url 重写规则
IIS 7 Url Rewrite Rule
我想重写现有的 url /rss/content.aspx?id=4878
以显示为 /rss
。
我还需要请求 /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
我想重写现有的 url /rss/content.aspx?id=4878
以显示为 /rss
。
我还需要请求 /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