`
wanxiaotao12
  • 浏览: 476694 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jsp 用urlrewrite 实现URL 重写-简单

    博客分类:
  • J2ee
 
阅读更多

转自:http://hujin1123.iteye.com/blog/255064

是否看到别人的网站网址名都不带后缀名比较酷,比如qq空间的地址,其实用urlrewrite这个包很容易就实现了。
    下面是使用说明:

1.下载urlrewrite,官方下载地址:http://tuckey.org/urlrewrite/dist/urlrewritefilter-2.6.zip

2.解压缩文件,压缩包内文件copy到项目中(压缩包位置 -> 项目位置):

urlrewrite-2.6.0-src/webapp/WEB-INF/lib/urlrewrite-2.6.0.jar -> WebRoot/WEB-INF/lib/urlrewrite-2.6.0.jar

urlrewrite-2.6.0-src/webapp/WEB-INF/urlrewrite.xml -> WebRoot/WEB-INF/urlrewrite.xml
3.将以下代码添加到web.xml里

Xml代码 复制代码 收藏代码
  1. <filter>  
  2.         <filter-name>UrlRewriteFilter</filter-name>  
  3.         <filter-class>  
  4.             org.tuckey.web.filters.urlrewrite.UrlRewriteFilter   
  5.         </filter-class>  
  6.     </filter>  
  7.     <filter-mapping>  
  8.         <filter-name>UrlRewriteFilter</filter-name>  
  9.         <url-pattern>/*</url-pattern>  
  10.     </filter-mapping>  
<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.修改urlrewrite.xml

Xml代码 复制代码 收藏代码
  1. <?xml version="1.0" encoding="utf-8"?>    
  2. <!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 2.6//EN"    
  3. "http://tuckey.org/res/dtds/urlrewrite2.6.dtd">    
  4.   
  5. <!--    
  6.   
  7. Configuration file for UrlRewriteFilter    
  8. http://tuckey.org/urlrewrite/    
  9.   
  10. -->    
  11. <urlrewrite>    
  12.     <rule>    
  13.         <from>^/([a-z]+)$</from>    
  14.         <to type"forward" >/world.jsp?id=$1</to>    
  15.     </rule>    
  16.     <rule>  
  17.         <from>^/world/(.*)$</from>  
  18.         <to>/world.jsp?tid=$1</to>  
  19.     </rule>  
  20.     <rule>  
  21.         <from>^/(.*).html$</from>  
  22.         <to>/test1/$1.jsp</to>  
  23.     </rule>  
  24.        
  25.     <outbound-rule>    
  26.         <note>    
  27.         The outbound-rule specifies that when response.encodeURL is called (if you are using JSTL c:url)    
  28.         the url /rewrite-status will be rewritten to /test/status/.    
  29.            
  30.         The above rule and this outbound-rule means that end users should never see the    
  31.         url /rewrite-status only /test/status/ both in thier location bar and in hyperlinks    
  32.         in your pages.    
  33.         </note>    
  34.         <from>/rewrite-status</from>    
  35.         <to>/test/status/</to>    
  36.     </outbound-rule>  
  37. </urlrewrite>   
<?xml version="1.0" encoding="utf-8"?> 
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 2.6//EN" 
"http://tuckey.org/res/dtds/urlrewrite2.6.dtd"> 

<!-- 

Configuration file for UrlRewriteFilter 
http://tuckey.org/urlrewrite/ 

--> 
<urlrewrite> 
	<rule> 
		<from>^/([a-z]+)$</from> 
		<to type= "forward" >/world.jsp?id=$1</to> 
	</rule> 
	<rule>
	    <from>^/world/(.*)$</from>
	    <to>/world.jsp?tid=$1</to>
	</rule>
	<rule>
		<from>^/(.*).html$</from>
		<to>/test1/$1.jsp</to>
	</rule>
	
	<outbound-rule> 
		<note> 
		The outbound-rule specifies that when response.encodeURL is called (if you are using JSTL c:url) 
		the url /rewrite-status will be rewritten to /test/status/. 
		
		The above rule and this outbound-rule means that end users should never see the 
		url /rewrite-status only /test/status/ both in thier location bar and in hyperlinks 
		in your pages. 
		</note> 
		<from>/rewrite-status</from> 
		<to>/test/status/</to> 
	</outbound-rule>
</urlrewrite> 



rule是url重写规则,from是显示出来的地址,to是映射的实际地址,$1是重写参数,可以为多个,()里是匹配的正则表达式.
好了,在项目中新建world.jsp,启动tomcat,输入
http://localhost:8080/mysite/world/1

mysite是你的项目名

实际上访问的是http://localhost:8080/mysite/world.jsp?tid=1
这样就简单的实现了伪静态的效果

 

 

如何快速简单怎么分辨一个页面的URL是真正的静态还是伪静态呢

 

 静态URL页面右键查看属性页面文件大小是有显示的,而且伪静态的是没显示的

分享到:
评论

相关推荐

    urlrewrite3.04的demo

    `urlrewrite`是一款优秀的Java库,专门用于处理URL重写,它使得动态网站能够展现静态化URL的效果,提升网站的专业性和可读性。`urlrewrite`框架兼容于Java Servlet容器,如Tomcat,Jetty等,广泛应用于JSP项目中。 ...

    urlrewrite地址重写实例配置说明

    **URLRewrite地址重写**是Web开发中一个重要的技术,它主要用于优化和管理网站的URL,使得URL更友好、更具可读性,同时也能够实现动态URL到静态URL的转换,提升SEO效果。URLRewrite通常与Apache的mod_rewrite或者在...

    urlrewrite重写URL伪静态请求路径.

    在描述中提到的博客链接,可能详细介绍了如何使用`urlrewrite`进行URL重写的具体步骤和示例。通常,设置过程包括以下步骤: 1. **下载并添加依赖**:首先,你需要下载`urlrewritefilter`的JAR文件,并将其添加到你...

    URLRewrite配置和使用

    URLRewrite是一种URL重写技术,它可以满足搜索引擎的要求,隐藏技术实现,提高网站的移植性,并满足美感的要求。下面将详细介绍URLRewrite的配置和使用。 1. 满足搜索引擎的要求 搜索引擎对URL的要求非常严格,...

    URLrewrite-实例

    本文将深入探讨URL重写的基本概念,并以Java实现的开源库`URLrewrite`为例,详细解析其实现方式和应用场景。 首先,理解URL重写的核心概念。URL重写是服务器端的一种技术,通过HTTP服务器或应用程序动态改变请求和...

    urlRewrite

    ### URL重写(UrlRewrite)技术详解 #### 一、引言 URL重写(UrlRewrite)是一种网络服务器功能,它允许开发者通过规则来转换客户端请求的URL,从而达到美化URL、增加安全性以及提高搜索引擎优化(SEO)的效果。在...

    urlrewrite 3.2.0 java包

    URLRewrite 是一个功能强大的URL重写和转换工具,适用于Java环境。它基于Apache的Tuckey项目,为Web应用程序提供了类似于Apache HTTP服务器的mod_rewrite模块的功能。在3.2.0这个版本中,开发者可以期待更稳定、更...

    JSP项目的URL重写

    综上所述,`urlrewritefilter`是JSP项目中实现URL重写的一个强大工具,通过合理的配置和规则设定,可以极大地改善Web应用的URL结构,提高用户体验和SEO效果。理解并熟练运用它的配置和规则,对于提升Web应用质量具有...

    Url Rewrite 实现jsp页面伪静态化_凌风_.doc

    3. **配置规则**:`urlrewrite.xml`文件中定义了URL重写的规则。例如: - **从一个文件到另一个文件的转发**:`&lt;from&gt;`和`&lt;to&gt;`元素用于指定源URL和目标URL。不使用正则表达式时,配置可能过于复杂。 - **重定向...

    java urlrewrite解决默认页问题

    为了实现URL重写功能,我们需要在`web.xml`中配置URL Rewrite Filter,并在`urlrewrite.xml`中定义重写规则。 **1. `web.xml` 配置:** ```xml &lt;filter-name&gt;UrlRewriteFilter&lt;/filter-name&gt; &lt;filter-class&gt;org...

    urlrewrite

    在Web开发中,URL重写是一种常见的技术,它能够帮助我们优化网站的URL结构,提高搜索引擎优化(SEO),以及实现更加友好的用户界面。本文将重点讲解Java环境下的URL重写工具——URLRewrite,并深入探讨其工作原理、...

    urlrewrite 支持自定义多配置文件(*通配符)

    urlrewrite 只支持单个配置文件,默认的配置文件为:/WEB-INF/urlrewrite.xml 现在对urlrewrite-3.2的源码进行了修改,使它能够支持多文件和通配符的形式加载自定义配置文件,即可以进行如下的配置: &lt;param-name&gt;...

    java中的url重写

    在 Java 中,有多种方式可以实现 URL 重写,包括使用 WEB 服务器自身提供的组件和使用开源项目 UrlRewrite Filter。 UrlRewrite Filter 是一个基于 Java 的开源项目,它提供了一种灵活的方式来实现 URL 重写。它...

    Struts2下使用urlReWrite的最简实例(MyEclipse工程)

    `urlRewrite`是Tuckey开源组织提供的一个URL重写过滤器,它能够帮助我们在Struts2应用中实现这个目标。 在这个最简实例中,我们将探讨如何在MyEclipse环境中集成Struts2和urlRewrite,创建一个基本的应用来演示URL...

    urlrewrite静态页面的使用例子

    在本文中,我们将深入探讨如何使用`urlrewrite`框架来实现静态页面的转换,这是一个在J2EE环境中常用于URL重写和管理的工具。`urlrewrite`框架可以帮助开发者优化URL结构,使其更加用户友好,同时也便于搜索引擎优化...

    jsp的一个url重写

    在探讨“jsp的一个url重写”这一主题时,我们深入解析了达内郑州中心老师分享的关于URL重写的实现方式,这不仅展示了JSP技术在动态网页开发中的灵活性,也揭示了URL重写在提高用户体验、优化SEO以及简化URL结构方面...

    jsp 动态转静态 URL重写

    本篇文章将详细探讨“jsp动态转静态URL重写”的概念、重要性以及实现方法。 一、动态URL与静态URL的区别 1. 动态URL:动态URL通常包含“?”、“=”、"&"等特殊字符,用于传递参数给服务器执行相应的动态脚本,例如...

    Url Rewrite Filter实现页面伪静态化,简单实例及步骤

    为了定义具体的URL重写规则,我们需要创建一个`urlrewrite.xml`文件。该文件通常位于`WEB-INF`目录下,并且遵循特定的格式: ```xml &lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;!DOCTYPE urlrewrite PUBLIC "-//...

    urlrewrite简单例子

    "urlrewrite"是一个非常实用的工具,它基于Apache服务器的URL重写模块,可以帮助开发者轻松实现动态URL到静态URL的转换。本篇文章将深入探讨如何使用urlrewrite实现动态页面静态化,并通过具体的例子来阐述这一过程...

Global site tag (gtag.js) - Google Analytics