CentOS7 下 Nginx + Tomcat 实现 Session 共享   在之情的文章中搭建的 centos7 + tomcat + nginx 的环境的基础上, 使用 redis 实现 tomcat 的 session 共享的问题。 一 : 安装 Redis   安装 gcc:   yum install -y gcc-c++   使用 FTP 服务器上传安装包,解压上传的 redis 的包    tar -zxvf redis-3.0.0.tar.gz   进入解压目录 redis-3.0.0 执行   make PREFIX=/usr/local/redis install   把 redis-3.0.0 目录下的 redis.conf 文件 cp 到 /usr/local/redis 中   启动 /usr/local/redis 目录下 执行   ./bin/redis-server ./redis.conf   修改 /usr/local/redis 目录下的 redis.conf   daemonize no ----> 改成 yes 也就是后端启动

  关闭 /usr/local/redis 目录下 执行   ./bin/redis-cli shutdown

二 : redis + tomcat 实现 session 共享   首先,需要在 tomcat 的安装目录下的 lib 目录下添加以下三个 jar 包  (!!关于 jar 包, 可能会出现 jar 包冲突的问题, 参考 https://github.com/izerui/tomcat-redis-session-manager )   commons-pool2-2.2.jar   jedis-2.5.2.jar   tomcat-redis-session-manager-2.0.0.jar        然后修改在 tomcat 的安装目录下的 conf 目录里的 context.xml 文件   在 <Context> 节点中, 添加以下内容: 1   <ValveclassName="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" /> 2   <ManagerclassName="com.orangefunction.tomcat.redissessions.RedisSessionManager" 3   host="192.168.191.2" 4   port="6379" 5   database="0" 6   maxInactiveInterval="60" />        注意 注意 注意 : Valve 而不是 Value   关闭所有的 tomcat , nginx ,redis, 重启 redis (先开启 redis , 不然会报错), 重启 nginx 和 tomcat, 访问 tomcat 时就能看到 session 不变了        最后是用 RedisDesktopManager 查看存入 redis 的 session 数据