? ?? 訪問(wèn)某論壇時(shí),發(fā)現(xiàn)論壇全是html頁(yè)面。今天搞明白了,原來(lái)是重寫(xiě)了頁(yè)面的url。通俗的說(shuō)就是雖然地址欄里的是html結(jié)尾的url,但實(shí)際上訪問(wèn)的是后臺(tái)動(dòng)態(tài)jsp(php、asp)頁(yè)面。好像是一種視覺(jué)欺騙。
???? 實(shí)現(xiàn)這個(gè)技術(shù)也很容易,一般都會(huì)使用國(guó)外的一個(gè)urlrewriter過(guò)濾器。
???? 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á)式有所了解,以上的語(yǔ)句可以實(shí)現(xiàn)當(dāng)你訪問(wèn)http://localhost/test/
thread12_56.html時(shí),會(huì)轉(zhuǎn)向http://localhost/
show.jsp?id=12&
order=56這個(gè)動(dòng)態(tài)頁(yè)面。
???????? 個(gè)人覺(jué)得需要開(kāi)發(fā)人員對(duì)頁(yè)面參數(shù)非常熟悉。這個(gè)技術(shù)還是值得大家來(lái)嘗試一下的。個(gè)人論壇可以使用此技術(shù):),讓別人看不出你是使用什么編寫(xiě)的。