1、满足搜索引擎的要求
某些搜索引擎不能支持动态页面的抓取,大量的信息就不能被潜在用户搜索到。用UrlRewrite技术你可以把 http://server/news.asp?id=111 变成 http://server/news/111.htm 这样他们就会被搜索引擎收录了。google虽然可以抓取动态页面,但是google对动态页面的评分一般低于静态页面。所以,对大量信息发布的网站,把网站地址改变成静态的绝对是值得的。
2、隐藏技术实现,提高网站的移植性
每个页面都挂着鲜明的.asp/.jsp这种开发语言的标记,可以一眼让人看出你的网站使用什么语言做的。而且在改变网站的语言的时候,你需要改动大量的链接。而且,一个页面修改了扩展名,他的pagerank也会随之消失,从头开始。我们可以用 UrlRewrite技术隐藏我们的实现细节,这样修改移植都很方便,而且完全不损失pagerank。
3、满足美感的要求
对于追求完美主义的网站设计师,即使是网页的地址也要看起来简洁明快。形如 http://server/news.asp?channel=3&id=111 的网页地址,肯定是上不了完美主义者的法眼的,用UrlRewrite技术,你可以把他变成 http://server/news/3/111.htm 。
IIS 5.0支持UrlRewrite么?
答案很简单,不支持。但是我们可以通过安装服务器扩展让IIS支持。
目前有两种产品支持IIS 5.0的UrlRewrite,isapi_rewrite 和 IIS Rewrite。
isapi_rewrite: http://www.helicontech.com/download/#isapi_rewrite
IIS Rewrite :http://www.qwerksoft.com/products/iisrewrite/download.asp
这里只有ISAPI Rewrite的一个LITE版本是免费的,其它都是trial版本。ISAPI Rewrite Lite的版本功能。
我们采用isapi_rewrite Lite Version(免费版本)。 引用:
This is simplified edition of ISAPI_Rewrite. It does not support per-virtual-site configurations, proxiing, metabase monitoring and automatic cache cleanup but all other features are supported.
所以,lite版本不支持虚拟站点配置,元数据监测和自动缓存清理。
metabase元数据:metabase 元数据库 指一个驻留内存的数据存储区域,其中存放着IIS的配置值。/Metabase是储存成System32\Inetsrv
资料夹中的Metabase.bin文件
如何进行UrlRewrite的设置?
isapi_rewrite利用正则表达式进行替换规则的表示。
下面是一个简单的例子,我想让我们的用户输入 http://server/test-12314.html 实际上访问的是 http://server/test.asp?id=12314 。那么我们的匹配表达式应该是 /test-([0-9]*).html 对应的格式化表达式应该为 /test.asp\?id=$1 。
进行正则表达式的编写的时候,可以利用isapi_rewrite提供的正则表达式测试工具(默认安装提供),进行调试。如下图:
做好了匹配表达式和格式化表达式,我们可以按照下面的格式,把它们放到安装目录下的httpd.ini里面。
格式:RewriteRule 匹配表达式 格式化表达式
刚才的例子:RewriteRule /test-([0-9]*).html /test.asp\?id=$1
文件保存后,不需重新启动iis即可生效。
----------------------------------------------------------------------------------------------------------------------------
废话少说,来个例子先:
首先引用 rulrewrite_2.6.jar 这个包把.
其次在工程web.xml 中设置filter , 添加如下:
<filter>
<filter-name>UrlRewriteFilter</filter-name>
<filter-class>
org.tuckey.web.filters.urlrewrite.UrlRewriteFilter
</filter-class>
<init-param>
<param-name>logLevel</param-name>
<param-value>WARN</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
再在web-inf.xml 下添加一个文件 urlrewite.xml ,内容如下:
<?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>
<note>
- 这是一个通用请求url rewrite - 将请求forword url加上“.do”的处理器上。 - 例: -
请求 http://{domain}/user/login 将被forward到
http://{domain}/user/login.do - 请求
</note>
<!-- > <from>^/([_a-zA-Z]+[_0-9a-zA-Z-/]*[_0-9a-zA-Z]+)/?$</from -->
<from>^/test/([a-z]+)/([a-z]+)$</from>
<to type="forward">/test.do?country=$1&city=$2</to>
</rule>
</urlrewrite>
这样地址拦中路径为:
http://localhost:8080/Test/test/China/shanghai , 他访问的路径就成为了
http://localhost:8080/Test/test.do?country=china&city=shanghai 了.
<urlrewrite>
<rule>
<from>^/employment/([0-9]+)$</from>
<to type="redirect">/empuser/findByUserCodeEmpUser.do?usercode=$1</to>
/rule>
</urlrewrite>
分享到:
相关推荐
3 最重要的 在象Google Yahoo 和 Live 这样的搜索引擎中提高你网站上网页的搜索相关性 具体来说 URL重写经常能使你在你网站上">什么是UrlRewrite UrlRewrite 是 将动态页面转换为静态页面的一种技术 例如 您网站...
《URL重写技术详解——基于UrlRewrite工具的实践指南》 在Web开发领域,URL重写是一项重要的技术,它能够使网站的URL更加友好、简洁,提高用户体验,同时也有利于搜索引擎优化(SEO)。本篇文章将围绕“UrlRewrite....
outbound-rule是URLRewrite中的一个重要概念,它可以将response.encodeURL或c:url重写后的URL转换成我们想要的格式。例如: ``` <from>/rewrite-status <to>/test/status/ ``` 这个规则表明,当我们使用response...
**一、URL重写的重要性** 1. **用户体验**:简洁、有意义的URL有助于用户更好地理解页面内容,提高用户对网站的接受度。 2. **SEO优化**:静态化的URL更受搜索引擎青睐,能提升网站在搜索结果中的排名。 3. **可...
1. **安装**:下载并安装IIS URL重写2的扩展,通常是`IIS Urlrewrite2.exe`文件,通过IIS Manager进行安装。 2. **添加规则**:在IIS Manager中选择目标站点,然后在“管理服务”下找到“URL重写”,点击“添加规则...
总结来说,`URLrewrite`是一个强大且灵活的URL管理工具,它通过XML配置文件实现了对URL的重写和重定向,简化了复杂的URL结构,提高了Web应用的可维护性和用户体验。通过深入理解和熟练掌握`URLrewrite`,开发者可以...
URLRewrite作为Java Web开发中的一个重要工具,通过灵活的配置和规则引擎,极大地提高了URL管理的便利性。理解并熟练运用URLRewrite,不仅能提升网站的用户体验,还能增强系统的安全性和可维护性。在实际开发中,...
**URLRewrite组件详解** URLRewrite是一款广泛应用于ASP.NET应用程序中的URL重写工具,它允许开发者通过修改HTTP请求的URL来实现各种功能,如优化SEO(搜索引擎优化)、隐藏内部结构、提供友好的URL以及实现负载...
《深入理解URLRewrite.dll:实现网站优化与伪静态技术》 在Web开发领域,URL重写技术扮演着至关重要的角色,它可以帮助我们优化网站结构,提升用户体验,并对搜索引擎友好。其中,`URLRewrite.dll`是IIS(Internet ...
UrlRewrite是一个强大的URL重写工具,常用于Java Web应用中,尤其是与Struts2框架结合使用时,能够帮助开发者优化URL结构,提高网站的SEO友好性和用户体验。在这个"UrlRewrite例子"中,我们将深入探讨UrlRewrite的...
**伪静态的重要性** 1. **SEO优化**:搜索引擎更容易抓取和理解静态化的URL,有助于提高网站的搜索引擎排名。 2. **用户友好**:静态化的URL对用户更加直观,易于记忆,提高用户的点击率和回访率。 3. **性能优化**...
"iis urlrewrite"标签进一步明确了我们讨论的是与IIS服务器相关的URL重写功能。IIS是微软提供的一个用于Windows操作系统的Web服务器,而URL Rewrite是IIS的一个扩展模块,用于处理和转换HTTP请求的URL。 在压缩包的...
1. `RewriterTester.dll`:这可能是一个测试工具或示例应用,用于演示或验证`URLRewrite`规则的正确性。 2. `URLRewrite.dll`:这是主要的URL重写库,包含了实现URL重写功能的代码。 3. `ActionlessForm.dll`:这...
### URLRewrite使用帮助文档 #### 一、URLRewriteFilter简介 URLRewriteFilter是一个功能强大的Web过滤器,主要用于实现URL的改写操作。它能够帮助开发者将动态URL转换成静态URL,这对于提高用户体验、优化SEO...
URL重写的重要性 URL重写在现代Web开发中扮演着至关重要的角色,它可以: - **美化URL**:使URL更加用户友好,提高用户体验。 - **SEO优化**:搜索引擎更喜欢结构清晰、有意义的URL。 - **隐藏参数**:将动态参数...
总之,URLRewrite是网站开发中的一个重要工具,它允许开发者以灵活的方式管理URL,从而改善用户体验、提高网站性能和安全性。通过深入学习和实践,开发者可以熟练掌握这项技术,提升自己的项目管理能力。
在Web开发中,URL重写技术对于提升用户体验、优化搜索引擎排名(SEO)以及维护网站结构的整洁性具有重要意义。 **一、URL重写的基本原理** URL重写的核心是通过服务器端的规则配置,将用户请求的实际动态URL转换为...
**URLRewrite地址重写**是Web开发中一个重要的技术,它主要用于优化和管理网站的URL,使得URL更友好、更具可读性,同时也能够实现动态URL到静态URL的转换,提升SEO效果。URLRewrite通常与Apache的mod_rewrite或者在...
UrlRewrite是一个强大的URL重写工具,常用于Java Web应用中,它基于Tuckey开源项目,能够帮助开发者实现URL的美化,进而提高网站的用户体验和SEO(搜索引擎优化)效果。在本文中,我们将深入探讨如何使用UrlRewrite...
总的来说,URL重写是提升网站安全性和用户体验的重要手段,`urlrewrite`工具提供了一种简便而强大的实现方式。通过熟练掌握其配置和使用,开发者能够更好地控制和管理Web应用的URL,从而提高应用的安全性和可维护性...