PHP会话在移动浏览器上销毁太快

时间:2015-08-20 06:34:55

标签: php android session-cookies session-timeout

我有以下问题。我正在构建一个PHP + jQuery移动网站,我想维护PHP会话。 这里的问题是,当我关闭浏览器应用程序(Android上的三星Galaxy S4 / S5或谷歌浏览器)并且我离开手机说十分钟,然后重新打开浏览器时,整个会话似乎被破坏了,我有再次登录。

我试图像这样增加cookie的生命周期:

ini_set('session.cookie_lifetime', 60 * 60 * 24);
ini_set('session.gc-maxlifetime', 60 * 60 * 24);
session_start();

但这并没有解决它。我认为这是因为浏览器应用程序会在一段时间不活动后清除会话数据。

请注意,我不想使用"记住我"功能,我只想使用PHP会话ID。

解决这个问题的正确方法是什么?我查看了本地存储,但浏览器App清除整个会话似乎很奇怪,我正在寻找最简单的解决方案。

2 个答案:

答案 0 :(得分:0)

尝试使用session_set_cookie_params函数,而不是尝试修改ini值:

session_set_cookie_params(60 * 60 * 24);
session_start();

答案 1 :(得分:0)

我使用php.ini设置

修复了它(经过大量尝试后)
session.gc_maxlifetime = 3600

执行此操作后,移动浏览器会使会话保持活动状态。即使我把手机放了很长时间。

如果通过脚本完成,显然设置maxlifetime不起作用。