公司有时候要写一些小的项目,而用java搭建web的一个缺(特)陷(征)就是动态网页的后缀名.jsp。没办法啊,就是不能以.jsp结尾,原因有几个:隐藏服务端技术;吸引爬虫;对用户更友好;等等。如果全都用Servlet,那我选择狗带。

实际上,Spring MVC已经很好地解决了这个问题(不要问我怎么解决,RequestMapping注解),但由于项目很小,使用Spring简直就是为了Spring而Spring,所以还是传统的jsp+Servlet开发模式。那么,怎么解决我们的问题呢?答案很简单,重写Url。怎么重写?用Url Rewrite Filter!

官网:http://www.tuckey.org/urlrewrite/

还有一篇文章写得不错:http://blog.csdn.net/kimsoft/article/details/4194853

  1. 使用方法

    导入jar包,在web.xml里配置一个filter,在完善配置文件urlrewrite.xml。

    官方压缩包里面有下面几个文件,全部放在WEB-INF文件夹下

  2. 配置文件

    官方配置里说明的很详细,这里我分享一下我的配置。

    1. web.xml

      <welcome-file-list>

      <welcome-file>/jsp/index.jsp</welcome-file>

      </welcome-file-list>

      <error-page>

      <error-code>404</error-code>

      <location>/jsp/error.jsp</location>

      </error-page>

      <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>*.html</url-pattern>

      <url-pattern>*.jsp</url-pattern>

      </filter-mapping>

    2. urlrewrite.xml

      <rule>

      <from>/(.*).html</from>

      <to>/jsp/$1.jsp</to>

      </rule>

      <rule>

      <from>.jsp</from>

      <to>/jsp/error.jsp</to>

      </rule>

  3. 我将index.jsp和error.jsp放入/WebRoot/jsp文件夹中,上述配置实现了访问.jsp结尾的网页资源时都报404,而访问.html的网页资源时,都去访问jsp文件夹下的同名jsp文件。

如何将jsp后缀重写为html的更多相关文章

  1. 利用jspx解决jsp后缀被限制拿shell

    有些struts2的站在web.xml里面设置url是jsp的格式就自动跳转主页的action,转换jsp后缀大小写还不解析.查了查有Tomcat默认jspx可以解析.看了看jspx的手册,那就好说了 ...

  2. .html 页面修改成 .jsp 后缀后中文乱码解决办法。

    .html 后缀的文件,如果直接将 .html后缀改成 .jsp 后缀,则会乱码. 正确方法如下: 将如图的代码中 html  声明去掉,然后加上这段代码:<%@ page language=& ...

  3. tony_nginx_02_URL重写

    location正则写法 一个示例: location = / { # 精确匹配 / ,主机名后面不能带任何字符串 [ configuration A ] } location / { # 因为所有的 ...

  4. JAVA记录-JSP内容

    JSP(JavaServer Pages )是什么? JavaServer Pages(JSP)是一种支持动态内容开发的网页技术它可以帮助开发人员通过利用特殊的JSP标签,其中大部分以<%开始并 ...

  5. jsp的简介(2)

    JSP(JavaServer Pages )是什么? JavaServer Pages(JSP)是一种支持动态内容开发的网页技术它可以帮助开发人员通过利用特殊的JSP标签,其中大部分以<%开始并 ...

  6. Nginx中location匹配及rewrite重写

    目录 一.常用的Nginx正则表达式 二.location 2.1.location三类匹配类型 2.2.常用的匹配规则 2.3.location优先级 2.3.1.举例说明 2.4.实际网站使用中, ...

  7. Nginx中的 location 匹配和 rewrite 重写跳转

    Nginx中的location匹配和rewrite重写跳转 1.常用的Nginx正则表达式 2.location 3.rewrite 4.rewrite实例 1.常用的Nginx正则表达式: ^ :匹 ...

  8. 17.Nginx 重写(location rewrite)

    Nginx 重写(location / rewrite) 目录 Nginx 重写(location / rewrite) 常见的nginx正则表达式 location lication的分类 loca ...

  9. Nginx重写功能(rewrite与location)

    一.常用的Nginx 正则表达式 二.访问路由location 2.1location的分类 location 大致可以分为三类: 精准匹配:location = / {} 一般匹配:location ...

随机推荐

  1. mysql百万数据分页查询速度

    百万数据测试 ,; 受影响的行: 时间: .080ms ,; 受影响的行: 时间: .291ms ,; 受影响的行: 时间: .557ms ,; 受影响的行: 时间: .821ms ,; 受影响的行: ...

  2. vue.js学习文档

    1.实例化vue对象 new Vue(){ } 2.对象属性 el: 控制的属性 data: 数据存储位置 methods: 方法存储位置 template: 模板样式 computed: 计算属性 ...

  3. 贪心/思维题 UVA 11292 The Dragon of Loowater

    题目传送门 /* 题意:n个头,m个士兵,问能否砍掉n个头 贪心/思维题:两个数组升序排序,用最弱的士兵砍掉当前的头 */ #include <cstdio> #include <c ...

  4. RabbitMQ二:AMQP协议

    参考这个:http://kb.cnblogs.com/page/73759/ 参考这个:http://www.cnblogs.com/charlesblc/p/6286875.html 写的挺好 Ra ...

  5. H5调用百度地图API获取地理位置

    <script src="http://api.map.baidu.com/api?v=2.0&ak=填入申请的AK"></script> < ...

  6. jquery实现点击进入新的页面。(jquery实现超链接)

    <script src="jquery-1.9.1.min.js" type="text/javascript"></script> & ...

  7. 【译】x86程序员手册29-第8章 输入输出

    Chapter 8 Input/Output 输入/输出 This chapter presents the I/O features of the 80386 from the following ...

  8. 树莓派安装CentOS

    1.下载并安装,这里使用的是 centos系统地址:http://mirror.centos.org/altarch/7/isos/armhfp/ 下载CentOS-Userland-7-armv7h ...

  9. (转)WKT转换工具terraformers

    http://blog.csdn.net/gisshixisheng/article/details/53150111 概述: 前面的文章中,提到了Arcgis中实现wkt转换为geometry,但是 ...

  10. MFC_2.9 使用变参函数

    使用变参函数 #include <stdio.h>​// 包含一个头文件,提供不定参数的宏#include <stdarg.h>​// 用于输出不定数量的整数值void pri ...