我想知道是否可以設置一個重寫規則,其中不指定域,只訪問所訪問的頁面和要重定向的頁面。我的目標是不必針對不同的網站(即dev.mysite.com,qa.mysite.com等)使用相同規則的不同版本,因此一個規則適用於多個子域。例如,我需要重定向某人前往dev.mysite.com/mexico
至mx.dev.mysite.com/es/mexico
,但這也必須爲QA工作。另外,生產有一個稍微不同的領域,這會使這變得更加困難。這是我想出的 - 它絕對需要工作:重寫適用於不同域和子域的規則
<rule name="Test Mexico Redirect">
<match url="^mexico"/>
<action type="Redirect" url="http://mx.{R:2}/es/mexico" redirectType="Permanent"/>
</rule>
不幸的是,它只是不工作;我得到一個空白頁面。可能是因爲{R:2}正在尋找規則中的域名,而沒有指定域名。我想不出一種方法來做到這一點,因爲即使在所有環境中域名都不相同。
這將是很酷,如果你可以在<action>
元素中使用正則表達式,那麼我會做這樣的事情:^(mx\.).*com/es/mexico
。