`
小网客
  • 浏览: 1244209 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

nginx之proxy_pass的session丢失

    博客分类:
  • J2ee
 
阅读更多

背景:

nginx下基于多域名同ip同端口的配置中tomcat中session丢失

描述:

http://www.linkrmb.com 对应的部署应用中为http://ip:9008/linkrmb具体的nginx配置如下:

server {  
    listen       80;  
    server_name  www.linkrmb.com;  
    location / {  
	add_header From www.linkrmb.com;
	proxy_pass http://localhost:9008/linkrmb/;  
	proxy_set_header        Host    $http_host;
	proxy_set_header        X-Real-IP       $remote_addr;
	proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
	proxy_set_header   Cookie $http_cookie; 
	client_max_body_size    1000m;               
    }  
} 

此时由于cookie存储的位置不是基于/那么在第二次访问的时候会从新创建session,因此session中的信息丢失

解决方式:

修改cookie的路径

server {  
    listen       80;  
    server_name  www.linkrmb.com;  
    location / {  
	add_header From www.linkrmb.com;
	proxy_pass http://localhost:9008/linkrmb/;  
	proxy_cookie_path /linkrmb/ /;
	proxy_set_header        Host    $http_host;
	proxy_set_header        X-Real-IP       $remote_addr;
	proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
	proxy_set_header   Cookie $http_cookie; 
	client_max_body_size    1000m;               
    }  
} 

 

重点为:proxy_cookie_path /linkrmb/ /;

0
1
分享到:
评论

相关推荐

    Nginx安装url_hash插件.doc

    proxy_pass http://backend; } ``` 这里的`ip_hash`是旧版的url_hash用法,如果是新版本的url_hash模块,配置会有所不同。 8. **启动和测试Nginx** 重启Nginx服务,确保配置正确无误。 ``` /etc/init.d/...

    nginx反向代理导致session失效的问题解决

    两边通过同一个nginx进行反向代理,nginx配置大致如下, location /health/ { proxy_pass http://192.168.40.159:8081/health/; #无问题的配置 } location /health-dev/ { proxy_pass ...

    nginx+tomcat+memcached实现session共享

    这有助于提高系统的可扩展性和容错性,因为用户在切换服务器时无需重新登录或丢失状态信息。本主题将详细讲解如何利用Nginx、Tomcat和Memcached来实现这种会话共享。 首先,Nginx是一个高性能的反向代理服务器,...

    nginx集群配置-测试通过

    Nginx通过`proxy_pass`指令可以将session信息转发给后端服务器,但默认情况下,session信息会存储在本地,这意味着如果用户在集群中的不同服务器之间切换,session可能会丢失。为了解决这个问题,我们可以使用...

    Nginx session丢失问题处理解决方法

    在使用Nginx作为反向代理服务器时,有时会遇到session丢失的问题,这通常是由于代理和后端服务器之间交互配置不当引起的。下面是处理和解决Nginx session丢失问题的一些知识点和方法: 1. 了解Session机制:在Web...

    Nginx timeout超时配置详解

    特别需要关注的是,`proxy_pass`指令用于指定后端服务器地址,而与之相关的`proxy_connect_timeout`、`proxy_send_timeout`、`proxy_read_timeout`和`send_timeout`指令定义了与后端服务器通信的超时设置。...

    nginx_tomcat_redis搭建负载均衡共享session

    这通常涉及编辑nginx.conf配置文件,设置 upstream 模块来定义后端服务器组,以及使用 proxy_pass 指令将请求转发到这些服务器。 2. **安装和配置Tomcat**:在多台服务器上安装Tomcat,确保应用部署一致,禁用每个...

    Nginx + Tomcat +session共享.docx

    在这样的配置中,确保用户会话(Session)在多个 Tomcat 实例之间共享是至关重要的,以保证用户在访问过程中不会因为服务器切换而丢失登录状态或其他个性化信息。本文将详细介绍如何在 Nginx 和 Tomcat 集群中实现 ...

    nginx-tomcat6_session共享Memcached包.zip

    本项目“nginx-1.9.3--tomcat-(6)-memcached-session共享session负载均衡”聚焦于如何在Nginx、Tomcat6以及Memcached之间实现Session共享,以确保用户会话在集群环境中的连续性。 首先,让我们了解核心组件的作用:...

    linux下nginx+tomcat使用redis进行session共享所需jar包

    在Linux环境下,构建一个高效的Web服务架构通常会结合多种技术,例如使用Nginx作为反向代理和负载均衡器,Tomcat作为Java应用服务器,以及Redis作为分布式缓存来实现Session共享。本教程将详细讲解如何在Linux上的...

    Windows+Nginx+Tomcat做负载均衡同时实现session共享Demo2

    这里我们关注的是如何在Windows环境下,利用Nginx作为反向代理服务器,与Tomcat应用服务器集群配合,实现负载均衡,并且确保Session数据在多个Tomcat实例之间共享。这个场景对于大型网站或高并发的应用尤其实用,...

    Nginx 集群 tomcat session 共享配置有源码

    为解决这个问题,我们可以利用Redis作为中央session存储,实现Nginx和Tomcat集群间的session共享。 首先,让我们理解Nginx、Tomcat和Redis的角色: 1. Nginx:作为前端反向代理服务器,负责接收用户的请求,并根据...

    Nginx+tomcat 实现负载均衡session共享demo

    `session`在Web应用中用于存储用户状态信息,如果在`Nginx`负载均衡下不共享,会导致用户在切换服务器时丢失`session`数据。有几种常见的解决方案: 1. **Cookie-Based**:将`session ID`存储在cookie中,每次请求...

    Windows7 + Nginx + Memcached + Tomcat 集群 session 共享

    本主题将详细探讨如何在Windows7环境下,利用Nginx作为负载均衡器,Memcached作为session存储,以及Tomcat作为应用服务器,实现session共享。 **1. Nginx介绍与配置** Nginx是一款高性能的HTTP和反向代理服务器,它...

    nginx+redis负载均衡和session粘滞

    在Nginx配置中,可以使用`upstream`模块定义一组后端服务器,并通过`proxy_pass`指令将请求转发到这些服务器。例如: ```nginx http { upstream backend { server backend1.example.com; server backend2....

    Nginx-1_6_2+Memcached-1_2_6+Tomcat7负载均衡实现Session共享

    这通常涉及到配置一个upstream模块,指定Tomcat服务器的IP和端口,然后在HTTP块或Server块中添加`proxy_pass`指令,设置其通过Memcached处理Session。 最后,`nginx-1.6.2`目录包含了Nginx的安装包,你需要根据官方...

    Nginx+Tomcat+Memcached实现tomcat集群和session共享.docx

    【Nginx+Tomcat+Memcached实现Tomcat集群和session共享】 在现代Web应用程序的部署中,为了提高系统的可用性和可扩展性,通常会采用集群技术。将多个Tomcat服务器组成一个集群,通过负载均衡策略分发用户请求,以...

Global site tag (gtag.js) - Google Analytics