我有2个网址重写规则。
<rule name="Rewrite to microsoft-windows">
<match url="^microsoft-windows"/>
<action type="Redirect" url="http://www.mysite.com/default.aspx?name=microsoft-windows"/>
</rule>
<rule name="Rewrite to microsoft">
<match url="^microsoft"/>
<action type="Redirect" url="http://www.mysite.com/default.aspx?name=microsoft"/>
</rule>
由于连字符,只适用“微软”规则。所以
http://www.mysite.com/microsoft-windows
指向错误的规则。我如何指出:
http://www.mysite.com/default.aspx?name=microsoft-windows
而不是:
http://www.mysite.com/default.aspx?name=microsoft
答案 0 :(得分:1)
如何只使用一条规则?
<rule name="Rewrite rule" stopProcessing="true">
<match url="^(microsoft|microsoft-windows)$" />
<action type="Redirect" url="http://www.mysite.com/default.aspx?name={R:1}" />
</rule>
它会检查路径是否仅包含microsoft
或microsoft-windows
,然后重定向到http://www.mysite.com/default.aspx?name={R:1}
,其中{R:1}
是匹配路径的后向引用。