通过urlrewrite实现动态网站的假静态使用。
使用URLRewirte:
满足搜索引擎的要求,
实现隐藏技术,提高网站的移植性能。
满足美感的要求(个人觉得这个用途太牵强了)
项目部署
第一步是http://tuckey.org/urlrewirte下载urlrewirtefilter
解压下载的文件,将urlrewrite-2.6.0.WebRoot/jar拷贝项目。WEB-INF/lib/录制下来,然后编译
3.把urlrewrite.WebRoot/项目xml拷贝。WEB-INF/目录下
4.在web.添加以下xml文件:
1.
2.
3. UrlRewriteFilter
4. org.tuckey.web.filters.urlrewrite.UrlRewriteFilter
5.
6. logLevel
7. WARN
8.
9.
10.
11. UrlRewriteFilter
12. /*
13.
需要配备urlrewrite.为了实现url静态化,xml文件将在下面详细说明。
这里已经完成了相关配置,下面看看如何将动态地址静态化。
一般url静态化
例如:把http放在一边://localhost/prjtest/user/list.jsp转化为http://localhost/prjtest/user/list.html
当一个servlet跳转到list时,这是最简单的。.当user目录列出jsp页面时,urlrewrite.这种配置在xml中:
1.
2. ^/user/list.html
3. /user/list.jsp
4.
当请求/user/list.在html页面上,实际上相当于请求/user/list.jsp页面
这样写servlet的跳转:
response.sendRedirect("./user/list.html");
带参数url静态化化
例如:把http放在一边://localhost/prjtest/user/view.jsp?cid=1&cname=将admin转换成
http://localhost/prjtest/user/view/1_admin.html 使用urlrewrite.这种配置在xml中:
1.
2. ^/user/view/([0-9] )_([a-z] ).html$
3. /user/view.jsp?cid=$1&cname=$2
4.
当请求/user/view/1_admin.在html页面上,实际上相当于请求/user/list.jsp?cid=1&cname=页面admin
这样写servlet的跳转。(cid,变量是cname):
response.sendRedirect("./user/view/" cid "_" cname ".html");
注:在环境变量中使用"&取代"&""""""
一种通用的正则表达式:[a-zA-Z0-9]
本文仅代表作者观点,版权归原创者所有,如需转载请在文中注明来源及作者名字。
免责声明:本文系转载编辑文章,仅作分享之用。如分享内容、图片侵犯到您的版权或非授权发布,请及时与我们联系进行审核处理或删除,您可以发送材料至邮箱:service@tojoy.com