Linux下Session丢失原因
Posted 惊涛随笔
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux下Session丢失原因相关的知识,希望对你有一定的参考价值。
最近碰到一个问题,把代码迁移到linux系统下,重新搭建php环境,运行代码,
在登录页面时,不能访问后台,会返回到登录页面,对代码测试,没有报任何错误,
最后检查到是跳转时,session丢失的问题,如何会丢失呢?带着这个问题,查了大量资料,
发现造成这个原因有这几种:
1.session存储路径(目录)不存在,自然就无法生成session临时文件
2.session存储路径下有没有权限,如果没有,也就不可能存储session数据
3.能正常存session数据,但session存入后被清空
解决方案:
首先,在项目根目录下创建phpinfo.php文件,在文件中写入phpinfo(),运行此文件,查看页面,
就可以找到session的存储路径,
其次,进入linux中查找session存储路径是否存在,不存在创建存储目录,并分配权限,
如果有session存储路径,就查看其是否有权限,没有就分配权限,
最后,是否是第三个原因,可在phpinfo.php页面中查找date.timezone是否设置不对,
然后在php.ini配置文件中找到date.timezone进行配置
我的项目中遇到的就是第一种情况,因而,我就创建存储目录,并分配权限,问题就解决了。
希望本编博客对大家能有所帮助。
最后,提醒下各位,不要在配置文件中找session存储路径,上述方法找的session存储路径准确,
我花了大量时间才解决问题就是配置文件中的session存储路径和上述方法找到的session存储路径不同,
所以才一直没有解决问题。
以上是关于Linux下Session丢失原因的主要内容,如果未能解决你的问题,请参考以下文章
linux下 php文件中session_id无法保持不变,每次刷新页面session_id也会出现新的数值 这个是怎么搞定的?