今早发现session保存出现问题,传递不了session。看过php的文件都没有任何异常,也没有任何报错。
本次升级更新内容:优化分类置顶功能处理机制;修复域名变化带来的cookie域问题;文件上传js的兼容ie9,ie10问题;更新内容编辑器版本;会员服务权限新增求购信息的发布总量限制,求购信息的每日发布量限制;新增供应信息的每日发布量限制;新增分类信息的审核机制控制;新增分类信息的每日发布量限制;新增分类信息的重发刷新功能;优化会员中心的服务类型内容;优化模板运行处理机制;优化会员商铺模板运行机制;
0
在网路上找到了一些文章,说是否php.ini文件里面的session.save_path没有设置好,然后查看了一下,也没发现有什么问题,路径是对的。查找了保存session文件的目录下面,发现每次刷新都会生成一个新的session文件,再尝试打印session_id() ,果真如此,每次刷新都会更新session_id()。
然后继续寻找网络上更多的资料,有些人说是cookie问题,因为session_id也是通过cookie去承载的,我尝试使用命令打印出cookie里面的值var_dump($_COOKIE),发现返回的值是array(0){} 没有任何东西,那就证明了是cookie出现了问题。
立即学习“PHP免费学习笔记(深入)”;
顺着整个思路去查找,最终发现是之前搞session跨域的时候更改了php.ini里面的session.cookie_domain 设置 ,如下
session.cookie_domain = ".zssd.mobi"
这里是设置了cookie只能在顶级域名zssd.mobi下生效,目的是为了解决跨域的问题,但其它域名却出现了问题(关于多个域名要实现session跨域可能需要用到其它方法解决了),只要把session.cookie_domain 设置为空就能正常使用sesssion_id了,具体修改如下
session.cookie_domain =
然后重启apache,问题解决。
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号