我在网站上,关闭所有窗口然后我又回去了,当然我已经登录了。
我需要的是网站不这样做。当我回去不登录时 - 很快就会在每次访问时创建一个新会话并一直保持(没有超时)。
有没有合理的解释,当我这样做时我应该注意什么,因为我设法在本地apache上做,但它不能在线工作?
谢谢:)
答案 0 :(得分:2)
制作Cookie时,请设置过去的过期日期。它应该允许您保持登录以进行会话,但是一旦您关闭浏览器,浏览器将清除cookie过时的cookie以及您的会话。
答案 1 :(得分:0)
如果您确实关闭了所有窗口(而不仅仅是所有选项卡!),那么会忘记会话cookie - 并且进入该站点的新浏览器窗口应该没有会话cookie通过,提示PHP创建一个新会议。如果您的网站不是这样的,那么它可能使用0以外的session.cookie_lifetime
,使PHP创建持久性cookie而不是会话cookie。
PHP每次运行时都有一些机会销毁旧会话,以便从一段时间没有使用过的会话中回收空间。 php.ini中的session.*
属性确定哪些会话被清理(session.gc_maxlifetime
)以及频率(session.gc_probability
和session.gc_divisor
)。如果希望会话有效期更长,则将gc_maxlifetime设置为更高的值。如果你希望它们永远有效,请将gc_probability设置为0 - 但这不是一个好主意,因为会话永远不会自动清理,并且会慢慢填满驱动器。