用户登录magento(不检查“记住我”选项)并关闭浏览器而不从magento系统注销。现在,如果用户再次打开浏览器窗口,则应该将其注销。我怎么用magento做到这一点?
答案 0 :(得分:0)
在PHP中,
session_set_cookie_params(0);
通常,cookie生存期为“0”表示“浏览器退出时”。
您可以将cookie生命周期设置为magento后端,但请记住,这也会影响管理面板的会话生命周期。因此,如果您登录管理面板并且暂时不使用它,您将在Cookie生存期到期后自动注销。
前端(会话)Cookie
在Magento中,'frontend'cookie在当前行动发送之前就已设置好。
查看Mage_Core_Controller_Varien_Action::preDispatch()
。
会话开始
调查preDispatch():
Mage::getSingleton('core/session', array('name' => $namespace))->start();
哪个(如果没有被覆盖)最终映射到
Mage_Core_Model_Session_Abstract_Varien::start()
这是所有标准会话初始化并使用session_set_cookie_params
包含Cookie设置的地方。
重温
此外,您需要注意构造函数在实例化核心会话时调用revalidateCookie()
:
Mage_Core_Model_Session_Abstract_Varien::init()