在我的CakePHP应用程序中,我有一个名为’my_cookie’的会话cookie,它包含一些随机值’QSD5111AS552DNJK’.
我发现cookie的值是相同的(登录前和登录后也是如此).如果我想在登录后更改cookie值,我必须遵循的步骤是什么.
我的代码在core.PHP文件中
Configure::write('Session',array( 'defaults' => 'PHP','cookie' => 'my_cookie','timeout' => 4000 ));
请帮助我解决此问题,以获得更多说明.
解决方法
我想你想要做的是阻止会话固定,在这种情况下应该注意CakePHP已经开箱即用.使用
authentication component时,会在将经过身份验证的用户数据写入其中之前以及在注销时删除用户数据之后续订会话.
看到
> Source > AuthComponent::login()
> Source > AuthComponent::logout()
为了完整起见,您可以随时通过会话组件手动续订会话,以防您在控制器中
$this->Session->renew();
或者直接使用CakeSession类
App::uses('CakeSession','Model/Datasource'); CakeSession::renew();