Posted on 2007-03-22 14:11
sugo 阅读(2256)
评论(3) 编辑 收藏
访问某论坛时,发现论坛全是html页面。今天搞明白了,原来是重写了页面的url。通俗的说就是虽然地址栏里的是html结尾的url,但实际上访问的是后台动态jsp(php、asp)页面。好像是一种视觉欺骗。
实现这个技术也很容易,一般都会使用国外的一个urlrewriter过滤器。
1、下载:
下载地址为
http://tuckey.org/urlrewrite/#download。
2、解压和基本配置
使用的为2.6版本,解压后,包中含有一个urlrewrite.xml,此为关键的配置文件。还有lib文件夹下的urlrewrite-2.6.0.jar这个包。将此包放到web应用程序的web-inf/lib下面,urlrewrite.xml放到web-inf下。
3、修改应用程序web-inf文件夹下的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>
4、修改应用程序web-inf文件夹下的urlrewrite.xml文件,添加rule,内容如下:
<rule>
<name>html rule</name>
<from>/test/thread([0-9]+)_([0-9]+).html</from>
<to>/show.jsp?id=$1&order=$2</to>
</rule>
其中要求对正则表达式有所了解,以上的语句可以实现当你访问http://localhost/test/
thread12_56.html时,会转向http://localhost/
show.jsp?id=12&
order=56这个动态页面。
个人觉得需要开发人员对页面参数非常熟悉。这个技术还是值得大家来尝试一下的。个人论坛可以使用此技术:),让别人看不出你是使用什么编写的。