CakePHP 无法写入会话

CakePHP cannot write to session

当我尝试向会话写入任何内容时,出现错误调用成员函数写入 null()。我已经检查了我的 config.php 并且存储缓存的目录 (/cake/app/temp) 是可写的。我将其更改为 PHP 设置(将缓存写入 /tmp),但这也不起作用。

我可以在标准 PHP 中写入 $_SESSION 变量,但 CakePHP 似乎无法做到这一点,我不知道为什么。

我按照此处的步骤操作,但它们也不起作用: CakePHP 2.1 $this->Session->write is not working

我假设您确定使用了文件缓存。

请检查 /cake/app/tmp/cache 和所有子目录是否可由用户和您的服务器所在的组写入 运行。

如果您在开发环境中,也请尝试将缓存文件夹中的权限设置为 777。

将以下代码添加到您的 bootstrap 文件中:

Cache::config(
    'default', array(
        'engine'   => 'File',
        'duration' => '+1 hours',
    )
);

希望对您有所帮助。