safari / opera session cookie过早删除

时间:2011-03-28 03:14:18

标签: php session cookies safari opera

我设置了一个PHP会话cookie,其生命周期为0(在浏览器关闭时过期),但是我在几秒钟之后就已经退出了会话。

我正在观察safari cookies弹出窗口(在safari首选项中),并且在重新加载页面时,我看到cookie从列表中消失,只有当被重定向到登录页面时才会被新的会话ID替换(其中一个新的会话启动,因此cookie设置)。

这与opera的行为方式相同 Firefox也不错。事实上,我一直在使用该网站一段时间没有任何麻烦在Firefox,所以如果它也影响它我会看到它现在。

我已尝试使用许多HTTP标头(如Cache-control)进行工具检查,检查session_write_close()是否在正确的位置(但实际上这应该无关紧要,因为我只是刷新页面),同时我检查了会话垃圾清理设置,但当我看到这些饼干自己消失时,我几乎跳出了我的袜子!

mac 10.6.4 歌剧10.10 野生动物园5.0.2

我还应该提到这个网站有ajax请求正在进行,但是他们都没有试图以任何方式(直接)破坏会话或删除cookie。

编辑:刚刚在win XP上测试过:FF好吧,Safari和Mac上的现象一样。

编辑:This short video在Windows上说明了这个问题。

1 个答案:

答案 0 :(得分:1)

看一下这个帖子:

https://discussions.apple.com/thread/4032092

我最好的答案是,不要设置过期,而是在将来设置明确的日期/时间。