Questions tagged «session»

表示有关Magento中会话管理的问题。


1
Cookie不稳定的登录问题
这将是一个漫长的... 由于Cookie管理错误,我遇到了错误的登录失败错误。首先,我正在管理一家封闭式商店(B2B),客户必须先在其中登录才能看到目录。每个未注册的访问都将重定向到登录页面,但是有时,即使用户名和密码正确,客户也无法登录。我说“用户名”是因为我使用Diglin_Username扩展名和StoreRestricition插件来实现所需的行为。发生的是,有时我发现Magento留下了两组不同的Cookie,它们分别指向两个不同的域(例如,.www.abc.com和.abc.com)。 看完这篇文章早期会话实例从大艾伦风暴,并在浏览器中发现了可怕的PHPSESSID饼干我研究了一些深入的问题。 我发现是两方面的。首先,我在Mage_Core_Model_Session_Abstract_Varien类的函数start()中放置了一个Mage :: Log()调用,以记录Magento发起新会话的各种尝试,并注意到在第一次Mage :: run()调用preDispatch()之后Mage_Core_Controller_Front_Action类的,dispatch()和postDispatch()方法以通常的顺序被调用,但是似乎在postDispatch()执行时找不到由preDispatch()启动的会话,而是继续创建新会话。为此,我发现Magento 1.7.x和1.8.x版本之间的代码有所不同,我认为可以解决这个问题: Magento 1.7.x-Mage_Core_Model_Session_Abstract_Varien类: public function start($sessionName=null) { if (isset($_SESSION)) { return $this; } . . } Magento 1.8.x-Mage_Core_Model_Session_Abstract_Varien类: public function start($sessionName=null) { if (isset($_SESSION) && !$this->getSkipEmptySessionCheck()) { return $this; } . . } 我只是找不到在哪里设置SkipEmptySessionCheck属性,因此我最终以这种方式修补了Mage_Core_Controller_Front_Action类: public function postDispatch() { parent::postDispatch(); if (!$this->getFlag('', self::FLAG_NO_START_SESSION …
8 session  login  cookie 

2
使用Magento观察器功能将数据保存到会话
是否可以使用观察者功能将数据存储在Magento会话或注册表中,请执行以下操作: Mage::getSingleton('core/session')->setFoo('bar'); //Or 'customer/session', 'admin/session' 要么 Mage::register('foo', 'bar'); 我尝试添加 sesson_write_close(); 但是只能设法读取会话数据。

4
在具有不同域的商店之间共享会话
我在Magento装置上有三个网站,每个网站都有自己的域。 现在,由于Web浏览器的安全性,您无法访问其他域的Cookie,也无法访问会话。 我需要以某种方式能够在具有不同域的两个不同商店之间传递临时数据。 我的特定用例: 我正在使用GeoIP触发重定向到正确的国家/地区存储,但是我还需要能够手动覆盖它。现在,我遇到的问题是,我要使用Cookie在当前商店上手动覆盖,但是当我重定向到另一商店时,另一商店上没有Cookie,因此它回退并查找用户基于GeoIP的商店。但是,这随后在太存储之间创建了一个无限循环重定向。 这是通过找出要index.php与自定义模块一起使用的商店的网站代码,并使用正确的代码运行Magento来完成的。然后为我处理所有重定向等。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.