`
iwebcode
  • 浏览: 2071908 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

urlrewrite(伪静态技术运用1之rule)

 
阅读更多

什么是伪静态?
1.是通过正则映射把本是动态的页面转成看起来是静态的页面
为什么用伪静态?
1.浏览器不收录带'?' url
2.打开一个页面后(url 完全相同),再次打开会很快。
因为转换页面是在内存中完成的,如果再次打开同一个页面,就不会再转换,而是直接在内存中读取。
现在每转一个页面都换 url, 内存使用情况,自己考虑一下。。
3.cup 资源占用少(参考上一条)
4.看起来比较统一,能隐藏开发使用的语言
什么情况下使用伪静态?
1.小型网站和特别在意浏览器收录的网站才使用(内容不经常换,又希望别人通过 搜索引擎能找到)
2.门户网站选择性的用,社区能不用就不用

urlrewrite顾名思义,就是对URL进行重写,用户得到的全部都是经过处理后的URL地址,这样做我觉得好处有三:

一:提高安全性,可以有效的避免一些参数名、ID等完全暴露在用户面前,如果用户随便乱输的话,不符合规则的话直接会返回个404或错误页面,这比直接返回500或一大堆服务器错误信息要好的多
二:美化URL,去除了那些比如*.do之类的后缀名、长长的参数串等,可以自己组织精简更能反映访问模块内容的URL
三:更有利于搜索引擎的收入,通过对URL的一些优化,可以使搜索引擎更好的识别与收录网站的信息
使用urlrewrite的步骤如下:

首页,访问其官网:http://tuckey.org/urlrewrite/,我下载的是最新的目前还处于Beta版的urlrewritefilter-4.0.3,下载后将其中的urlrewrite-4.0.3.jar扔到需使用此功能项目的lib目录中去
其次,在web.xml中加入如下配置:
<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> 
        <dispatcher>REQUEST</dispatcher> 
        <dispatcher>FORWARD</dispatcher> 
    </filter-mapping> 
其实,urlrewrite其实就是个过虑器,它将会过虑用户的所有请求,符合规则的便对其进行重定向,具体的配置参数的使用方法见官方文档:http://urlrewritefilter.googlecode.com/svn/trunk/src/doc/manual/4.0/index.html

配置好web.xml后将下载的urlrewritefilter-3.2.0中的urlrewrite.xml配置文件放在WEB-INF目录下,这样在使用urlrewritefilter时它便自动到该目录下读取相关的配置了

然后再地址栏输入:http://localhost:8080/Java_Solr/rewrite-status

我配置了个简单的,代码如下:

<rule> 
<from>/world/([a-z]+)/([0-9]+)</from> 
<to>/index.jsp?uname=$1&id=$2</to> 
</rule> 

输入:http://localhost:8080/Java_Solr/world/leroy/23;

<rule>
<from>/(.*).html</from>
<to>/index.jsp?id=$1</to>
</rule>

输入:http://localhost:8080/Java_Solr/1.html;

    <rule>  
        <from>^/(.*).html$</from>  
        <to>/test1/$1.jsp</to>  
    </rule> 

    <%
    	out.print("<h3> the value is:"+request.getParameter("uname")+"  "+request.getParameter("id")+"</h3>");
     %>


rule结点中form的规则默认使用的是正则表达式来匹配的,当用户访问服务器时的URL会与该配置相比较,如果符合规则就会按照下面to结点中的配置对其进行跳转,其默认是forward跳转,具体配置可见官网文档。

常用的&要用&amp;来表示。$1,$2代表与你配置正规表达式>/(\w+)/(\w+)/相对应的参数。<to type="forward">默认的是 type="forward"
<from></from>写上你自己定义的访问地址,通常采用正则表达式的写法;<to type="forward></to>就是实际的访问地址。
比如我们实际的访问地址是: http://www.phome.asia/forum/list.action?id=16931&amp;page=2
而我们想把它重写为:http://www.phome.asia/forum/thread/16931.html?page=2。这样看起来比我们实际的要好看的多。


rule是url重写规则,from是显示出来的地址,to是映射的实际地址,$1是重写参数,可以为多个,()里是匹配的正则表达式。由此即设定了url重写。

转自:http://beyondlovew.iteye.com/blog/432642

分享到:
评论

相关推荐

    Url Rewrite伪静态组件64位

    在实际应用中,Url Rewrite伪静态组件对于提升网站的SEO效果、改善用户体验、简化网址管理等方面都有显著的作用。例如,对于电子商务网站,使用伪静态URL可以更好地展示商品信息,提高用户对商品的信任度;对于博客...

    UrlRewrite实现伪静态

    在本文中,我们将深入探讨如何使用UrlRewrite来实现伪静态,并了解其配置过程。 1. **什么是URL重写**: URL重写是指将动态URL转换为静态或者看似静态的URL,以提升网站的可读性和美观性。动态URL通常包含多个参数...

    java urlrewrite 实现伪静态化 demo源码

    Java URLRewrite是一个非常实用的库,用于在服务器端实现URL重写,进而实现网站的伪静态化。这个技术在优化网站SEO(搜索引擎优化)和提高用户体验方面具有重要作用。在这个"java urlrewrite 实现伪静态化 demo源码...

    urlrewrite伪静态 及多参数传递-附正则表达式语法

    标题中的“urlrewrite伪静态及多参数传递”指的是在Web开发中使用的一种技术,通过URL重写工具(如Apache的mod_rewrite或Tomcat的UrlRewriteFilter)将动态URL转换为静态化的、更友好的形式,同时实现多参数的传递。...

    UrlReWrite(Url重写或伪静态)

    UrlRewrite是一个强大的URL管理工具,它主要用于将复杂的URL转换为简单、易记且友好的形式,这个过程被称为URL重写或伪静态处理。在Web开发中,URL重写技术对于提升用户体验、优化搜索引擎排名(SEO)以及维护网站...

    UrlReWrite(Url重写或伪静态)完美示例源码

    Url重写技术,通常以Apache的mod_rewrite模块和IIS的UrlRewrite模块为代表,是Web服务器中的一个重要功能,用于优化网站的URL结构,提高用户体验并有助于搜索引擎优化(SEO)。在本示例源码中,我们将深入理解Url...

    伪静态 urlrewrite

    在Java Web开发中,"伪静态 URLRewrite"是一个重要的技术概念,主要用于优化网站的URL结构,使其看起来更像静态页面,从而提升用户体验和搜索引擎优化(SEO)。`URLRewrite`是一个基于Apache开源项目Tuckey开发的...

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

    标题 "urlrewrite重写URL伪静态请求路径" 涉及到的是Web开发中的一个重要概念——URL重写,这是为了优化网站的SEO(搜索引擎优化)和用户体验而进行的一种技术手段。URL重写允许我们将复杂的动态URL转换为简洁、易于...

    JAVA实现URL rewrite伪静态_.docx

    在Java中实现URL重写(URL rewrite)是为了实现伪静态,这是一种优化网站SEO(搜索引擎优化)的技术。通过将动态URL转换为看似静态的URL格式,可以提高网站的可读性和搜索引擎友好性。以下是对给定代码的详细解释: ...

    Rewrite伪静态

    2. **ASP伪静态**:对于ASP应用,IIS URL Rewrite模块同样能处理伪静态规则。需要在web.config中编写相应的规则,将动态请求重定向到ASP处理程序。 **五、优化与注意事项** 1. **性能优化**:虽然Rewrite提高了...

    用urlrewrite实现实现伪静态的例子

    1. **安装URLRewrite模块**:首先,你需要在你的ASP.NET应用程序的IIS服务器上安装URLRewrite模块。这通常可以通过微软的Web Platform Installer或者直接下载模块的MSI安装包完成。 2. **配置Web.config**:在你的...

    伪静态URLRewrite实例解析

    伪静态URLRewrite技术是实现这一目标的重要手段之一。它主要通过服务器端或应用层面的规则设置,来改变URL的表现形式而不改变其实际的功能性。具体来说: - `&lt;rule&gt;` 是对进入服务器的URL进行重置,即当客户端请求...

    伪静态_URLRewrite实例解析

    【伪静态_URLRewrite实例解析】中的主要知识点集中在如何通过URLRewrite技术实现网页的伪静态化,这对于SEO(搜索引擎优化)和用户体验都有积极影响。下面将详细解释这个过程: 1. **什么是伪静态**: 伪静态是一...

    使用URL Rewrite实现网站的伪静态实例(urlrewritefilter-4.0.3)

    在网站优化和搜索引擎友好性方面,伪静态技术扮演着重要的角色。它将动态网页的URL转化为看似静态的URL,使得用户和搜索引擎更容易理解和处理。在这个实例中,我们将深入探讨如何利用`URL Rewrite`工具,特别是`...

    IISURL伪静态下载 rewrite_2.0_rtw_x64.msi

    【IIS URL重写与伪静态技术详解】 在.NET程序的开发和部署中,IIS(Internet Information Services)作为微软提供的一个强大的Web服务器,扮演着至关重要的角色。IIS URL重写模块则是一个用于实现URL伪静态化的重要...

    Rewrite 在iis下 url 伪静态

    在IIS(Internet Information Services)环境下实现URL重写和伪静态是提高网站SEO(搜索引擎优化)和用户体验的重要技术。URL重写允许我们将复杂的服务器端请求转换为简洁、友好的URL,而伪静态则是将动态页面的URL...

    java伪静态简单实例

    在这个实例中,我们将探讨如何使用`urlrewrite`框架来实现Java中的伪静态处理。 首先,让我们了解什么是伪静态。在传统的动态网站中,URL通常包含各种参数,例如 "?id=123",这样的URL对于搜索引擎来说不够友好。而...

    urlrewrite静态页面的使用例子

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

    phpcms url伪静态

    - 在服务器上启用 Rewrite 模块是实现 URL 伪静态的前提。 总的来说,正确配置 PHPcms 的 URL 伪静态,能够显著提升网站的专业性和易用性,对于提升网站的整体质量和流量有着不可忽视的影响。通过学习和掌握 `....

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

    1. **下载**:Url Rewrite Filter 可从官方网站(http://tuckey.org/urlrewrite/#download)获取,通常包括一个`urlrewrite.xml`配置文件和一个`.jar`库文件。 2. **部署**:将`.jar`文件添加到项目类路径中,将`...

Global site tag (gtag.js) - Google Analytics