最近写项目要完成访问地址的功能,后台使用的是struts2,本来以为struts2应该会提供这样的功能的,但是找了很久都没有找到,结果就看到有人使用urlrewriter来完成这个功能,所以自己就试了下,结果还真的可以,而且还很简单:
1. 我使用的是maven项目,所以直接加上
<dependency> <groupId>org.tuckey</groupId> <artifactId>urlrewritefilter</artifactId> <version>4.0.3</version> </dependency>
若是不是使用maven的项目,可以自己去下载这个jar包,而且是可以从svn上检出源码:http://code.google.com/p/urlrewritefilter/downloads/list
2. 在web.xml中加入一个拦截器,放在struts2拦截器的前面,若还加入了字符编码的拦截器的话就要放到最前面:
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>j2ee_ttzh</display-name> <!-- url重写start --> <filter> <filter-name>UrlRewriteFilter</filter-name> <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class> <init-param> <param-name>confPath</param-name> <param-value>/WEB-INF/classes/urlrewrite.xml</param-value> </init-param> </filter> <filter-mapping> <filter-name>UrlRewriteFilter</filter-name> <url-pattern>/*</url-pattern> <dispatcher>REQUEST</dispatcher> <dispatcher>FORWARD</dispatcher> </filter-mapping> <!-- url重写end --> <!-- struts2 拦截器 --> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> <dispatcher>REQUEST</dispatcher> <dispatcher>FORWARD</dispatcher> <dispatcher>INCLUDE</dispatcher> </filter-mapping> </web-app>
3. 新建一个urlrewrite.xml,通过上面web.xml中的配置可以看出这个文件是放在classpath下面的,若是不配置放置的位置,那么就默认在web-inf,可以查看源码验证。
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 3.0//EN" "http://tuckey.org/res/dtds/urlrewrite3.0.dtd"> <urlrewrite> <rule><from>/register.html</from><to type="forward">register!test</to></rule></urlrewrite>
4. 接下来就是访问 register.html 那么就会去访问register这个action里面的test方法
相关推荐
《UrlRewriter2_51:理解与应用URL重写技术》 UrlRewriter2_51是一款专门用于处理和...在实际项目中,结合“UrlRewriter.sln”等项目文件,开发者可以进一步深入研究和实践,探索UrlRewriter2_51在各种场景下的应用。
Java URLRewriter是一个用于处理和重写URL的工具,它在Web开发中起着关键作用,尤其是在实现URL美化、URL路由、以及隐藏实际路径等方面。本文将深入探讨URLRewriter的工作原理、使用方法以及相关知识点。 ...
2. **隐藏真实路径**:隐藏敏感信息,如文件路径或数据库查询参数,增加网站安全性。 3. **SEO优化**:友好的URL更容易被搜索引擎抓取,有助于提升网站的搜索引擎排名。 4. **重定向**:可以实现临时或永久的URL...
2. 使用永久重定向(301 Redirect):对于已迁移的页面,使用301重定向告知搜索引擎旧URL已被永久替换。 3. 测试:在部署前充分测试重写规则,确保所有URL都能正确重定向。 总之,URLRewriter是提升网站质量和SEO...
UrlReWriter是一个重要的Web开发工具,它主要用于处理和重写URL,从而实现更灵活的网址管理和优化。在ASP.NET环境中,UrlReWriter组件扮演着关键角色,帮助开发者创建更加用户友好的、SEO(搜索引擎优化)友好的URL...
在使用Intelligencia.UrlRewriter之前,首先需要了解URL重写的原理。URL重写通过在IIS(Internet Information Services)或ASP.NET应用程序中插入一个中间层来处理HTTP请求,将原始URL转换为内部处理路径。这样,...
2. 隐藏实际路径:对于动态内容,可以隐藏实际的参数,增加安全性。 3. 旧URL迁移:在网站改版时,可以通过重写旧URL来避免链接失效。 五、测试与调试 在我们的示例项目“testUrlRewrite”中,可以创建一个简单的...
最近研究了一下伪静态,网上资料确实是比较多,我经过... 3)、然后将form标签改为RW:Form(注意开始和结束都要改),TagPrefix可以自定义 2、IIS设置上的问题,需在IIS上添加映射的时候将 “检查文件是否存在”取消
2. Add a reference to the Intelligencia.UrlRewriter assembly. 3. Open the web.config file. 4. Add Configuration section handler: name="rewriter" requirePermission="false" type=...
UrlRewriter 是一款广泛应用于Web开发中的开源工具,主要用于实现URL重写和转换,从而达到优化网站URL结构、实现伪...正确配置和使用UrlRewriter,可以帮助开发者创建更加优雅、可读性更强的URL,提升网站的整体质量。
2. **配置Web.config**: 安装完成后,在Web.config文件中添加URLRewriter的配置节。一个基本的配置示例如下: ```xml ^products/(.*)" /> ``` 这个规则会将URL `products/123` 重写为 `...
总的来说,通过IIS7.0、URLRewriter.dll和ActionlessForm.dll的结合使用,我们可以创建出具有伪静态URL的动态网站,提高网站的可读性和SEO效果。同时,这也需要开发者对URL重写机制、HTTP协议以及web.config配置有...
例如,用户在一个博客系统中使用FreeTextBox撰写一篇文章,完成后,URLRewriter可以将文章详情页的URL重写为更易于理解和分享的形式。 为了在项目中使用这两个组件,开发者需要首先下载dll文件,并将其添加到项目的...
在`web.xml`中配置Struts2过滤器是非常重要的一步,因为这会直接影响到Struts2框架的初始化和请求处理流程。以下是文件中的关键部分: ```xml <filter-name>Struts2 <filter-class>org.apache.struts2....
【UrlRewriter .NET重写组件】是一款针对.NET平台的URL重写工具,它能够帮助开发者在IIS6环境中实现网站URL的伪静态处理,从而提高网站的SEO友好性和用户体验。该组件的核心功能是将复杂的动态URL转换为简洁、易读的...
2. **可维护性**:确保规则易于理解和修改,使用注释解释复杂规则。 3. **灵活性**:设计规则时,考虑未来可能的变化和扩展需求。 4. **测试**:在部署前充分测试所有规则,避免出现未预期的重写结果。 **总结** ...
本资源经过测试,并在本机测试通过,主要是针对IIS7的配置,里面有详细说明。
URL 重写是ASP.NET应用程序中一个重要的技术,它允许开发人员隐藏实际的URL路径,提供更友好的、可读性强的URL,从而改善用户体验并提高搜索引擎优化(SEO)。在ASP.NET 2008中,UrlRewriter库是一个常用的实现URL...