Zend Framework 2会话容器生存期

时间:2015-01-24 10:22:11

标签: session cookies zend-framework2 authorization

我是ZF2中的一员,需要更有经验的用户提供建议。 我正在开发一个小商店,我想为会话存储和cookie做出不同的生命周期。 例如,当用户登录服务器发送具有3个月生命周期的cookie并创建具有30分钟生命周期的会话存储记录(对于用户数据)。拥有cookie和唯一会话记录的用户可以使用安全数据(例如信用卡号,电话等)购买商品,评论和查看他们的个人资料。 在没有活动30分钟后,必须删除会话记录,但必须保留cookie(cookie的生命周期必须为3个月)。只有cookie用户可以发表评论但不能购买任何东西或查看他/她的个人资料。 所以我很有意思,如何用ZF2实现它? - 据我所知" remember_me_time"必须等于" cookie_lifetime"或者它们可以改为不同的值?
ZF2是否有任何标准机制在一段时间后为单个用户删除会话存储,或者我必须自己创建这样的机制?

1 个答案:

答案 0 :(得分:1)

如果您正在使用ZfcUser(如果您在ZF2上进行用户身份验证,那么请查看GoalioRememberMehttps://github.com/goalio/GoalioRememberMe)模块,它完全符合您的要求#39;重新寻找(警告:我自己从未真正使用它,所以我无法保证它的功效或安全性)

我还建议您阅读this response by Anthony Ferrara (@ircmaxell)一个类似的问题。它包含了一些关于你应该做什么和不应该做什么的背景信息,它的要点是:不要试图让PHP会话保持打开状态,使用"记住我"改为使用cookie,并为那些没有活动会话的访问者从记住我的cookie构建一个新会话。