来源:
struts2与urlrewrite的整合
关于为什么要把.jsp或者.do?param1=value1¶m2=value2.......这样的链接地址修改成普通的html地址,
作用1:
便于搜索引擎搜索。
作用2:
隐藏技术实现,提高网站的移植性,对于移植性这点会带来很大的方便,当底层定义的相关.do方法变化或者修改后不必到每个页面去修改相关的链接,而是直接修改urlrewrite.xml
其他的相关介绍网上一把一把的,下面具体说实现。环境struts2+spring+hibernate
第一步:
下载JAR包,我这用的是urlrewrite-2.6.0.jar
第二步:
修改项目的web.xml,在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>
- </filter-mapping>
注意与其他filter间的顺序,加在OpenSessionInViewFilter之 后,org.apache.struts2.dispatcher.FilterDispatcher之前,不然会出现could not initialize proxy - the owning Session was closed异常
将struts2过滤器进行修改,修改后如下
- <filter-mapping>
- <filter-name>struts2</filter-name>
- <url-pattern>/*</url-pattern>
- <dispatcher>REQUEST</dispatcher>
- <dispatcher>FORWARD</dispatcher>
- </filter-mapping>
一定要加
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
不然会导致404错误
第三步:
将官方下载urlrewrite.xml放进WEB-INF目录下注释掉不相关类容,加入自己的规则
第四步:
具体的规则说明
假设你的站点为:http://127.0.0.1:8080/app
规则1:不带参数的情况
<rule>
<note/>
<from>^/testUrl.html</from>
<to>/ajax/testUrl.do</to>
</rule>
当你请求http://127.0.0.1:8080/app/testUrl.html实际是访问的http://127.0.0.1:8080/app/ajax/testUrl.do
规则2:带一个数字参数的情况
<rule>
<note>comment-productId.html</note>
<from>^/comment/-([0-9]+).html$</from>
<to>/user/queryComment.do?productId=$1</to>
</rule>
当你请求http://127.0.0.1:8080/app/comment-100.html实际是访问的http://127.0.0.1:8080/app/user/queryComment.do?productId=100
规则3:带多个数字参数,既有数字又有字母的情况
<rule>
<note>comment-productId-pgMethod-cPage.html</note>
<from>^/comment/-(/d+)/-(/w+)/-(/d+)/.html$</from>
<to>/user/queryComment.do?productId=$1& pgMethod=$2& cPage=$3</to>
</rule>
当你请求http://127.0.0.1:8080/app/comment-100-n-1.html
实际是访问的http://127.0.0.1:8080/app/user/queryComment.do?productId=100&pgMethod=n&cPage=1
相关推荐
`urlRewrite`是Tuckey开源组织提供的一个URL重写过滤器,它能够帮助我们在Struts2应用中实现这个目标。 在这个最简实例中,我们将探讨如何在MyEclipse环境中集成Struts2和urlRewrite,创建一个基本的应用来演示URL...
本框架为struts2+spring3+hibernate4+urlrewrite(伪静态地址) Struts采用通配,web-inf下的urlrewrite.xml为伪静态配置文件,跳转到struts.xml进行对应
标题“urlrewrite2伪静态与使用文档(IIS)”涉及到的是在IIS(Internet Information Services)服务器环境中,使用urlrewrite2模块实现URL重写和伪静态功能的技术内容。URL重写是Web开发中的一项关键技术,它允许...
要使用`URL Rewrite Filter`与Struts2集成,你需要完成以下步骤: 1. **添加依赖**:首先,在你的项目中引入`URL Rewrite Filter`的依赖。如果你使用的是Maven,可以在pom.xml文件中添加如下依赖: ```xml ...
综上所述,整合Struts1.2与URLRewriteFilter是一项重要的优化工作,它可以帮助我们创建更加友好、易用的URL,提升用户体验,同时也方便了应用程序的维护和扩展。在项目实践中,理解并掌握这两者的结合使用,对于提升...
### SSH2中的URLRewrite与Struts2生成静态页面 #### URLRewrite的理解与应用 在SSH2(Spring + Struts2 + Hibernate)框架中,URLRewrite是一种强大的工具,可以用于实现URL重写功能,使得网站的URL更加友好、易于...
1. **安装**:下载并安装IIS URL重写2的扩展,通常是`IIS Urlrewrite2.exe`文件,通过IIS Manager进行安装。 2. **添加规则**:在IIS Manager中选择目标站点,然后在“管理服务”下找到“URL重写”,点击“添加规则...
UrlRewrite是一个强大的URL重写工具,常用于Java Web应用中,尤其是与Struts2框架结合使用时,能够帮助开发者优化URL结构,提高网站的SEO友好性和用户体验。在这个"UrlRewrite例子"中,我们将深入探讨UrlRewrite的...
1. 安装与集成:首先,需要下载并安装UrlRewrite.dll文件到IIS服务器的扩展目录中,然后在IIS管理器中启用URL重写模块,并添加UrlRewrite的配置文件。 2. 规则编写:UrlRewrite的规则通常写在web.config文件中,...
《URLRewrite:掌握网页地址重写的关键技术》 URLRewrite是一款强大的URL管理工具,尤其在Java Web应用中广泛使用,它可以帮助开发者实现URL的重写和转换,以达到优化URL、隐藏真实路径、提高SEO效果等目的。在本篇...
下面详细介绍如何配置Struts框架与URL Rewrite过滤器以实现默认页面的重定向。 #### 三、环境配置 **1. 使用的技术栈:** - **Struts** 1.3 - **Hibernate** 3.2 - **URL Rewrite Filter** 2.6 **2. Struts ...
2. 配置web.xml:在`web.xml`中添加`Filter`和`Filter-Mapping`,以启动`urlrewrite`过滤器。 3. 编写urlrewrite.xml:这是URL重写的核心配置文件,定义了各种URL重写规则。 4. 测试与调试:运行项目,通过浏览器...
URL Rewrite是微软针对IIS推出的一种对URL进行重写的扩展模块,目前支持用于IIS7及以上版本。该模块使IIS管理员能够创建强大的自定义规则,语法支持正则规则以及通配符规则过滤。它能够根据HTTP头和IIS服务器变量...
`URLrewrite`是一个基于Java的开源过滤器,它实现了Apache的mod_rewrite功能,广泛应用于Spring、Struts、JSF等Java Web框架中。它提供了强大的规则配置,使得开发者能够灵活地对URL进行重写和重定向。 在使用`URL...
什么是UrlRewrite UrlRewrite 是 将动态页面转换为静态页面的一种技术 例如 您网站页面是 http: www yourdomain com news docread aspx id 123 为什么使用UrlRewrite: 1 处理这样的情形:你要更改你的web应用...
URLRewrite配置和使用 URLRewrite是一种URL重写技术,它可以满足搜索引擎的要求,隐藏技术实现,提高网站的移植性,并满足美感的要求。下面将详细介绍URLRewrite的配置和使用。 1. 满足搜索引擎的要求 搜索引擎对...
2. 规则:URL Rewrite基于规则引擎,规则由条件和动作组成,条件用于判断何时应用规则,动作则定义如何转换URL。 二、安装与配置IIS URL Rewrite 1. 安装:可以从Microsoft Web Platform Installer或者微软官方网站...
2. **正则表达式**:UrlRewrite规则中经常用到正则表达式来匹配和提取URL中的特定部分。熟练掌握正则表达式对于编写复杂的URL重写规则至关重要。 3. **条件组合**:有时候,我们可能需要多个条件一起满足才执行重写...
总结,通过引入`Tuckey URL Rewrite Filter`,并在`urlrewrite.xml`中定义适当的规则,我们可以轻松地将Struts2的`.do`后缀重写为`.html`或其他形式。这不仅使URL更易于理解和记忆,也有助于提升用户体验和SEO效果。...
在网上找了很多都不合心意,就知道改了下源码,只改了org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.class 文件,如果担心安全的朋友,可以下载 4.0.3的jar 替换UrlRewriteFilter.class即可。 confPath 默认 ...