欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

PHP升级之后$SESSION丢失

程序员文章站 2022-04-27 20:02:07
...
要在生产环境为一个内部系统升PHP版本,由5.3升成5.4.16

生成以后发现不能login,一路打断点过去,发现服务器端两个页面跳转的时候,取不到$SESSION

悲催的上网找解决方案,结果发现各种说法,

先去查浏览器cookie, cookie是可用的, sessionID也能正常拿的到

再去看代码, 代码写得很正常, 开头session_start, 中间$SESSION[XXX] = XXXX , 都很正常

百思不得其解,快要发疯的时候

我想起来, PHP是把session保存在哪里的呢

Tomcat是可以选择序列化在数据库里,或者写本地文件,或者干脆保存在内存里

PHP原来默认是保存在txt文件中, 保存的path是PHP.ini中的 session.save_path


阿弥陀佛,原来是升级PHP之后, 系统默认把session.save_path 的所有权交给了root, 而不是我当前运行PHP的用户

PHP没权限把session写入这个path中,当然会丢失了。

FFFFuck 狗日的PHP!!!!