Jus*_*tin 9 php session cakephp
我有一个登录屏幕,我强迫ssl,所以像这样:https: //www.foobar.com/login 然后他们登录后,他们被移动到主页:https: //www.foobar.com/dashbaord
但是,我想在登录后将人员从SSL中移除(以节省CPU),因此在检查到他们实际登录https://www.foobar.com/dashbaord后我将其移至 http:// www.foobar.com/dashbaord
好吧,这总是似乎消灭了会话变量,因为当页面再次运行时,它确认它们已登录(如同所有页面一样)并且会话似乎不存在,因此它将它们移动到登录屏幕.
奇怪/结果:
我尝试了什么:
所以我觉得这与创建cookie但没有被阅读有关.
环境:1.Debian 2. Apache 2 3. Mysql 4 4. PHP 5 5. CakePHP 6.会话正在保存PHP默认,作为文件
我明白了这一点。Cake 在 SSL 连接下自动切换 session.cookie_secure ini 值,因此创建的 cookie 是一个安全 cookie,第二个页面无法识别。
解决方案,注释掉/cake/lib/session.php第420行ish:
ini_set('session.cookie_secure', 1);
(只需搜索即可找到它,因为我确信 # 行会随着版本的发布而改变。)
归档时间: |
|
查看次数: |
6843 次 |
最近记录: |