nginx+tpmcat+redis实现session共享
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共享的更多相关文章
- Nginx+tomcat+redis实现session共享
Nginx+tomcat+redis实现session共享 1,安装nginx,使用yum -y install nginx 这是epel源中的,需要安装epel源. 2,配置nginx. 在ngin ...
- nginx+tomcat+redis完成session共享(转载)
转载:http://blog.csdn.net/grhlove123/article/details/48047735 tomcat7下基于redis的session共享所需jar包: http:// ...
- nginx+tomcat+redis完成session共享
本文记录nginx+redis+tomcat实现session共享的过程 nginx安装:http://blog.csdn.net/grhlove123/article/details/4783467 ...
- Nginx+IIS+Redis 处理Session共享问题 1
最近遇到一个棘手的问题,微信公众平台的前端站点session老是丢失,我们是走的微信网页授权,授权后获取用户openid,丢失后没有openid后续的操作全白搭了,因为没了openid只能判断为客户不 ...
- Nginx+IIS+Redis 处理Session共享问题 2
接下来主要说下利用nginx来测试 两台Windows server 1.10.120.131.210 - 端口84部署demo 2.10.120.131.211 - 端口84部署demo ngi ...
- Redis+Tomcat+Nginx集群实现Session共享,Tomcat Session共享
Redis+Tomcat+Nginx集群实现Session共享,Tomcat Session共享 ============================= 蕃薯耀 2017年11月27日 http: ...
- Nginx+Tomcat搭建集群,Spring Session+Redis实现Session共享
小伙伴们好久不见!最近略忙,博客写的有点少,嗯,要加把劲.OK,今天给大家带来一个JavaWeb中常用的架构搭建,即Nginx+Tomcat搭建服务集群,然后通过Spring Session+Redi ...
- nginx+tomcat实现集群,redis实现session共享,软连接实现文件共享:http://blog.csdn.net/hua1586981/article/details/78132710
转载 2017年02月08日 16:52:41 730 相信很多人都听过nginx,这个小巧的东西慢慢地在吞食apache和IIS的份额.那究竟它有什么作用呢?可能很多人未必了解. 说到反向代理,可能 ...
- Nginx集群配置与redis的session共享策略
一.什么是Nginx? Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Ramb ...
随机推荐
- Lua 与C 交互之LUA_REGISTRYINDEX(3)
通常来说,C函数需要保留一些非局部的数据,也就是指那些超过他们作用范围的数据.C语言中我们使用全局变量或者static变量来满足这种需要.然而当你为Lua设计一个程序库的时候,全局变量和static变 ...
- 【Beta Scrum】冲刺!5/5
1. 今日完成情况 人员 学号 分工 是否完成 完成情况 胡武成 031502610 解决短信内容,辅助web端解决在线编辑 Y 短信已解决,在线编辑已有解决方案 郭剑南 031502609 修改we ...
- VMware NAT 设置原理
1.网络地址转换(NAT):默认使用VMnet8 (强烈推荐) 这种访问模式指的是虚拟机不占用主机所在局域网的ip,通过使用主机的NAT功能访问局域网和互联网,意味着虚拟机可以访问局域网中的其他电脑, ...
- IO_ObjectOutputStream(对象的序列化)
对象序列化就是将一些对象写入到硬盘中存储起来,以便下次复用 import java.io.FileInputStream; import java.io.FileOutputStream; impor ...
- 【BZOJ4259】残缺的字符串
[BZOJ4259]残缺的字符串 Description 很久很久以前,在你刚刚学习字符串匹配的时候,有两个仅包含小写字母的字符串A和B,其中A串长度为m,B串长度为n.可当你现在再次碰到这两个串时, ...
- 在linux系统下安装配置apacheserver
我所用的是centos linux系统,但apache的服务在linux系统都大同小异.像ubuntu redhat等等. now let us go! 如有问题, 欢迎直邮: zhe ...
- mysql用户操作、权限分配、远程登录设置
对最近mysql的常用运维命令进行整理 查看使用的哪个配置文件启动的mysql 1. ps aux|grep mysql|grep 'my.cnf' 如果启动的命令中选择了配置文件,则可以查询出来,也 ...
- (零 ) 天猫精灵接入Home Assistant-总说明
天猫精灵设备管理 https://bbs.hassbian.com/tmall 自己的hass访问地址 http://[自己的IP或域名]:8123/states 自己的MQTT服务器访问 http: ...
- MP实战系列(二)之集成swagger
其实与spring+springmvc+mybatis集成swagger没什么区别,只是之前写的太不好了,所以这次决定详细写. 提到swagger不得不提rest,rest是一种架构风格,里面有对不同 ...
- 加拿大抢先低调上架技嘉RTX 2060 显卡
RTX 2060显卡这个传说越来越接近落地成真了. 据外媒爆料,加拿大经销商已经低调上架来自技嘉的RTX 2060显卡,价格为529加元(约合394美元,2705元人民币). 考虑到RTX 2070的 ...