nginx+tpmcat+redis实现session共享

版本:
nginx nginx-1.8.0.tar.gz
tomcat apache-tomcat-7.0.78.tar.gz
redis  redis-stable 4.0.1
安装包下载地址:链接:http://pan.baidu.com/s/1gfQqpPL 密码:xwpv
PS:redis在此用的是单节点,实际应用redis应该是集群形式

安装redis 网上教程有很多,最后需要注意的是配置redis外网访问

设置redis外网访问
配置文件中找到bind 127.0.0.1注释掉
再查找protected-mode yes 把yes修改为no
在查找daemonize 设置为no
/sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT      修改防火墙,使6379端口可以访问
/etc/rc.d/init.d/iptables save   保存防火墙修改命令

tomcat7安装

cd /usr/local/tomcat7
将安装包放入该目录下
tar xzf apache-tomcat-7.0.78.tar.gz解压文件
cd /usr/local/tomcat7
./bin/startup.sh启动tomcat
vi /etc/rc.d/rc.local 将/usr/local/tomcat7/apache-tomcat-7.0.78.tar.gz/bin/startup.sh放置在最下面     设置开机启动
/etc/init.d/iptables stop关闭防火墙 外网可以访问tomcat欢迎界面
相关命令:
关闭防火墙指令:/etc/init.d/iptables stop
永久关闭防火墙指令:chkconfig iptables off
开启防火墙指令:/etc/init.d/iptables start
永久开启防火墙指令:chkconfig iptableson
查看防火墙状态:/etc/init.d/iptables status

修改tomcat/conf/context.xml文件在</context>上面添加
<Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve"/>
   <Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager"
        host="192.168.4.53"         #这里是redis的ip地址
        port="6379" #这里是redis的端口号
        database="0"                #这里是redis的数据库选择
         maxInactiveInterval="60"/> #设置session的最大保存时间
PS(如果redis有密码。需要再加一行password:"123456")
 
在tomcat/bin下面导入jar包    jar包地址为:链接:http://pan.baidu.com/s/1o881d5g 密码:jwee

创建示例程序,分别放到对应ip的tomcat下面,启动tomcat
<body>  
   这是ip192.168.4.51的界面 
   <%= session.getId() %>  
</body> 
<body>  
   这是ip192.168.4.53的界面 
   <%= session.getId() %>  
</body>
访问http://192.168.4.53:8080//SessionTest/index.jsp    http://192.168.4.51:8080//SessionTest/index.jsp
都可以看到对应的界面,但是IP不一样

