会话cookie和“记住我”功能之间有什么区别?

时间:2013-11-11 08:15:05

标签: php session cakephp authentication cookies

CakePHP会自动创建一个名为CAKEPHP的cookie。使用auth组件,登录后,此cookie似乎是服务器的用户标识符,您可以关闭浏览器和所有内容,只要cookie存在,您仍然会登录。

“记住我”功能有什么不同吗?一旦你登录,你就会被“记住”,直到你退出或者cookie过期为止。

非常感谢

1 个答案:

答案 0 :(得分:0)

@Damien对“记住我”的机制是正确的。

但是根据存储该值的位置,存在一些差异。

默认情况下,会话cookie php doc的生命周期=“直到浏览器关闭”。

如果我们在用户关闭浏览器时默认将该值存储在$ _SESSION中,则会删除会话cookie并且该值将丢失,因此没有“记住我”功能。

如果我们想使用会话实现记住我的功能,我们将更改php.ini会话cookie生命周期参数以覆盖浏览器关闭行为的过期。

另一方面,如果我们在$ _COOKIE中明确存储该值并将所需时间设置为实时值,我们会确保即使用户关闭浏览器并返回,我们也会使用Cookie并确定唯一值他。