博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP问题 —— 丢失SESSION
阅读量:6293 次
发布时间:2019-06-22

本文共 607 字,大约阅读时间需要 2 分钟。

1.1  丢失SESSION

1.1.1  现象

从PHP 5.5.9升级到PHP 5.5.12,应用执行登录操作后,后续页面没有记住登录成功的状态。

1.1.2  原因

经过跟踪代码,发现登录成功后已经将状态信息写入Session,但是页面重定向到首页后,Session不见了,导致后台以为是未登录用户访问。

Session为什么会不见?网上给出若干方法,但是仔细分析后均不适用本案例。因为同样的代码,在其它服务器上运行就是正常的,只有在本地升级后的服务器上不正常,因此应该是PHP升级导致。

从其它服务器上拷贝一份PHP.INI文件与本机的进行对比,发现如下参数:

session.save_path = "D:/PHPDevEnv/PHP 5.5.9/temp"

红色部分配置就是问题的关键所在。原来使用PHP 5.5.9时,PHP的目录名称中包含了版本号,后来升级到PHP 5.5.12,考虑到以后还有可能升级PHP,目录名称中带有版本号不利于后续升级,于是将目录中的版本号去掉了,同时修改了配置文件中的若干相关配置,但是没有完整搜索PHP 5.5.9这个字符串,导致上述参数没有修改。于是PHP在保存Session的时候就找不到路径。

1.1.3  解决

将上述参数修改为一个实际存在的路径,重启Apache服务器即可。

转载于:https://my.oschina.net/tywali/blog/674465

你可能感兴趣的文章
让Windows图片查看器和windows资源管理器显示WebP格式
查看>>
我的友情链接
查看>>
vim使用点滴
查看>>
embedded linux学习中几个需要明确的概念
查看>>
mysql常用语法
查看>>
Morris ajax
查看>>
【Docker学习笔记(四)】通过Nginx镜像快速搭建静态网站
查看>>
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
查看>>
<转>云主机配置OpenStack使用spice的方法
查看>>
java jvm GC 各个区内存参数设置
查看>>
[使用帮助] PHPCMS V9内容模块PC标签调用说明
查看>>
基于RBAC权限管理
查看>>
数学公式的英语读法
查看>>
留德十年
查看>>
迷人的卡耐基说话术
查看>>
PHP导出table为xls出现乱码解决方法
查看>>
PHP问题 —— 丢失SESSION
查看>>
Java中Object类的equals()和hashCode()方法深入解析
查看>>
数据库
查看>>
dojo.mixin(混合进)、dojo.extend、dojo.declare
查看>>