关于 codeigniter:为了使用 Session 类,您需要在配置文件中设置加密密钥

In order to use the Session class you are required to set an encryption key in your config file

我正在将 codeigniter 从 1.7.2 升级到 2.0.1。

一切似乎都很好,除了我得到

In order to use the Session class you are required to set an encryption key in your config file.

造成这种情况的 2.0.0/2.0.1 的变化是什么?

我需要做出什么改变来解决这个问题。

做出上述改变会破坏什么吗?


ohai 再次 https://www.codeigniter.com/user_guide/libraries/encryption.html :D

他们要求加密密钥的原因是安全(显然)

注意:即使您没有使用加密会话,您也必须在配置文件中设置一个加密密钥,用于帮助防止会话数据被操纵。 - 来源:https://www.codeigniter.com/user_guide/libraries/sessions.html

此修改不会破坏您的代码。但是从 1.7.2 更新到 2.0.1 时要小心。我建议你备份你的代码:)

顺便说一句,他们在 2.0.0 版本的 CI 中添加了这项安全改进。我不知道他们为什么没有在升级指南中提到它:(


将此添加到您的 config.php

1
$config['encryption_key'] = 'your_encryption_key_here';


./application/config/config.php

加密密钥
---------------------

如果您使用 Encryption 类或 Session 类,您
必须设置一个加密密钥。有关信息,请参阅用户指南。

1
$config['encryption_key'] = '02527-269-2503946-70386-34730519';