PHP如何解决丢失SESSION的问题-创新互联

小编给大家分享一下PHP如何解决丢失SESSION的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

创新互联公司服务项目包括恩阳网站建设、恩阳网站制作、恩阳网页制作以及恩阳网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,恩阳网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到恩阳省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

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服务器即可。

以上是“PHP如何解决丢失SESSION的问题”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享标题:PHP如何解决丢失SESSION的问题-创新互联
URL网址:http://hbruida.cn/article/cesgpd.html