本文的實驗站點: http://www.5a520.cn 小說520網(wǎng) http://www.bt285.cn BT下載
UrlRewriteFilter的介紹:
UrlRewriteFilter是一個用于改寫URL的Web過濾器,類似于Apache的mod_rewrite。適用于任何Web應(yīng)用服務(wù)器(如Resin,Orion,Tomcat等)。其典型應(yīng)用就把動態(tài)URL靜態(tài)化,便于搜索引擎爬蟲抓取你的動態(tài)網(wǎng)頁。
為什么要使動態(tài)的URL變成偽靜態(tài)的URL:
1:為了對搜索的友好,因為有些搜索不能抓取動態(tài)頁面或是對動態(tài)抓取的頁面沒有靜態(tài)頁面高.
2:屏蔽內(nèi)部的url結(jié)構(gòu).
3:美化url.
UrlRewriteFilter使用:
1.下載http://tuckey.org/urlrewrite/#download目前穩(wěn)定的版本是2.6,最新版3.1,推薦使用2.6版.解壓縮后將文件考到相應(yīng)的web-inf/lib和web-inf下.
2、配置web.xml









根據(jù)自己的需要,將相應(yīng)目錄下的url轉(zhuǎn)給UrlRewriteFilter來處理。
3、配置urlwrite規(guī)則文件WEB-INF/urlrewrite.xml
http://www.5a520.cn/book/116 會直接forward 到 http://www.5a520.cn/book.php?id-116 結(jié)果都是"創(chuàng)世傳奇之魔族風(fēng)云 _玄幻小說_小說520網(wǎng)"這個標(biāo)題.
http://www.5a520.cn/bookxuanhuan/3 會直接forward 到 http://www.5a520.cn/cata.php?id=bookxuanhuan&index=3 結(jié)果都是"玄幻小說_小說520網(wǎng)"這個標(biāo)題.
配置如下:
















注意:
1.urlrewrite.xml是utf-8.所以如果你要在rule上加note標(biāo)簽為中文的話,也一定是要utf-8
2.UrlRewriteFilter 最好是配置在web.xml的前面filter上,不然有可能對有些url轉(zhuǎn)變失去作用.
3.在寫rule的時,如果有多個參數(shù)時,中間的連接符號&應(yīng)該是&
下面對 urlrewrite.xml標(biāo)簽的一些說明:
urlrewrite屬性:有僅只有一個.
rule屬性::至少一個.

















<condition>屬性(可選)
可以對時間,方法,來源,端口,類型等進(jìn)行設(shè)置,如
<condition name="user-agent" operator="notequal">Mozilla/[1-4]</condition> 客戶端游覽器不是Mozilla14版本以下可以訪問.





type屬性:
最主要就是 forward (default):在客戶端URL是不轉(zhuǎn)向的 redirect 在客戶端URL是轉(zhuǎn)向的,所以一般采用 forward
set屬性:這個有點像apache中的rewrite強(qiáng)大之處了.除了下面的設(shè)置client,還可以設(shè)置cookie,content- type,charset,header,request









