首页 > 解决方案 > PHPSESSID - 设置时间到期问题(Ubuntu 中的 PHP 5.5.9)

问题描述

版本 -> PHP 5.5.9

我开始开发一些程序,我注意到会话在 15 分钟内过期非常快,但我将其设置为 24 小时。

在 Firefox 中检查 Web 控制台后,我阅读了一些警告消息:

Cookie“PHPSESSID”将很快被拒绝,因为它的“sameSite”属性设置为“none”或无效值,没有“secure”属性。要了解有关“sameSite”属性的更多信息,请阅读https://developer.mozilla.org/docs/Web/HTTP/Cookies

在读了很多东西之后,我觉得自己完全无知,我开始看到了光明。

常规的 cookie,现在设置了一点(和丑陋的)hack:

function setcookiefix($name, $value) {
    $cookie_time = time() + 3600 * 24;
    setcookie($name, $value, $cookie_time, '/; samesite=lax');
}

这使我可以轻松地创建 cookie,但我无法使用 PHPSEESID cookie 来实现,并且如果我不对服务器进行任何调用,我的所有 cookie 都会在 15 分钟内过期。

我该如何解决?提示 -> 我无法更新 PHP 版本,这是与古代服务器的一场战斗...... ;)

我将尝试像我多年来所做的那样扩展它,但忽略此命令:

ini_set("session.cookie_lifetime", 3600 * 24); //24 horas
ini_set('session.gc_maxlifetime', 3600 * 24); //24 horas
session_set_cookie_params(3600 * 24, "/");
session_start();

感谢您的帮助和时间。

此致,

巴勃罗。

标签: phpcookiessession-cookiessamesite

解决方案


推荐阅读