URLRewirte的偽靜態化

2021-08-30 05:22:45 字數 1436 閱讀 9574

在網上找了很多關於urlrewirte的使用,基本都是關於asp的,jsp的相關文件很少,而且大多寫的很模糊,看了之後也是不清不楚,而且在專案中無法使用成功,鑑於此,自己整理了關於urlrewirte的用法.該方法只是實現了url的偽靜態化,並不是真正的靜態化.

工作環境:eclipse3.2.2+myeclipse_5.5.1+tomcat5.0.28

urlrewirte版本:urlrewrite-2.6.0.jar

前提條件:有乙個可以正常使用的web應用專案

urlrewirte的用處:

1.滿足搜尋引擎的要求

2.隱藏技術實現,提高**的移植性

3.滿足美感的要求(個人感覺這個用處太牽強)

專案部署

3.把urlrewrite.xml複製到專案的webroot/web-inf/目錄下

4.在web.xml檔案中加入以下:

urlrewritefilter

org.tuckey.web.filters.urlrewrite.urlrewritefilter

loglevel

warn

5.需要配置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頁面

在servlet的跳轉要這樣寫:

response.sendredirect("./user/list.html");

2.帶引數的url靜態化

例如:要把http://localhost/prjtest/user/view.jsp?cid=1&cname=admin轉換成

在urlrewrite.xml中這樣配置:

當請求/user/view/1_admin.html這個頁面時,實際上相當於請求/user/list.jsp?cid=1&cname=admin頁面

在servlet的跳轉要這樣寫(cid,cname為變數):

注意:配置檔案中用"&"來代替"&"

靜態化 偽靜態的實現

偽靜態主要有兩種方式實現 1.配置 重啟伺服器,全域性 2.htaccess 區域性 1.配置 1.去除httpd.conf檔案中 loadmodule rewrite module modules mod rewrite.so 前面的 號 linux中如果httpd.conf中沒有這行 那麼就到與...

頁面靜態化 偽靜態

1 先提出乙個問題 假設我的網域名稱為 www.servername.com,能否實現www.servername.com aaa bbb.html實際上是訪問www.servername.com ccc ddd.php?問題分析 首先,www.servername.com實際上已經確定了ip和埠號...

PHP 頁面靜態化 純靜態化 偽靜態化

概念 php靜態化分為 純靜態化 和 偽靜態化 純靜態化又分為 區域性靜態化 和 完全靜態化 純靜態化 是把php生成的動態頁面儲存成靜態的html檔案,使用者訪問該靜態頁面,而不是使用者每一次訪問都重新生成一張相同的網頁,優點就是減小伺服器開銷,區域性靜態化 是生成的靜態檔案中,有區域性的資料還是...