第一步:下载urlrewrite-2.6.0.现在最新版本是3.1的。
http://tuckey.org/urlrewrite/dist/urlrewritefilter-2.6.zip
http://urlrewritefilter.googlecode.com/files/urlrewritefilter-3.1.0.zip
把urlrewrite-2.6.0.jar拷到classpath下。
第二步:在WEB-INF目录下建一个urlrewrite.xml文件。
第三步:在web.xml中初始化。加上下面的代码:
01. <!-- Set URL Rewrite-->
02.<filter>
03. <filter-name>UrlRewriteFilter</filter-name>
04. <filter-class>
05. org.tuckey.web.filters.urlrewrite.UrlRewriteFilter
06. </filter-class>
07.</filter>
08.<filter-mapping>
09. <filter-name>UrlRewriteFilter</filter-name>
10. <url-pattern>/*</url-pattern>
11.</filter-mapping>
最后我要简单的讲一下常用的两个配置规则.以下就是简单的urlrewrite.xml配置片段。不要习惯Java的命名法把它写成urlRewrite.xml,这样即使你加上
01.<init-param>
02. <param-name>confPath</param-name>
03. <param-value>/WEB-INF/urlRewrite.xml</param-value>
04. </init-param>
在启动的服务器的时候还是会报错的,因为源码中必须是全小写的(urlrewrite.xml)且只能放到WEB-INF下面。
01. <?xml version="1.0" encoding="utf-8"?>
02.!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 2.6//EN"
03. "
http://tuckey.org/res/dtds/urlrewrite2.6.dtd">
04.urlrewrite>
05. <rule>
06. <from>^/(\w+)/(\w+)/page_(\d+)\.html$</from>
07. <to type="forward">/$1.htm?category=$2&page=$3</to>
08.</rule>
09. <rule>
10. <from>^/rss/yahoo\.html$</from>
11. <to type="redirect"> [url]http://add.my.yahoo.com/rss? url=http://feed.feedsky.com/W3CSSiteFeed[/url]
12. </to>
13.</rule>
14./urlrewrite>
所有的规则配置都写在这里。第一个常用个规则就是站内的简单重写。
01.<rule>
02. <from></from>
03. <to type="forward></to>
04.</rule>
05. <from></from>写上你自己定义的访问地址,<to type="forward></to>就是实际的访问地址。比如我们实际的访问地址是:
http://yousite.com/entity.htm ?category=userpage=2.而我们想把它重写为
http://yousite.com/entity/uesr/page_2.html。这样看起来比我们实际的要好看的多。我们就应该这样的写:
06.<rule>
07. <from>^/(\w+)/(\w+)/page_(\d+)\.html$</from>
08. <to type="forward">/$1.htm?category=$2&page=$3</to>
09. </rule>
简单的介绍一下常用的正规表示式:
代码 说明
. 匹配除换行符以外的任意字符
\w 匹配字母或数字或下划线或汉字
\s 匹配任意的空白符
\d 匹配数字
\b 匹配单词的开始或结束
^ 匹配字符串的开始
$ 匹配字符串的结束
常用的&要用 &来表示。$1,$2代表与你配置正规表达式/(\w+)/(\w+)/相对应的参数。<to type="forward">默认的是 type="forward".
另一个常用的规则就是连接外部的网站。就要用到。<to type="redirect">
01.<rule>
02. <from>^/rss/yahoo\.html$</from>
03. <to type="redirect"> [url]http://add.my.yahoo.com/rss? url=http://feed.feedsky.com/MySiteFeed[/url]
04. </to>
05.</rule>
我们的网站用到最多的无非就这两种规则。至于正规表达式的写法很多种。希望对有感兴趣的朋友,可以试试。
分享到:
相关推荐
C#是.NET框架下的主要编程语言,它提供了多种方式来实现URL重写。本篇文章将深入探讨C#中URL重写的基本概念、原理以及如何实现。 首先,URL(Uniform Resource Locator)是Web资源的唯一地址,用户通过URL访问网站...
4. **使用URL重写框架:** - **Tuckey URLRewriteFilter:** 这是一个广泛使用的开源库,可以方便地配置和管理URL重写规则。 - **Apache mod_rewrite:** 如果是在Apache服务器上,可以利用mod_rewrite模块实现URL...
2. **框架内置支持**:许多Web框架(如ASP.NET MVC、Ruby on Rails)内建了URL重写功能,开发者可以直接在代码中定义路由规则。 3. **第三方库**:对于不直接支持URL重写的平台,可以使用第三方库或插件,如...
2. 应用程序框架支持:许多Web开发框架,如ASP.NET MVC、PHP Laravel等,内置了URL重写机制。 3. JavaScript路由:在前端开发中,单页应用(SPA)常用JavaScript路由来实现URL重写。 五、URL重写实例 例如,我们有...
2. **应用程序框架支持**:许多Web框架如ASP.NET MVC、PHP的Rewrite模块等内置了URL重写功能。 3. **服务器模块**:如Apache的mod_rewrite,IIS的URL Rewrite模块,提供强大的URL重写和路由功能。 四、URL重写规则 ...
标题中的“url重写工具”指的是用于转换或重新映射网站URL的一种技术,它能够将不友好的、复杂的URL转化为用户友好的、简洁的形式。在.NET环境中,这通常通过使用IIS(Internet Information Services)的扩展性来...
**URL重写技术详解** URL重写是一种在Web开发中常用的技术,主要用于优化网站的URL结构,提升用户体验,以及搜索引擎优化(SEO)。标题中的“urlrewrite”指的是使用特定的工具或框架来实现这一功能,例如Apache的...
URL重写是Web开发中一个重要的技术,它允许开发者通过改变URL的结构,来实现对网页请求的处理,同时隐藏真实服务器路径,从而提高网站的安全性和用户体验。在本篇文章中,我们将深入探讨URL重写的基本原理、作用以及...
无论是Apache的mod_rewrite,IIS的URL重写模块,还是各种Web开发框架内置的路由系统,都为我们提供了便利的URL重写机制。了解并熟练掌握这些工具和技巧,对于提升网站的专业性和用户体验至关重要。
一个高度可配置的URL重写工具,适用于Java EE 6+和Servlet 2.5+应用程序,支持与以下组件的集成: CDI 弹簧DI JodaTime配置 Tuckey.org URLRewriteFilter配置 JavaServer Faces(JSF) JavaServer页面(JSP) ...
- PHP框架:如Laravel、Symfony等,都有内置的URL重写机制。 4. 示例: - Apache `.htaccess` 示例: ``` RewriteEngine On RewriteRule ^article/(\d+).html$ index.php?id=$1 [L] ``` - IIS `Web.config` ...
对于基于ThinkPHP框架的项目而言,配置URL重写同样至关重要。以下是对如何在ThinkPHP项目中实现URL重写的详细介绍。 #### 一、理解URL重写的基本概念 URL重写(URL Rewriting)是一种服务器端的技术,用于将不美观...
3. **使用框架支持**:许多现代的Java Web框架如Spring MVC、Struts2等都提供了内置的URL重写机制。比如Spring MVC可以通过`@RequestMapping`注解和`HandlerMapping`接口来实现友好的URL设计。 ```java @Controller...
- **URLRoutingModule模块**:ASP.NET框架自带的URLRoutingModule模块,用于处理URL重写。通过配置`web.config`文件中的`<system.webServer>`节点,可以定义重写规则。 - **IIS重写模块**:IIS服务器提供了一个URL...
在给定的信息中,我们只有一个名为"URLRewriter.dll"的文件,这可能是一个.NET框架下的DLL库,专门用于实现URL重写功能。 URL重写的基本原理是通过HTTP服务器模块或应用程序配置来解析和转换输入的URL。例如,一个...
标题中的“URL重写组件,URLRewrite”指的是在Web开发中用于管理应用程序URL的一种技术。URL重写是将用户请求的实际URL(可能是复杂的查询字符串)转换为更友好的、可读性更强的URL,这在提升用户体验和SEO(搜索...
除了使用专门的URL重写工具外,还可以利用ASP.NET框架本身提供的功能来实现URL重写。这种方式更加灵活,可以根据具体需求自定义重写规则。 - **Actionless form**:创建一个不执行任何操作的表单(Actionless form...
ASP.NET中的URL重写是一种强大的技术,它允许开发者根据预定义的规则更改应用程序的URL结构,从而提高用户体验、搜索引擎优化(SEO)以及网站的可维护性。在ASP.NET中实现URL重写通常依赖于`web.config`配置文件,...
标题中的".net实现url重写"是指在.NET框架下,通过编程技术实现URL重写功能。URL重写是Web开发中的一个重要技术,它允许我们改变实际的URL结构,以达到优化SEO(搜索引擎优化)、提高用户体验或者隐藏真实路径等目的...
标题与描述均提到了在.NET框架中利用URL重写(URL Rewriting)技术,通过URLReWriter组件实现任意二级域名的映射与处理。本文将深入解析这一技术的关键概念、实施步骤以及具体应用场景,旨在为.NET开发人员提供一个...