session ID 的问问题

coolwindkaka 2010-10-20 04:20:09
PHP 5.2.10 + APACHE 2.2.8 ZF框架

表现还是跟很多一样,刷新sessionid会变化
不同的是,大部分的用户刷新不会变化,能正常使用session,但是有部分用户的机器每次刷新都会变化,而且同一个公司的都是一样,我怀疑跟网络有关,然后让他们重启ADSL,还是一样,同一个局域网上来的,session就无法保存,每次变化

这个问题不知道有没有人碰上过,有没有解决的方法
...全文
145 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
coolwindkaka 2010-11-03
  • 打赏
  • 举报
回复
检查问题出现的原因,发现出问题的终端cookies的名称发生了变化,PHP默认的是[PHPSESSID],但是有些网络提交上来之后的名称变成了[,_PHPSESSID],不知道是因为路由还是网关加上的,所以导致一个网络的人都登录不了
解决办法,在ZF的引导页index.php的前面加入这段代码:
if(isset($_COOKIE["PHPSESSID"]) && $_COOKIE["PHPSESSID"]!= ''){
$sid = $_COOKIE["PHPSESSID"];
}elseif(isset($_COOKIE[",_PHPSESSID"]) && $_COOKIE[",_PHPSESSID"]!= ''){
$sid = $_COOKIE[",_PHPSESSID"];
}else{
$sid = '';
}
if ($sid==''){
session_id();
}else{
session_id($sid);
}

如果不是ZF框架的需要把session_start()写在后面才可以,问题解决
libertine_dj 2010-11-03
  • 打赏
  • 举报
回复
。。。。。。
coolwindkaka 2010-10-25
  • 打赏
  • 举报
回复
csdn也没落了...
coolwindkaka 2010-10-25
  • 打赏
  • 举报
回复
机器时间正确,检查缓存文件夹发现cookie文件没有写入,检查IE配置没有问题,甚至添加入信任列表,cookie文件还是没有,但是其他网站的能发现,现在有点晕了
YHL27 2010-10-21
  • 打赏
  • 举报
回复
learning
hoojo 2010-10-21
  • 打赏
  • 举报
回复
sessionid好像是ip+当前时间创建的,然后再处理过
coolwindkaka 2010-10-21
  • 打赏
  • 举报
回复
因为大部分的用户还是正常能使用,sessionid变化的情况比较低,不敢确定是哪里出了问题,选用不用的浏览器也会出现,所以应该跟浏览器无关,重启ADSL拨号也没用,而且同一个局域网的用户都会这样,或者跟网络设置有关?
buluzhai 2010-10-20
  • 打赏
  • 举报
回复
应该是跟网络有关系,如果ip变化的话,session_id是会变的

4,251

社区成员

发帖
与我相关
我的任务
社区描述
国内外优秀PHP框架讨论学习
社区管理员
  • Framework
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