php 立即释放session 去除其缓存,ThinkPHP关于session无法清除的一个小问题
首先,问题是这样的,接触ThinkPHP没多久,在做用户登录以及注销的时候遇到了一个小问题,那就是用户可以正常登陆,但是点击注销链接后,理论上应该是session被清空,但是却仍然还是自动跳转到了首页(登录页判断了session是否设置,设置了则跳转到首页),说明session没有被清空。
经过一段时间的排查,最终确定问题出在out,也就是用户注销这个方法上。
上面是我原来写的用户注销方法,代码很简单,就是清除session,然后一个成功提示。
为此我做了个自动刷新的网页,方便实时查看登陆以及注销用户后,session的状态。
通过这个页面的帮助,很快就找到了问题所在。
用户注销不会清空session,但是如果在成功提示的时候,再次刷新网页的话,session才会被清空,也就是success提示的网页需要刷新一次才能执行代码并清除session,于是查看了一下成功提示页面的源代码,使用的是location.href方式跳转网页。
估计没人会想到问题就出在这个成功提示代码上面,百度搜索了一下,基本能够得出大概关于localtion.href会加载缓存的结果。
关于这个问题的解决方案,目前有两种:
1、修改ThinkPHP默认提示模板,使用meta refersh 或者其它会重新发起请求的js跳转网页。
2、使用ThinkPHP控制器的Redirect方式跳转网页。
由于刚开始学习ThinkPHP没多久,还是有点生疏,但是学习过程中难免遇到各种各样的问题,唯有抱着求知和细心的态度才能不断前进。
如果各位有遇到和我相同的问题,希望这篇文章能帮到你们,也希望个人多多支持,互相交流!
php 立即释放session 去除其缓存,ThinkPHP关于session无法清除的一个小问题相关推荐
- XPO:Session管理与缓存--机制篇
缓存的意义已经无需多言了.这里整理了一篇DevExpress的关于XPO的Session管理和缓存的文章:Session Management and Caching. About Sessions ...
- php5.5 session,(五)ThinkPHP实践之Session驱动-TTLSA
Session驱动是指Session在thinkphp中的存储驱动,通过不同的方式,可以将Session存储在不同的"容器"中 对Session有兴趣的的朋友可以查阅相关资料,本篇 ...
- php中sisson用法,thinkPHP中session()方法用法详解
本文实例讲述了thinkPHP中session()方法用法.分享给大家供大家参考,具体如下: 系统提供了Session管理和操作的完善支持,全部操作可以通过一个内置的session函数完成. 用法 s ...
- PHP开启session的函数,ThinkPHP中session函数详解
在PHP中使用$_SESSION来操作session,而ThinkPHP提供了session的封装函数session().单单这一个函数就实现了session的增删改查的功能.下面我们分别来看其应用与 ...
- thinkphp5 后台多选删除_TP5(thinkPHP框架)实现后台清除缓存功能示例
本文实例讲述了TP5(thinkPHP框架)实现后台清除缓存功能.分享给大家供大家参考,具体如下: layui插件 http://www.layui.com/ 1--common的文件 /** * 循 ...
- XPO:Session管理与缓存--测试篇
之前整理了一下XPO在Session管理和缓存方面的一些资料(XPO:Session管理与缓存--机制篇),但原文的例程还是有些含糊的地方,这两天抽空做了一下测试.若有不当或者不对的地方敬请不吝赐教. ...
- php thinkphp 设置session的有效时间
thinkphp 设置session的有效时间是根据配置 'SESSION_EXPIRE' => 7200, //有效时间 'SESSION_OPTIONS'=>array('expire ...
- 高并发时,读文件、读SESSION、读缓存(Redis)和读数据库(Mysql)的查询效率哪家强?
今天我们来探讨下读文件.读SESSION.读缓存(Redis).读数据库(Mysql),四者查询速度大比拼,效率哪家强? 前言:本案例测试环境为本地环境,局域网模式,不同的业务逻辑,会对测试结果产生影 ...
- 后台缓存收回进程无法释放上下文[/BUSINESS的缓存的[10]%-请考虑增加缓存的最大大小
Tomcat启动时提示:"后台缓存收回进程无法释放上下文[/BUSINESS的缓存的[10]%-请考虑增加缓存的最大大小"; 原因:出现该问题是Tomcat启动时,占用的缓存较大, ...
最新文章
- dev chartcontrol获取x y轴的值_2020年深圳蛇口x情怀当铺展览详情(时间+地点+门票)...
- tomcat7.0配置CORS(跨域资源共享)
- just found out why the group by does not work for my app, but work for SCN exercise
- 为JPA的本机查询API键入安全查询
- 这份1307页Android面试全套真题解析,源码+原理+手写框架
- SinoBBD跨入大数据产业发展新模式
- Linux命令之查看文件内容
- python中的yield使用详解
- gradle指令linux守护,gradle之gradlew最全指令攻略
- 一秒钟世界上会发生多少事_一秒之中会发生什么
- Activiti7整合SpringBoot
- 《基于深度学习的自然语言处理》中文PDF+英文PDF+学习分析
- 计算机通信答辩ppt,电子设计大赛答辩.ppt
- 新西兰梅西大学有计算机专业吗,新西兰大学计算机排名第一之梅西大学计算机专业...
- 双歧杆菌基因组序列批量下载、基因组注释、antiSMASH合成基因簇挖掘、核心基因的同源性比较。
- Android手表商场项目总结
- 真正厉害的人,都是“反内耗”体质
- 产品与服务最大的卖点,可能是销售最大的坑!
- Baumer profinet 接口编码器的简单调试
- 最近点对问题(蛮力法和分治法)