Posted on 2007-03-22 14:11
sugo 閱讀(2267)
評(píng)論(3) 編輯 收藏
? ?? 訪問某論壇時(shí),發(fā)現(xiàn)論壇全是html頁面。今天搞明白了,原來是重寫了頁面的url。通俗的說就是雖然地址欄里的是html結(jié)尾的url,但實(shí)際上訪問的是后臺(tái)動(dòng)態(tài)jsp(php、asp)頁面。好像是一種視覺欺騙。
???? 實(shí)現(xiàn)這個(gè)技術(shù)也很容易,一般都會(huì)使用國外的一個(gè)urlrewriter過濾器。
???? 1、下載:
???? 下載地址為
http://tuckey.org/urlrewrite/#download。
???? 2、解壓和基本配置
???? 使用的為2.6版本,解壓后,包中含有一個(gè)urlrewrite.xml,此為關(guān)鍵的配置文件。還有l(wèi)ib文件夾下的urlrewrite-2.6.0.jar這個(gè)包。將此包放到web應(yīng)用程序的web-inf/lib下面,urlrewrite.xml放到web-inf下。
???? 3、修改應(yīng)用程序web-inf文件夾下的web.xml文件,添加如下內(nèi)容:
????? <filter>
???????? ??? <filter-name>UrlRewriteFilter</filter-name>
???????????? <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
????? </filter>
????? <filter-mapping>
??????? ???? <filter-name>UrlRewriteFilter</filter-name>
???????????? <url-pattern>/*</url-pattern>
????? </filter-mapping>
???? 4、修改應(yīng)用程序web-inf文件夾下的urlrewrite.xml文件,添加rule,內(nèi)容如下:
??????? <rule>
?????????? <name>html rule</name>
?????????? <from>/test/thread([0-9]+)_([0-9]+).html</from>
?????? ??? <to>/show.jsp?id=$1&order=$2</to>
?????? </rule>
???????? 其中要求對(duì)正則表達(dá)式有所了解,以上的語句可以實(shí)現(xiàn)當(dāng)你訪問http://localhost/test/
thread12_56.html時(shí),會(huì)轉(zhuǎn)向http://localhost/
show.jsp?id=12&
order=56這個(gè)動(dòng)態(tài)頁面。
???????? 個(gè)人覺得需要開發(fā)人員對(duì)頁面參數(shù)非常熟悉。這個(gè)技術(shù)還是值得大家來嘗試一下的。個(gè)人論壇可以使用此技術(shù):),讓別人看不出你是使用什么編寫的。