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'; |