当我登录到我的应用程序时,我得到一个值为 odm7krain1ms6bic7irfvpsj91 的 cookie。
只要我留在此选项卡上并浏览应用程序,我“通常”就可以了。如果我打开另一个选项卡并转到相同的 url,我将获得一个覆盖旧 cookie 的新 cookie,并且我的旧会话丢失。我怎样才能防止这种情况发生?
当我使用 XHR 请求时,我已经看到这种情况发生,这也有效地将我从当前会话中注销。
当我登录到我的应用程序时,我得到一个值为 odm7krain1ms6bic7irfvpsj91 的 cookie。
只要我留在此选项卡上并浏览应用程序,我“通常”就可以了。如果我打开另一个选项卡并转到相同的 url,我将获得一个覆盖旧 cookie 的新 cookie,并且我的旧会话丢失。我怎样才能防止这种情况发生?
当我使用 XHR 请求时,我已经看到这种情况发生,这也有效地将我从当前会话中注销。
尝试将以下内容添加到您的 core.php 文件中:
Configure::write('Session.checkAgent', false);
Configure::write('Session.ini',array('session.cookie_secure' => false, 'session.referer_check' => false));
这些参数应该强制 cookie 持续存在。这将设置 PHP 和 CakePHP 的设置以允许 cookie 通过 http 和 https 持久存在。
use $_SESSION["your session var"];