最近,我将我的 cakephp 网站从托管服务移到了另一个。该页面就像一个魅力,但现在我遇到了问题,我的会话随机下降。我在共享托管服务上,所以我将 cake 的会话默认值从 php 更改为 cake,现在我的会话保存到我的 tmp/sessions 文件夹中。(但它也不适用于 php)
遵循我与 Firebug 的会话方式:
- 当我登录页面时,我有一个 Sessionid,并且在 tmp/sessions 文件夹中我也有相应的 sess_{sessionid} 文件。
- 在某些页面(完全随机)上点击几下后,我的 sessionid 发生了变化,我被“注销”了。我登录的会话文件保留在目录中。
我现在在 core.php 中的会话设置:
Configure::write('Session', array(
'defaults' => 'cake'
));
我使用的是 2.3.8 版本的 Cake。
更新:
多亏了尼克,我终于找到了问题。我检查了 Cakephp 错误文件,发现我只是在访问包含不在服务器上的元素的页面时才被注销(例如缺少图片)。所以我去了 Firebug,并检查了 Net 选项卡上的内容。在新的主机服务上,我收到了 404 Not Found 响应和在响应中设置的新会话 ID,而在其他服务器上我测试了页面,我只是得到了 404 Not Found。如果我随机生成指向不存在文件的链接,例如 ( domain/test.jpg
),我会得到相同的结果。