项目名
实现同一台电脑用多个域名访问
是很奇葩,尽量保持和实际开发一样的环境,就算无法启动多个tocmat,也可以一台tomcat上配置多个Host。多个应用放在一个web工程下,通过目录区分开,让学习的人容易搞蒙圈。看完之后要点也没有突出,同域和同父域实现SSO的要点分别是什么?
检查是否正确引入了Struts的jar 包
struts.xml是自己写的,用来配置strut2框架的技能
章节3-3编写登录校验接口的视频里面一开始半分钟的时候就已经把这个问题说的很详细了。这个是可以自己校验的,只不过是每个域里面必须要重复写一套这种逻辑而已。就不如写到父域里面好。
单点登录的源码?这个还真没看过
通过ifram来通知进行关联的系统进行cookie的设置,是必须的
是的,核心就是子域共享父域的cookie
每一个访问都是在本域进行设置的,就算是你写一次cookie也仅仅是能访问一个,没法实现sso的单点登录。
看一下你的代码,方便发一下吗
+1~
单点登录 完整源代码参考:http://download.csdn.net/download/fanbingfu/10169271
这是不可能的,如果两个.com的可以共享session,那么这互联网不就乱套了吗?我随便写个网站就可以拿到所有.com域名下的session/cookie那么还有安全可言吗?跨域本身只是针对同一个公司或者多一个项目可以再各个模块中相互信任的这么一个问题,所以你说的这种是不可能的!只有二级域名相同的才能谈论跨域。
我说的是跨域的那个列子
能不能把hosts文件截图发过来看看呢?
..没必要纠结这个,肯定是status路径没找对,你用springboot-web-starter做实验,这个status太旧了
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.5.13</version>
</dependency>
session仅存于当前的会话中,浏览器关闭就结束了,我个人习惯用于登录信息验证存储,拦截器、过滤器之类的;
cookie是将一部分信息存储到用户的本地,当然也可以设置cookie的有效时间,至于什么时候使用cookie和禁用,这个具体看你的业务需求;
redis的话我一般用于存储一些用户登陆后的基本信息,比如什么昵称啊,账号啊,之类的,存储到Redis中方便登陆后一些需要用到用户基础信息的操作,redis也可以设置有效时间,时间过期后会自动跳转到登录界面重新登陆,
关于你说的用户信息放在哪一个服务器,这一点我不是很清楚,你的意思是用户信息存储在数据库中还是登陆操作后暂时存储到类似于redis中,一般的项目,数据库都会有容灾备份,当然也需要一些安全防护,防止别人干掉你的库,再说某一些重要的用户信息在存入数据库之前是需要加密的,例如登陆密码
再检查检查,或者贴代码!
地址就是main.action,这本身就是请求。cookie无效会被重定向到登陆页而已,刷新页面其实还是请求的main.action
可以在页面被加载完成时(ready),通过a标签的herf或者用ajax来访问调用后台的接口,实现刷新请求。
$(document).ready(function(){
$.ajax({
......
});
// 或者用herf
window.local.herf = '接口';
});
tomcat默认端口是8080,你需要设置tomcat端口为80. 另外“404错误”一般都是地址不对
404就是资源定位没找到,看看代码,单词,大小写
这只是一个中专的作用,两个域都把各个域的cookie传到此域
默认30分钟,可以自己设置