spring+shiro共享session完整小例子
之前写过一个,只不过那个不单纯,有人跑不通,所以今天整个纯粹的小例子。
要求你有Redis。
源码
目录结构

因为这是个例子,仅仅为了体现共享session,所以权限认证部分没有加入处理逻辑。目录结构也做了简化。
打包好,为下一步做准备
配置Tomcat
准备两个Tomcat,先修改配置文件。

| Tomcat-1 | Tomcat-2 | |
| SHUTDOWN-端口 | 8005 | 8006 |
| HTTP端口 | 8081 | 8082 |
| Connector端口 | 8009 | 8010 |



将打包好的war包解压,修改几个jsp文件,目的是区别两个Tomcat。(放在Tomcat-1里面的就是1,放在Tomcat-2了里面的就是2)
index

welcome

home

最后把文件放进apache-tomcat-8.0.29-8081\webapps\ROOT 目录,Tomcat-2也一样

配置Nginx
首先Nginx的路径不能存在中文,所以这要注意。
修改配置文件:

找到http{

在里面加入两段配置,(配置文件里面已经有一个监听80端口的server配置了,所以把那个端口改成其他就可以,比如88)
upstream myapp{
server 127.0.0.1: weight=;
server 127.0.0.1: weight=;
}
server{
listen ;
server_name myapp;
location / {
proxy_pass http://myapp;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
最终如图:

最后
启动两个tomcat

启动Nginx

浏览器访问:http://localhost

刷新一下看看

这里呢,没认证过,是不能访问Home的,只有点击过Welcome通过认证才能访问。当在任何一台服务器上认证过,再跳到其他服务器上,就不用再次登录了。
点击Welcome。

访问home

个人理解就是如此,不对请指正。
spring+shiro共享session完整小例子的更多相关文章
- SpringBoot+Shiro+Redis共享Session入门小栗子
在单机版的Springboot+Shiro的基础上,这次实现共享Session. 这里没有自己写RedisManager.SessionDAO.用的 crazycake 写的开源插件 pom.xml ...
- 一个spring boot集成dubbo的小例子
请移步github,介绍和代码均在上面了:https://github.com/wuxun1997/voicebox 这里再多说两句.github上的这个小例子默认使用组播作为注册中心,你也可以把组播 ...
- Spring MVC 简介及入门小例子
说明:文章内容全部截选自实验楼教程[Spring MVC 简易教程] 一.什么是 Spring MVC Spring MVC 属于 SpringFrameWork 的后续产品,已经融合在 Spring ...
- 基于Shiro,JWT实现微信小程序登录完整例子
小程序官方流程图如下,官方地址 : https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html ...
- Redis+Shiro+Spring-data-redis,共享Session
环境:centos7,Java1.8+,一个Nginx,两个Tomcat,一个Redis. 关于共享session的问题大家都应该知道了,传统的部署项目,两个相同的项目部署到不同的服务器上,Nginx ...
- shiro源码篇 - shiro的session共享,你值得拥有
前言 开心一刻 老师对小明说:"乳就是小的意思,比如乳猪就是小猪,乳名就是小名,请你用乳字造个句" 小明:"我家很穷,只能住在40平米的乳房" 老师:" ...
- spring小例子-springMVC+mybits整合的小例子
这段时间没更博,找房去了... 吐槽一下,自如太坑了...承诺的三年不涨房租,结果今年一看北京房租都在涨也跟着涨了... 而且自如太贵了,租不起了.. 突然有点理解女生找对象要房了.. 搬家太 ...
- Spring aop 小例子demo
由于最近的服务项目提供接口有一个需求,所有操作都必须检查操作的服务可用,所以感觉Aop特别适合实施.完成学习的小例子. 关于spring-Aop原理:http://m.oschina.net/blog ...
- 使用redis进行基于shiro的session集群共享
之前写过一篇nginx多tomcat负载均衡,主要记录了使用nginx对多个tomcat 进行负载均衡,其实进行负载均衡之前还有一个问题没有解决,那就是集群间的session共享,不然用户在登录网站之 ...
随机推荐
- table index & delete array item
table index & delete array item https://www.iviewui.com/components/table#ZDYLMB 编辑 row = { " ...
- 莫烦scikit-learn学习自修第四天【内置训练数据集】
1. 代码实战 #!/usr/bin/env python #!_*_ coding:UTF-8 _*_ from sklearn import datasets from sklearn.linea ...
- vue-cli(vue脚手架)
vue-cli用于自动生成vue+webpack项目. 安装webpack:npm install webpack -g 检查webpack是否安装成功和版本:webpack -v 如果是webpac ...
- 三、oneinstack
一.介绍 oneinstack https://www.cnblogs.com/lxwphp/p/9231554.html
- Python——列表操作
一.列表中所有元素出现的次数,并输出为字典模式 def count_list(list): b_list = {} for i in set(list): b_list[i] = list.count ...
- Python实现快速排序--数据结构
快速排序(Quick Sort) 快速排序是由东尼·霍尔所发展的一种排序算法.在平均状况下,排序n个元素要O(nlogn)次比较.在最坏状况下则需要O(n^2)次比较,但这种状况并不常见.事实上,快速 ...
- Spring Boot 构建电商基础秒杀项目 (四) getotp 页面
SpringBoot构建电商基础秒杀项目 学习笔记 BaseController 添加 public static final String CONTENT_TYPE_FORMED = "a ...
- ES系列十五、ES常用Java Client API
一.简介 1.先看ES的架构图 二.ES支持的客户端连接方式 1.REST API http请求,例如,浏览器请求get方法:利用Postman等工具发起REST请求:java 发起httpClien ...
- Spring 使用介绍(四)—— SpEL
一.SpEL介绍 Spring表达式语言全称为“Spring Expression Language”,缩写为“SpEL”,可在运行时构建复杂表达式 使用步骤: 1)创建解析器:ExpressionP ...
- memcached安装报错 error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory解决
我是从其他服务器scp来的memcached(~~~整个文件夹的那种,windows用多了的后遗症) 在准备运行 ./memcached -d -u root -l localhost -m 800 ...