詳解IIS中URL重寫工具的匹配URL-規則模式(rule patterns)


原文作者:十有三

原文出處:http://shiyousan.com/post/635659901987610088

 

Rule patterns規則模式在IIS的URL重寫模塊中,是較為關鍵的設置。只有規則模式的URL匹配成功時,其他的規則才能起到作用。規則模式的匹配URL設置主要是匹配URL中的路徑部分,一般使用正則表達式和通配符對URL路徑進行匹配,下面會仔細的說明。

 

首先要了解規則模式是匹配URL中的哪一部分,假設當前有網站的URL地址為http://shiyousan.com/Home/Index?page=1,那么規則模式匹配的部分就是Home/Index,域名的主機部分和參數部分如果要匹配,則需要在規則條件(Rule conditions)那設置,並且要使用到服務器變量,具體可以查看這篇文章:詳解IIS中URL重寫工具的規則條件(Rule conditions)

官方相關文檔:Rule Pattern

PS:這里非常重要,一定要注意匹配URL的只是路徑部分,是不包含主機域名部分!


下面說明如何設置匹配URL規則的各個屬性:

設置匹配URL規則

如上圖所示,匹配方式我們可以選擇與模式匹配與模式不匹配這兩種。從字面上很容易理解這兩個選項的意思,主要還是根據下面的匹配語法和模式相關聯。

接下來選擇要使用的匹配語法,一共有三種:正則表達式,通配符,完全匹配,這里我們選擇的是使用正則表達式。

最后設置匹配規則模式的語法,這里我設置的正則表達式是 ^(.*?)/Home/(Index)$ 。點擊右邊的測試模式,我們可以測試正則匹配的是否正確,輸入URL:http://shiyousan.com/Home/Index,最終正確的顯示匹配,如下圖所示:

測試模式界面

我們使用正則一共可以捕獲到3組反向引用的內容,具體關於{R:0}/{R:1}/{R:2}和向后引用/反向引用,可以看這篇文章:詳解IIS中的重寫工具下關於操作重定向URL中的{R:N}與{C:N}

到這里就對rule patterns進行了全部的說明,以后在IIS上使用URL重寫工具就會容易的多。


 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM