2011-01-21 64 views
2

我知道codeigniter将它的会话存储为一个cookie,从阅读我的理解是有点不安全。所以...我打算启用数据库存储会话,我相信:codeigniter会话和饼干

a)更安全吗?
b)允许您存储比cookie提供的4kb限制更多的数据吗?

但是在我想这会比较慢的系统检索,例如,在我的应用我经常要查询会话数据,以确定用户是否登录不利的一面。

是为在数据库中存储会话的好主意,还是会大大减慢我的应用程序的速度?

有关会议和cookie的任何其他想法或建议将不胜感激。

回答

5

那么,这是真的和假的。 CodeIgniter可以配置为将其数据存储在数据库中,但可以在将Cookie存储到客户端之前对其进行加密。它也是MD5的cookies内容,以确保数据的完整性(基本上如果Cookie的MD5不正确,那么它被拒绝)。因此,虽然默认情况下可以编辑cookie,但这样做比讨厌更麻烦。

就个人而言,我通常更喜欢将会话级别数据存储在$ _SESSION中,并修改了会话对象以允许我这样做。我也让PHPSESSID变量更加复杂。

至于你的问题,“把会话存储在数据库中是个好主意”,那要看你的数据库有多快以及你的内存需求是多少。它可能会减慢速度,或者可能会根据配置等来加快速度。