zoukankan      html  css  js  c++  java
  • UrlRewrite重写url

    UrlRewrite就是我们通常说的地址重写,用户得到的全部都是经过处理后的URL地址。

    优点

    (1)提高安全性 
    可以有效的避免一些参数名、ID等完全暴露在用户面前,如果用户随便乱输的话,不符合规则的话直接会返回个404或错误页面,

    这比直接返回500或一大堆服务器错误信息要好的多。 
    (2)美化URL 
    去除了那些比如*.do之类的后缀名、长长的参数串等,可以自己组织精简更能反映访问模块内容的URL 
    (3)利于搜索引擎的收入 
    通过对URL的一些优化,可以使搜索引擎更好的识别与收录网站的信息

    使用步骤

    1下载jar

    官方地址:http://tuckey.org/urlrewrite/ 
    下载urlrewritefilter-4.0.3.jar,加入到工程lib目录下。

    2配置web.xml

    <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>
        <dispatcher>REQUEST</dispatcher>
        <dispatcher>FORWARD</dispatcher>
    </filter-mapping>

    3 配置urlrewrite.xml

    添加urlrewrite.xml 到工程的WEB-INF目录下

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 3.1//EN"
           "http://tuckey.org/res/dtds/urlrewrite3.1.dtd">
    <urlrewrite>
         <rule>
           <note>
               The rule means that requests to /test/status/ will be redirected to /rewrite-status
               the url will be rewritten.
           </note>
           <from>^/vweb/view/index-([0-9]+)$</from>
           <to>/vweb/view/index.shtml?_vwebid=$1&amp;type=show</to>
       </rule>
    </urlrewrite>

    urlrewrite是个过虑器,它将会过虑用户的所有请求,符合规则的便对其进行重定向。

    rule结点中from的规则默认使用的是正则表达式来匹配的, 
    当用户访问服务器时的URL会与该配置相比较,如果符合规则就会按照下面to结点中的配置对其进行跳转,其默认是forward跳转。 


    简单分析一下上面的正则表达式“^/vweb/view/index-([0-9]+)$

    “^

    “$”匹配输入字符串的结束位置 

    “”转义字符,表示后面的“-”不具有特殊含义,只是一个简单的字符串。 

    “([0-9]+)”: 

    “[0-9]”:由0到9中任何数据组成的字符串 
    “+”匹配1或多个正好在它之前的那个字符

  • 相关阅读:
    python day09
    python day08
    python day07
    python day06
    python day05
    Django-Form组件之字段
    python装饰器
    npm常用命令
    python常用模块-re 正则表达式
    Django-forms效验组件
  • 原文地址:https://www.cnblogs.com/liaojie970/p/7131903.html
Copyright © 2011-2022 走看看