是否有好的库或逻辑来创建持久(几年)的用户识别会话?会话管理,如Gmail和Facebook将是奖金。
您需要设置cookie和会话的组合。请记住,会话只能持续到浏览器关闭,或者更糟糕的是,直到两个请求之间的时间超过服务器设置的时间限制。
首先要使这一切成为可能,你必须使用cookie。为此,请注意,如果用户更改浏览器或刷新cookie,永久会话将停止工作。
第二件事是在cookie中创建一个只能从该位置为该用户使用的散列。例如:使用REMOTE_ADDR的哈希值和数据库中的用户id。因此,它不会成为安全威胁,因为除了没有什么作用的哈希之外,没有任何信息可以从cookie中推断出来……现在。
第三,当用户发送请求时,检查该cookie是否存在,并使用该哈希值与数据库中的相同哈希值进行比较。(你可以把这个哈希值放在用户的表中,但我建议创建另一个表,以便用户可以从几个地方普遍登录)数据库中的这个哈希值将是检索你想要登录的帐户的关键。
第四,当你找到要登录的帐户时,记得更新cookie中的哈希值,显然此时在php中使用SESSION系统来继续正常工作。
这个方法已经被证明是成功的许多"Remember me"为基础的网站…
您混淆了会话和cookie。Session是一个根据定义结束的东西。
而饼干可能永远存在。
因此,如果收到id,设置cookie并开始另一个会话。
登录用户时,将会话cookie过期时间设置为+10年或任意值