Springboot URL Rewrite
背景
后台接收的请求,希望把请求URL做重定向,改变原有的请求,此篇可以帮助你解决这个问题,可以用来改变常规URL重定向,也可以隐藏所访问的静态资源
参考地址
http://blog.jdriven.com/2016/02/urlrewritefilter-load-configuration-with-spring-resourceloader/
代码实现部分
实现这个功能需要以下几个步骤
- pom中引用jar
- 增加一个配制类
- resource文件夹下增加一个配置文件
以下对上述步骤展开具体说明
pom中引用jar
<!--地址重定向用--><dependency><groupId>org.tuckey</groupId><artifactId>urlrewritefilter</artifactId><version>4.0.4</version></dependency>
增加一个配制类
import java.io.IOException;import javax.servlet.FilterConfig;
import javax.servlet.ServletException;import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.Resource;
import org.tuckey.web.filters.urlrewrite.Conf;
import org.tuckey.web.filters.urlrewrite.UrlRewriteFilter;@Configuration
public class UrlRewriteFilterConfig extends UrlRewriteFilter {private static final String URL_REWRITE = "classpath:/urlrewrite.xml";// Inject the Resource from the given location@Value(URL_REWRITE)private Resource resource;// Override the loadUrlRewriter method, and write your own implementation@Overrideprotected void loadUrlRewriter(FilterConfig filterConfig) throws ServletException {try {// Create a UrlRewrite Conf object with the injected resourceConf conf = new Conf(filterConfig.getServletContext(), resource.getInputStream(), resource.getFilename(),"@@systemID@@"); //最后的参数是自己系统的标识ID即可checkConf(conf);} catch (IOException ex) {throw new ServletException("Unable to load URL rewrite configuration file from " + URL_REWRITE, ex);}}
}
增加需要重定向的配置文件
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 4.0//EN""http://www.tuckey.org/res/dtds/urlrewrite4.0.dtd"><urlrewrite><!-- 栏目首页 --><rule><from>/test/</from><to>/</to></rule><!-- 栏目列表页,注意html后面没有加$,因为后面还有若干参数 --><rule><from>^/test/list/(\w+)/(\w+)\.html</from><to>/test/list/$1/$2/</to></rule><!-- 文章详情页 --><rule><from>^/test11/(\w+)\.html$</from><to>/realTime/$1/</to></rule><!-- 静态网页 --><rule><from>^/static/(\w+)\.html$</from><to>/static/$1/</to></rule></urlrewrite>
测试
上述完成后就可以了,so easy,可以自己测试一下了,这里就不截图了,亲试过,好用
Springboot URL Rewrite相关推荐
- 在ASP.NET MVC中使用IIS级别的URL Rewrite
在ASP.NET MVC中使用IIS级别的URL Rewrite 原文 在ASP.NET MVC中使用IIS级别的URL Rewrite 大约一年半前,我在博客上写过一系列关于URL Rewrite的 ...
- 艾伟:重提URL Rewrite(3):在URL Rewrite后保持PostBack地址
在进行了URL Rewrite之后,经常会遇到的问题就是页面中PostBack的目标地址并非客户端请求的地址,而是URL Rewrite之后的地址.以上一篇文章中的重写为例: <rewriter ...
- 重提URL Rewrite(3):在URL Rewrite后保持PostBack地址(转老赵blog)
在进行了URL Rewrite之后,经常会遇到的问题就是页面中PostBack的目标地址并非客户端请求的地址,而是URL Rewrite之后的地址.以上一篇文章中的重写为例: <rewriter ...
- 无法显示服务器级别,URL Rewrite会导致“无法显示此页面”
我已经在服务器级别实施了URL重写,因为我想将符合特定规则的所有HTTP和HTTPS请求重定向到我的实际站点,并且重定向只应发生如果用户正在击中我的实际站点.规则最初工作正常.但是,在我的实际站点上反 ...
- Windows10中的IIS10安装php manager和IIS URL Rewrite 2.0组件的方法
Windows10中自带的Server:Microsoft-IIS/10.0,然后这个10却让原本支持组件无法安装了,php manager组件安装时提示"必须安装IIS7以上才可以安装&q ...
- Win10中的IIS10安装php manager和IIS URL Rewrite
首先是php manager php manager的最新下载地址是:http://phpmanager.codeplex.com/releases/view/69115 打开regedit,找到: ...
- Atitit.实现反向代理(1)----url rewrite 配置and内容改写 and -绝对路径链接改写 java php...
Atitit.实现反向代理(1)----url rewrite 配置and内容改写 and -绝对路径链接改写 java php 1. 代理的实现:::普通代理and反向代理?? 1 2. url ...
- magento url rewrite规则
magento运行需要php开启php_curl.dll模块.url rewrite规则对应表:Code Call Valuebase Mage::getBaseDir()Mage::getBaseD ...
- 使用URL Rewrite实现网站伪静态
下载urlwrite包 将urlrewrite-***.jar复制到web应用lib文件夹下 web.xml中配置URL Rewrite: 例: <filter> <filter-n ...
- url rewrite 实现url地址的伪静态化
(1) 在Java web服务器内使用url rewrite(实现url地址的伪静态化) 每个网页或请求都是一个url地址,一般,这个地址可能是.do,.page,.action之类的并加上'?'号. ...
最新文章
- spell_picture3.1版本windows上手动拼图的软件的升级
- 783. 二叉搜索树节点最小距离
- [SHOI2014] 概率充电器
- Web框架——Flask系列之请求上下文与应用上下文请求钩子Flask-Script扩展命令行(十七)
- (王道408考研数据结构)第七章查找-第四节:哈希表(基本概念及其操作)
- 上银伺服驱动器说明书_威海伺服驱动器维修,诚信互利
- ie6,ie7兼容性总结(转)
- 超级硬盘数据恢复软件v2.7.2.6_电脑磁盘上的视频误删如何恢复?误删视频恢复教程...
- Java中this、super的用法(2)
- Visual C++ 6.0的三个问题---尚未完成安装 MSDEV.EXE 应用程序错误 缺少动态链接库文件
- 基于FPGA的交通灯设计
- oss新增bucket权限问题
- Actor 模型是什么?Gear 为什么使用它?
- 爬取微博视频页并批量下载python+requests+ffmpeg(连接视频和音频)
- 洛谷P5385 [Cnoi2019]须臾幻境
- Windows下Jena+fuseki安装配置和简单使用(没有eclipse)
- 【论文笔记】Deep Learning on Graphs: A Survey
- 三方TabNavigator“斗艳”(Flex、JQuery UI和DoJo)
- Python Crash Course读书笔记 - 第19章:USER ACCOUNTS
- SAP--操作界面基本设置
热门文章
- 单片微型计算机原理和应用答案,《单片微机原理及应用》 试卷A及参考答案
- 计算机基础知识试题 试题及答案
- 让RTL8187无线网卡在linux 2.6.28内核支持aircrack-ng注入。
- Linux下如何解压.zip和.rar文件
- 节奏大师乐谱破解 续
- PHP实现留言板功能
- Java Web基础入门第三十九讲 利用易宝第三方支付实现简单在线支付
- php import mdf,excel表格怎么导入数据库数据格式转换-已有excel表格导入sql server生成*.mdf *.ldf文件......
- 《GNU Emacs Lisp编程入门》读书笔记
- 为什么要使用英英词典?