配置nginx
1.安装教程不再讲述,安装教程:链接:http://pan.baidu.com/s/1kUEwCSZ 密码:4b7d
2.上述教程需要的配置文件地址:链接:http://pan.baidu.com/s/1jIqYugu 密码:dvnx
3.配置文件nginx.conf文件    
upstream myServer {  
   
   server 192.168.4.51:8080;  
   server 192.168.4.53:8080;  
   }  #配置tomcat的IP地址和端口号
   
   #gzip  on;  
    #监听88 端口  
   server {  
       listen       88;  
       #定义要使用的域名  
       server_name  localhost;  
   
       #charset koi8-r;  
      #设定本虚拟主机的访问日志  
       #access_log logs/host.access.log  main;  
       #配置前缀  即要转发到的ip+port  
       location / {  
           proxy_pass  http://myServer;  #引用upstream myServer
          # root   html;   #注释nginx的欢迎界面
          # index  index.html index.htm;  
       }

nginx的IP地址为192.168.4.52 端口为88
nginx配置成功之后。http://192.168.4.52:88,可以访问到tomcat的欢迎界面
http://192.168.4.52:88/SessionTest/index.jsp      刷新,可以看到IP会变化,但是session ID的值一直保持不变,实现session共享。

本篇CSDN地址:http://blog.csdn.net/chenjian123654/article/details/77895336
参考资料地址:
http://blog.csdn.net/zhanghongjie0302/article/details/50550289
http://oceanszf.blog.51cto.com/6268931/1752641
http://zihai367.iteye.com/blog/2271371
http://blog.csdn.net/qq_16216221/article/details/72599016

nginx+tpmcat+redis实现session共享的更多相关文章

  1. Nginx+tomcat+redis实现session共享

    Nginx+tomcat+redis实现session共享 1,安装nginx,使用yum -y install nginx 这是epel源中的,需要安装epel源. 2,配置nginx. 在ngin ...

  2. nginx+tomcat+redis完成session共享(转载)

    转载:http://blog.csdn.net/grhlove123/article/details/48047735 tomcat7下基于redis的session共享所需jar包: http:// ...

  3. nginx+tomcat+redis完成session共享

    本文记录nginx+redis+tomcat实现session共享的过程 nginx安装:http://blog.csdn.net/grhlove123/article/details/4783467 ...

  4. Nginx+IIS+Redis 处理Session共享问题 1

    最近遇到一个棘手的问题,微信公众平台的前端站点session老是丢失,我们是走的微信网页授权,授权后获取用户openid,丢失后没有openid后续的操作全白搭了,因为没了openid只能判断为客户不 ...

  5. Nginx+IIS+Redis 处理Session共享问题 2

    接下来主要说下利用nginx来测试 两台Windows server 1.10.120.131.210 -  端口84部署demo 2.10.120.131.211 -  端口84部署demo ngi ...

  6. Redis+Tomcat+Nginx集群实现Session共享,Tomcat Session共享

    Redis+Tomcat+Nginx集群实现Session共享,Tomcat Session共享 ============================= 蕃薯耀 2017年11月27日 http: ...

  7. Nginx+Tomcat搭建集群,Spring Session+Redis实现Session共享

    小伙伴们好久不见!最近略忙,博客写的有点少,嗯,要加把劲.OK,今天给大家带来一个JavaWeb中常用的架构搭建,即Nginx+Tomcat搭建服务集群,然后通过Spring Session+Redi ...

  8. nginx+tomcat实现集群,redis实现session共享,软连接实现文件共享:http://blog.csdn.net/hua1586981/article/details/78132710

    转载 2017年02月08日 16:52:41 730 相信很多人都听过nginx,这个小巧的东西慢慢地在吞食apache和IIS的份额.那究竟它有什么作用呢?可能很多人未必了解. 说到反向代理,可能 ...

  9. Nginx集群配置与redis的session共享策略

    一.什么是Nginx? Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Ramb ...

随机推荐

  1. Class doesn't contain any JAX-RS annotated method

    项目中使用了Jersey RESTful风格的注解 , 根据错误提示就知道了 , 在类中没有带注解的方法 ,所以只要在方法上添加 @path() 注解就行了,至少要有一个方法带有Jersey注解

  2. Highcharts属性与Y轴数据值刻度显示Y轴最小最大值

    Highcharts 官网:https://www.hcharts.cn/demo/highcharts Highcharts API文档:https://api.hcharts.cn/highcha ...

  3. ucml设置列表分页类型

    aginationCtype 分页栏显示效果配置,取值为UCML.Pagination或UCML.PaginationMin,默认为UCML.PaginationMin,在视图显示前设置. 1.pag ...

  4. 【SpringMVC】关于classpath和contextConfigLocation

    [SpringMVC]关于classpath和contextConfigLocation 2017年11月16日 12:05:47 yongh701 阅读数:3624    版权声明:本文为博主原创文 ...

  5. 深入浅出的webpack构建工具---webpack基本配置(一)

    深入浅出的webpack构建工具---webpack基本配置(一) 阅读目录 一:webpack入门构建: 1. 安装webpack到全局 2. 安装webpack到本项目. 3. 如何使用webpa ...

  6. Vue2 第二天学习

    个人小总结:1年多没有写博客,感觉很多知识点生疏了,虽然工作上能解决问题,但是当别人问到某个知识点的时候,还是迷迷糊糊的,所以坚持写博客是硬道理的,因为大脑不可能把所有的知识点记住,有可能某一天忘了, ...

  7. mysql 数据库表备份和还原

    #!/bin/bash #ip地址 HOST=localhost #用户名 USER=claim #密码 PASSWORD=Pw123456! #数据库名称 DATABASE=claim_oauth2 ...

  8. Echo团队Alpha冲刺随笔 - 第四天

    项目冲刺情况 进展 前端:完成了差不多一半,小程序部分界面基本完工,WEB端也完成了一部分 后端:也完成了大半了 问题 后端文件上传还没解决 心得 进度还行,团队配合都还不错 今日会议内容 黄少勇 今 ...

  9. android 解决ScrollView中的子布局不能够填充整个ScrollView的情况。

    在开发中如果你的xml文件的跟布局是ScrollView,在ScrollView中无论你写什么样的布局,其默认情况下都是不能填充整个布局的.也就是说你的ScrollView中的子布局设置fill_pa ...

  10. three.js - 动画 图形统计帧频 dat.GUI

    运行一把: 代码解释: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...