6

当我用这个 php 行创建一个新的 cookie 时,我正在创建我的网站:

setcookie('subscribed', 'true', time() + 365*24*3600*100, '/', null, false, true);

我意识到我的浏览器(谷歌浏览器)拒绝获取那个 cookie。当我在 Google Chrome 中查看我的 cookie 时,它​​并不存在。我开始摆弄不同的设置,直到我看到这有效:

setcookie('subscribed', 'true', time() + 365*24*360, '/', null, false, true);

这意味着将过期时间更改为较低的值确实可以作为实现此目的的一种手段。

我的问题是,您可以为 Google chrome 中的 cookie 设置的最短过期时间是多少?有人知道这个政策吗?

4

1 回答 1

11

我刚刚在 64 位操作系统上尝试过,Chrome 作为浏览器,Apache 作为服务器,它运行完美。它显示 cookie 的过期时间为 2113 年某处。

dev-null-dweller可能是正确的: 2038 年 1 月 19 日星期二03:14:07 UTC 之后的任何日期都将绕到接近 1900 的某个时间,从而迫使 cookie 立即消失(即在 32 位平台上)。

通过将 cookie 过期时间设置为未来不超过 10 年左右来解决此问题。无论如何,这已经超出了任何电子设备的合理预期寿命。

于 2013-05-18T17:26:37.130 回答