aspx伪静态php,【Javaweb】利用urlRewrite插件实现网站的伪静态与aspx,jsp,php三版齐发的左道旁门...

【Javaweb】利用urlRewrite插件实现网站的伪静态与aspx,jsp,php三版齐发的邪门歪道

所谓网站的伪静态其实也不是什么高深名词,就是将*.asp,*.aspx,*.jsp,*.php这种动态URL页面伪装成静态的HTML页面。因为网上大部分搜索引擎都会优先考虑收录静态的HTML页面,而不是这种动态的*.asp,*.aspx,*.jsp,*.php,但是我们不可能把动态的页面硬改成*.html,因为一些代码还是要在服务器上面跑,实际上,绝大部分网站都是动态的,互联网上的大部分网站都会考虑使用伪静态技术。在Javaee里面,可以利用urlRewrite这个小插件去实现。

一、基本目标

如下图,把网络工程中的所有jsp页面伪装成html页面,当然,原来的jsp页面还是存在的。就是你在地址栏输入1.html相当于访问1.jsp。

121811921.gif

二、制作过程

最终完成的网络工程目录结构图如下:

121811922.png

1、新建一个网络工程,从网上搜索到urlrewritefilter-4.0.3.jar,在lib文件夹下面,这东西版本大于3.0即可,现在的最新版是urlrewritefilter-4.0.3.jar,以前的用得最多的版本是3.2.0但功能上没有任何区别。这东西的官网由于放在googlecode上面,所以无法访问,但没有关系,这东西一搜就一大把,肯定能够找到。

2、先在工程目录的根目录新建一个1.jsp。在上面乱写一些东西做伪装,挂羊头卖狗肉,说这是1.html,但实际是一个1.jsp。

pageEncoding="utf-8"%>

1.html

1.html

3、之后新建web.xml,或者在web.xml里面加入如下的片段,如下的片段放在web.xml的任意一个位置都没有问题,但一定要放在所有的Servlet映射之前,否则可能会出现这样那样的问题,这里注意,我们现在是要把所有*.jsp的后缀映射成*.html,而不是在没有后缀Servlet后面加上一个.html,Servlet在网站中一般作为控制器,不允许别人随便访问,用户也基本看不到Servlet的处理过程。这段代码无须理解什么意思,复制粘贴就可以了。

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee

http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

UrlRewriteFilter

org.tuckey.web.filters.urlrewrite.UrlRewriteFilter

UrlRewriteFilter

/*

REQUEST

FORWARD

3、这样就配置好urlRewrite了,然后在于WEB-INF下面,也就是与web.xml同一个目录,新建一个映射urlrewrite.xml,这个文件是支持正则表达式的,对于正则表达式理解突破天际的天际可以自由发挥。不过一般记住如何把所有*.jsp的后缀映射成*.html的写法就可以了。代码如下所示:

/p>

"http://tuckey.org/res/dtds/urlrewrite3.2.dtd">

/(\w*).html

/$1.jsp

你也可以在下面多加几条规则,也就是多放几个rule节点,把自己的网站伪装成*.aspx,*.jsp,*.php三版齐发,上面的$1表示替代本规则的第一个正则式(/w*),例如:

/p>

"http://tuckey.org/res/dtds/urlrewrite3.2.dtd">

/(\w*).html

/$1.jsp

/(\w*).aspx

/$1.jsp

/(\w*).php

/$1.jsp

运行效果如下:

121811923.gif

然而,实际上整个工程目录就只有一个.jsp

121811924.gif,但是这样除了装逼之外没有任何用处,人家把1.jsp改成1.html好歹是为了搜索引擎更容易收录

121811925.gif。你学习怎么用asp.net,jsp,php写同一个网站,三修乃才是正途,这是邪门歪道!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值