这里有类似的简单但未回答的问题:cakephp 会话 tmp/sessions 中没有新文件 https://stackoverflow.com/questions/24733151/cakephp-session-no-new-files-in-tmp-sessions
我在本地 WAMP 服务器上运行 Cake 2.4.x。我的 phpinfo() 显示 session.save_path 的c:/wamp/tmp。我已经验证了这一点,登录会话当前在 c:/wamp/tmp/ 中创建了会话文件。
我正在尝试转换为使用蛋糕会话处理。根据http://book.cakephp.org/2.0/en/development/sessions.html http://book.cakephp.org/2.0/en/development/sessions.html,使用“蛋糕”会话处理 -将会话保存为 app/tmp/sessions 中的文件。当主机不允许您在自己的主目录之外写入时,这是一个不错的选择。
所以我已将此代码放入我的 Core.php 中
Configure::write('Session', array(
'defaults' => 'cake'
));
问题是我仍然没有看到任何内容出现在我的 app/tmp/sessions 目录下,但我仍然看到在我的 c:\wamp\tmp 目录中创建会话文件。
问题:
我如何让 Cakephp 开始将会话写入应用程序目录?
干杯
凯文
在重新开始创建 2 个 cakephp 教程博客并并排测试它们以进行可怕的会话共享后,我意识到以下代码可以在相应的 cakephp 安装 app/tmp/sessions 文件夹中创建会话文件。
Configure::write('Session', array(
'defaults' => 'cake'
));
但由于它不适用于我现有的应用程序,我只能得出结论,我现有的应用程序是问题所在。
查看所有安装上的 phpinfo() 还告诉我,cakeblog 教程成功地覆盖了 php.ini 中的 session.save_path 值,而我的实际 cakephp 应用程序的本地 session.save_path 主 session.save_path 值具有相同的值(来自php.ini)。
这意味着我使用蛋糕会话的 core.php 设置在某个地方被覆盖了!
经过几个小时的调查,我找到了罪魁祸首。
我的 app/webroot/index.php 中有一行代码,是我几个月前插入的。
session_start();
我插入的这个 session_start() 基本上是用原始的 php.ini 设置覆盖了我的蛋糕 core.php 设置。我放在那里的这个“session_start()”最初是为了克服我在使用 IE 和 Bluehost.com 作为主机时遇到的登录循环错误。我已经评论了该行,会话文件开始出现在 app/tmp/sessions 文件夹中。
哈利路亚!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)