url僞靜態、url重寫

url重寫的好處:

1、保護真實url的結構組成,提高安全性

2、有利於搜索引擎的收入,提高搜索排名

java web中對url進行重寫方法:

1.引入urlrewritefilter jar包

dependency>
	    <groupId>org.tuckey</groupId>
	    <artifactId>urlrewritefilter</artifactId>
	    <version>${urlrewrite.version}</version>
	</dependency>

2.配置web.xml

<filter>
		<filter-name>UrlRewriteFilter</filter-name>
		<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
		<init-param>
			<param-name>confPath</param-name>
			<param-value>/WEB-INF/urlrewrite.xml</param-value>
		</init-param>
		<init-param>
			<param-name>logLevel</param-name>
			<param-value>INFO</param-value>
		</init-param>
	</filter>
	
	<filter-mapping>
		<filter-name>UrlRewriteFilter</filter-name>
		<url-pattern>/item/*</url-pattern>
		<dispatcher>REQUEST</dispatcher>
		<dispatcher>FORWARD</dispatcher>
	</filter-mapping>
	
	<filter-mapping>
		<filter-name>UrlRewriteFilter</filter-name>
		<url-pattern>/article/*</url-pattern>
		<dispatcher>REQUEST</dispatcher>
		<dispatcher>FORWARD</dispatcher>
	</filter-mapping>
	
	<filter-mapping>
		<filter-name>UrlRewriteFilter</filter-name>
		<url-pattern>/activity/*</url-pattern>
		<dispatcher>REQUEST</dispatcher>
		<dispatcher>FORWARD</dispatcher>
	</filter-mapping>

3.配置urlrewrite.xml文件,該文件默認在WEB-INF目錄下

<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 4.0//EN"
        "http://tuckey.org/res/dtds/urlrewrite4.0.dtd">

<urlrewrite>
	<rule>
		<note>重寫商品詳情頁鏈接</note>
		<from>^/item/([0-9]+).html$</from>
		<to>/item/itemDetail?id=$1</to>
	</rule>
	
	<rule>
		<note>文章詳情鏈接</note>
		<from>^/([a-z]+)/([0-9]+).html$</from>
		<to>/$1/detail?id=$2</to>
	</rule>
</urlrewrite>
<note>註釋說明

<from>表示靜態url,即訪問的來源,可以是正則匹配

<to>表示轉向的目標url,項目中真實訪問的url

$1 $2表示靜態url中匹配的參數,依次對應

<to>標籤默認的type的屬性是forward,即瀏覽器中的地址不會發生改變;redirect值表示重定向,地址會發生改變。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章