<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Believe it,do it!

    Ideal is the beacon. Without ideal, there is no secure direction; without direction ,there is no life.
    理想是指路明燈。沒有理想,就沒有堅定的方向;沒有方向,就沒有生活。
    CTRL+T eclipse
    posts - 35, comments - 3, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    JSP使用URLRewirte實現url地址偽靜態化

    Posted on 2008-09-27 16:20 三羽 閱讀(1968) 評論(1)  編輯  收藏 所屬分類: 收 藏 夾

    URLRewirte的用處:
    1.滿足搜索引擎的要求
    2.隱藏技術實現,提高網站的移植性
    3.滿足美感的要求(個人感覺這個用處太牽強)

    項目部署
    1.首先在http://tuckey.org/urlrewirte/下載urlrewirtefilter
    2.解壓所下載的文件,把urlrewrite-2.6.0.jar復制到項目的WebRoot/WEB-INF/lib/目錄下,然后編譯
    3.把urlrewrite.xml復制到項目的WebRoot/WEB-INF/目錄下
    4.在web.xml文件中加入以下:

     1<!-- 動態地址靜態化 -->  
     2<filter>  
     3  <filter-name>UrlRewriteFilter</filter-name>  
     4  <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>  
     5  <init-param>  
     6    <param-name>logLevel</param-name>  
     7    <param-value>WARN</param-value>  
     8  </init-param>  
     9</filter>  
    10<filter-mapping>  
    11  <filter-name>UrlRewriteFilter</filter-name>  
    12  <url-pattern>/*</url-pattern>  
    13</filter-mapping>  
    14

    5.需要配置urlrewrite.xml文件來實現url靜態化,下面將詳細說明

    到這里相關的配置已經完成,下面看如何把動態地址靜態化
    1.普通url靜態化
    例如:要把http://localhost/prjtest/user/list.jsp轉換成http://localhost/prjtest/user/list.html
    這種是最簡單的,當一個servlet跳轉到list.jsp頁面列出user列表時,在urlrewrite.xml中這樣配置:
    1<rule>  
    2  <from>^/user/list.html</from>  
    3  <to type="redirect">/user/list.jsp</to>  
    4</rule>  
    當請求/user/list.html這個頁面時,實際上相當于請求/user/list.jsp頁面
    在servlet的跳轉要這樣寫:
    response.sendRedirect("./user/list.html");
    2.帶參數的url靜態化
    例如:要把http://localhost/prjtest/user/view.jsp?cid=1&cname=admin轉換成
           http://localhost/prjtest/user/view/1_admin.html
    在urlrewrite.xml中這樣配置:
    1<rule>  
    2  <from>^/user/view/([0-9]+)_([a-z]+).html$</from>  
    3  <to type="redirect">/user/view.jsp?cid=$1&cname=$2</to>  
    4</rule>  

    當請求/user/view/1_admin.html這個頁面時,實際上相當于請求/user/list.jsp?cid=1&cname=admin頁面
    在servlet的跳轉要這樣寫(cid,cname為變量):
    response.sendRedirect("./user/view/"+ cid +"_"+ cname +".html");
    注意:配置文件中用"&"來代替"&"
    一個通用的正則表達式:[a-zA-Z0-9]+

    特別說明
    為什么地址欄不變?
    原因就在于瀏覽器顯示的是最后被給定的URL。當一個URL被提交后,在某一個組件返回一個相應給瀏覽器之前,你的應用可能轉發請求多次。所有這些都發生在服務器端,瀏覽器并不知道發生了什么事。當一個Http相應被放回時,它并沒有包含地址信息,所以瀏覽器僅僅顯示用來作為初始請求的地址。

    要想讓地址欄也變成靜態化的URL,很簡單,將<to type="redirect">改成<to type="forward">即可

    評論

    # re: JSP使用URLRewirte實現url地址偽靜態化  回復  更多評論   

    2014-08-08 10:53 by 秦莞爾v
    恩恩額吧
    主站蜘蛛池模板: 免费观看无遮挡www的视频| 无遮挡免费一区二区三区| 国产91免费在线观看| 外国成人网在线观看免费视频| 免费看又黄又无码的网站| 国产成人精品免费视| 免费看的一级毛片| 精品国产日韩亚洲一区| 亚洲精品亚洲人成在线麻豆| 亚洲色偷偷综合亚洲AV伊人蜜桃| 九九全国免费视频| 曰批视频免费30分钟成人| 亚洲国产人成精品| 亚洲视频在线观看2018| 一级毛片免费观看不收费| 一二三四免费观看在线电影| 亚洲七七久久精品中文国产| 亚洲中文字幕久久精品无码2021| 国产亚洲精品成人久久网站| 亚洲视频在线观看免费视频| 亚洲第一成人影院| 亚洲AV成人无码久久WWW| 久久久久久影院久久久久免费精品国产小说| 99久久久国产精品免费无卡顿| 亚洲色成人网站WWW永久| 黄色毛片免费观看| 国产青草视频免费观看97| 亚洲国产成人精品激情| 久久99国产乱子伦精品免费| 亚洲理论电影在线观看| 香港一级毛片免费看| 亚洲国产人成精品| 有码人妻在线免费看片| 免费一区二区视频| 色费女人18女人毛片免费视频| 成全视频免费高清| 亚洲人成网站色7799| 成人激情免费视频| 亚洲欧美成aⅴ人在线观看| 在线免费观看视频你懂的| 亚洲av永久无码一区二区三区|