去除url中自带的jsessionid

web.xml中配置Filter:

?





1

2

3

4

5

6

7

8

9

10

11

<filter>

   <filter-name>jsessionid</filter-name>

   <filter-class>

    cn.iautos.mall.filter.RemoveUrlSessionFilter

   </filter-class>

</filter>

<filter-mapping>

   <filter-name>jsessionid</filter-name>

   <url-pattern>/*</url-pattern>

</filter-mapping>

 

java代码如下:

?





1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

package cn.iautos.mall.filter;

import java.io.IOException;

import javax.servlet.Filter;

import javax.servlet.FilterChain;

import javax.servlet.FilterConfig;

import javax.servlet.ServletException;

import javax.servlet.ServletRequest;

import javax.servlet.ServletResponse;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpServletResponseWrapper;

import javax.servlet.http.HttpSession;

/**

 * 去除url中的jsessionid

 * @author xuzhenmin

 * @version 2014-5-30  下午2:33:34

 */

public
class RemoveUrlSessionFilter implements Filter {

   

    public
void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {

        // skip non-http requests

        if
(!(request instanceof HttpServletRequest)) {

             chain.doFilter(request, response);

            return;

         }

         HttpServletRequest httpRequest = (HttpServletRequest) request;

         HttpServletResponse httpResponse = (HttpServletResponse) response;

        // clear session if session id in URL

        if
(httpRequest.isRequestedSessionIdFromURL()) {

             HttpSession session = httpRequest.getSession();

            if
(session != null) session.invalidate();

         }

        // wrap response to remove URL encoding

         HttpServletResponseWrapper wrappedResponse = new
HttpServletResponseWrapper(httpResponse) {

             @Override

            public
String encodeRedirectUrl(String url) {

                return
url;

             }

         

            public
String encodeRedirectURL(String url) {

                return
url;

             }

           

            public
String encodeUrl(String url) {

                return
url;

             }

           

            public
String encodeURL(String url) {

                return
url;

             }

         };

        // process next request in chain

         chain.doFilter(request, wrappedResponse);

     }

    /**

      * Unused.

     */

    public
void init(FilterConfig config) throws ServletException {

     }

    /**

      * Unused.

     */

    public
void destroy() {

     }

}

去除url中自带的jsessionid,布布扣,bubuko.com

时间: 2024-10-25 06:22:06

去除url中自带的jsessionid的相关文章

LNMP一键安装包+Thinkphp搭建基于pathinfo模式的路由(可以去除url中的.php)

LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RadHat/Fedora.Debian/Ubuntu/Raspbian/Deepin VPS或独立主机安装LNMP(Nginx/MySQL/PHP).LNMPA(Nginx/MySQL/PHP/Apache).LAMP(Apache/MySQL/PHP)生产环境的Shell程序.同时提供一些实用的辅助工具如:虚拟主机管理.FTP用户管理.Nginx.MySQL/MariaDB.PHP的升级.常用缓存组件Redis.Xca

wordpress如何去除URL中的category

WordPress网站url一般默认有Category,既不利于优化也不利于用户体验,如何去除,韶关SEO博客推荐2种比较简单的方法. 第一种:更改固定链接. 1.登录wordpress后台,点击设置里面的固定连接. 2.在"可选"下的"分类目录前缀"框中填写英文的".",保存更改后,就能去掉Category了. 3.上面步骤完成后页面还是无法打开或出现404错误,可能是与你做的固定链接设置中常用设置有关,如果出现这个情况只需要在自定义结构里面加

LAMP集成环境去除url中的index.php

EyouCms(易优CMS)在不同环境会出现不同问题,有些自动去除了index.php进行重写,有些url中还带着小尾巴index.php,看着很是不爽,今天就遇到一个用户在使用EyouCms时反馈了这个问题,下面是如何去掉index.php,以LAMP集成环境为例,其他环境会默认自动开启,不支持的可以先看一块URL重写扩展. 如图所示:只要点击勾选apache的rewrite_module模块就OK,如果没自动重启,那就还得重启服务器哦! 原文地址:易优CMS 原文地址:http://blog

Angular2+如何去除url中的#

最近,接到反馈说百度统计无法对#号后的URL进行分析,需要前端这边去掉URL中的#,下面我分享一下这个问题的处理过程. 1.Angular2+ 路由策略 1.1 HashLocationStragegy 通过hash实现,当url的hash发生改变时,触发hashchange注册的回调(低版本的浏览器没有hashchange事件,通过轮回检测url实现),回调中去进行不同的操作,进行不同的内容展示.使用hash来实现的话,URI规则中要带上#,路由中#后边的内容就是hash,而我们常说的锚点严格

ThinkPHP去除url中的index.php

例如你的原路径是 http://localhost/app/index.php/module/action/var/value/那么现在的地址是 http://localhost/app/module/action/var/value/ 去除index.php 1.httpd.conf配置文件中加载了mod_rewrite.so模块  //在APACHE里面去配置 #LoadModule rewrite_module modules/mod_rewrite.so把前面的警号去掉 2.AllowO

阿里云url解析,发布web后去除url中的端口号

归根结底就是80端口的使用,不是http的80 的 或 https的443  都得加端口号 [问题描述] http://wisecores.wisers.com:8080/JsonProject/servlet/JsonServlet?action_flag=person 如上,如果发布出去,不可能挂个":8080"在url上. 1.以windows下的tomcat来测试 丢两个web项目进去 2.server.xml配置如下 1 <Host name="wisecor

Laravel5.5去除URL中的index.php生成优雅链接

在使用Apache情况下: Laravel 框架通过 public/.htaccess 文件来让网址中不需要 index.php.如果你的服务器是使用 Apache ,请确认是否有开启 mod_rewrite 模块. 假设 Laravel 附带的 .htaccess 文件在 Apache 无法生效的话,请尝试下面的方法: <IfModule mod_rewrite.c> <IfModule mod_negotiation.c> Options -MultiViews </If

jQuery获取URL中所带参数的办法

可以使用正则表达式进行结果的拆分: http://www.cnblogs.com/babycool/p/3169058.html 可以直接进行所需内容的split: http://blog.sciencenet.cn/blog-419883-871644.html 对于http://localhost/test.html?id=1的形式,可以采用 var id = $(location).attr('href').split('?')[1].split('=')[1]; 直接获得:

weblogic.xml 配置去除url中session

<session-descriptor> <url-rewriting-enabled>false</url-rewriting-enabled> </session-descriptor> 原文地址:https://www.cnblogs.com/molecule/p/9270038.html