windows 10中 spring boot +nginx + redis 的session共享

1、Windows 安装 Redis(.msi)

Github 下载地址:https://github.com/MicrosoftArchive/redis/releases

windows 10中 spring boot +nginx + redis 的session共享

下载完成之后,一路安装,安装完成之后,服务自动开启了。

 2、接下来使用idea 创建个一样的项目,demo-nginx1 ,demo-nginx2 ,创建好,如下图所示:

windows 10中 spring boot +nginx + redis 的session共享windows 10中 spring boot +nginx + redis 的session共享

 分别(demo-nginx1的端口号为8081,demo-nginx1的端口号为8082)在application.yml中添加如下配置:

server:
  port: 8082/8081 
  servlet:
    context-path: /demo

spring:
  redis:
    host: 127.0.0.1
    port: 6379
    password:

分别修改项目pom.xml中添加redis依赖如下:

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<dependency>
   <groupId>org.springframework.session</groupId>
   <artifactId>spring-session-data-redis</artifactId>
</dependency>

分别添加@EnableRedisHttpSession来开启spring session支持,配置如下

windows 10中 spring boot +nginx + redis 的session共享

 

然后创建分别创建一个包:com.example.demo.controller,在分别创建一个类:IndexController,分别如下所示:

8081端口

windows 10中 spring boot +nginx + redis 的session共享

8082端口

windows 10中 spring boot +nginx + redis 的session共享

以上修改之后,分别启动。

3、修改nginx的nginx.conf配置文件,如下图所示:

查看红框部分

windows 10中 spring boot +nginx + redis 的session共享

以上配置好之后,启动nginx(ngxin相关请查看上一篇)之后,访问http://localhost/demo/getSessionId,如下所示,端口变化,session不变,表示session共享成功

 windows 10中 spring boot +nginx + redis 的session共享

windows 10中 spring boot +nginx + redis 的session共享