<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
本文詳細介紹解釋了IIS7 Web.config rewrite規則設定url重寫功能,通過講解範例的語法結構和標籤用法,搭配一些簡單的正規表示式,你可以寫出符合自己要求的重寫規則。
首先請注意,本文適用IIS7及以上rewrite重寫功能。
同樣要注意的是,要實現在 Web.config 的rewrite重寫功能,你必須先安裝 URL_Rewrite 重寫模組。
下面是本文要介紹的內容,如何通過 Web.config 的rewrite規則,設定url重寫功能。
範例程式碼
<?xml version="1.0" encoding="UTF-8"?> <configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0"> <system.webServer> <rewrite> <rules> <rule name="rule1"> <match url="^(.*)t/([0-9,a-z]*)" ignoreCase="false" /> <action type="Rewrite" url="{R:1}/list.asp?id={R:2}" appendQueryString="false" /> </rule> <rule name="rule2"> <match url="^(.*/)*([0-9]+)-([0-9]+)-([0-9]+)-([0-9]+).html?*(.*)$" /> <action type="Rewrite" url="{R:1}/index.php?moduleid={R:2}&catid={R:3}&itemid={R:4}&page={R:5}" /> </rule> </rules> </rewrite> </system.webServer> </configuration>
解釋
1、<rule>
節點的name不能重複。
2、<match>
裡的url是一個正規表示式,範例裡^(.*)t/([0-9,a-z]*)
是一個常用的句式。
^
匹配域名開頭,如:https://www.jb51.net/
,注意域名後面有個斜槓/
。
(.*)
匹配任何字元。
([0-9,a-z]*)
匹配任何數位和字母。
因此,^(.*)t/([0-9,a-z]*)
可以匹配如下的存取網址(假如網站域名是www.jb51.net):
https://www.jb51.net/t/123
3、<action type="Rewrite" ...>
表示執行的型別是重寫,裡面的url是實際網址,{R:1}/list.asp?id={R:2}
的解釋如下:
{R:1}
對應<match>
裡的url的第一個括號內容,{R:2}
對應<match>
裡的url的第二個括號內容,如果有{R:3}
、{R:4}
,如此類推。
所以,如果假如使用者存取的網址是
https://www.jb51.net/t/123
https://www.jb51.net/news/t/a1
那麼,其對應的實際網址是
https://www.jb51.net/list.asp?id=123
https://www.jb51.net/news/list.asp?id=a1
4、按照上面的解釋,你應該差不多能讀懂範例的rule2重寫規則了。
$
,這是個結束符,表示匹配的url到此結束,後面沒有其他字元了。
([0-9]+)
表示匹配任何數位。
.html
表示匹配 .html
。
?
表示匹配一個問號?
。
特別要注意,反斜槓是跳脫符,因為正規表示式裡,一點
.
是表示匹配任何字元的意思,所以要加上反斜槓對其跳脫,這樣才表示匹配的是一個點.
。
同樣地,問號?
也是一個元符號,它表示匹配前面的子表示式零次或一次,因此,也需要在其前面加上跳脫符,這才表示匹配的是一個問號
?
。
5、其他
ignoreCase="false"
表示不能忽略大小寫,如果該值設為true
,則表示忽略大小寫。
appendQueryString="false"
表示不使用url引數。
總結
本文詳細介紹解釋了IIS7 Web.config rewrite規則設定url重寫功能,參考範例的語法結構,你可以寫出符合自己要求的重寫規則,你需要了解一些簡單的正規表示式的語法。
到此這篇關於IIS7中Web.config的rewrite範例分析講解,教你看懂重寫規則的文章就介紹到這了,更多相關IIS7中url重寫的rewrite規則內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45