使用urlrewrite的優點:
1.為**開發提供良好的搜尋。
2.安全性,隱藏了原有的開發技術,**的移植很強。
3.完全靜態化為html頁面,規範化
使用介紹:
1.將如下**加到專案的web.xml中
[html]view plain
copy
print?
<
ilter
>
<
filter-name
>
urlrewritefilter
filter-name
>
<
filter-class
>
org.tuckey.web.filters.urlrewrite.urlrewritefilter
filter-class
>
<
init-param
>
<
param-name
>
loglevel
param-name
>
<
param-value
>
warn
param-value
>
init-param
>
filter
>
<
>
<
filter-name
>
urlrewritefilter
filter-name
>
<
url-pattern
>
/*url-pattern
>
>
2.配置urlrewrite.xml檔案來實現url靜態化(可以在**上找到)
(1)普通url靜態化
例如:要把http://localhost/prjtest/user/list.jsp轉換成http://localhost/prjtest/user/list.html
這種是最簡單的,當乙個servlet跳轉到list.jsp頁面列出user列表時,在urlrewrite.xml中這樣配置:
/user/list.html
/user/list.jsp
當請求/user/list.html這個頁面時,實際上相當於請求/user/list.jsp頁面
/index.html
/index.action
當請求index.html時直接轉到index.action,實現請求的偽靜態化。
(2)帶引數的url靜態化 (多引數的問題)
例如:要把http://localhost:8080/test/user/get.jsp?id=1&name=admin轉換成
在urlrewrite.xml中這樣配置:
1 2 /get([0-9]+)_([a-z]+).html$
3 /user/get.jsp?id=$1&name=$2 4
//這裡是用([a-z])+ 正規表示式表示所有的字母
用([0-9])+表示所有的數字
當請求/get1_admin.html這個頁面時,實際上相當於請求/user/get.jsp?id=1&name=admin頁面,在servlet的跳轉要這樣寫(id,name為變數):
注意:配置檔案中用"_"來代替"&"。
(個人認為這種偽靜態化相對於action的形式是比較安全的,但是也加重了伺服器的負載,也就是一次請求,先是靜態的請求,然後對應的是一次轉向,間接的加重了伺服器的負荷)
**
UrlReWriter 使用經驗小結
urlrewriter 是微軟封裝好了的乙個url重寫元件。使用它可以讓我節約很多自已開發的時間。好了,開始講述我的應用經驗,這只是很菜鳥的經驗,高手就不用看了。第二步,在web.config中加入 第二步,加入重寫的規則節點 如 sell 0 9 html search search sell.a...
URLRewriter原始碼分析
public class rewriterconfigserializersectionhandler iconfigurationsectionhandler endregion 另外就是這個類了,web請求流程明白的人們,應該都知道,請求先到httpmodule在到httphandle,然後在返...
UrlReWriter 使用經驗小結
urlrewriter 是微軟封裝好了的乙個url重寫元件。使用它可以讓我節約很多自已開發的時間。好了,開始講述我的應用經驗,這只是很菜鳥的經驗,高手就不用看了。第二步,在web.config中加入 第二步,加入重寫的規則節點 如 sell 0 9 html search search sell.a...