And*_*ann 15 security cookies zend-framework privacy magento
出于数据安全和隐私的原因,我想知道为什么Magento在一个前端会话中使用两个cookie.
我所知道的是,其中一个正在进入Mage_Core_Model_Cookie::set(..)
,而另一个正在进入Zend_Session::expireSessionCookie()
,但我似乎无法弄清楚它们的用途.
我想不出有什么理由为什么人们需要为同一个域提供第二个cookie.
我打算把这个称为残留代码.Varien在很大程度上依赖于Zend Framework作为Magento的基础,因此很多类(例如Zend_Session)被用作Magento实现的父类.
标记为"前端"的Varien-set cookie为您访问的站点的部分命名(例如,如果您通过后端登录,则将有一个单独的"admin"cookie),而Zend cookie似乎是全局的.
另请注意,我能够删除Zend cookie而没有任何明显的有害影响(我的登录会话和购物车仍然可访问,并且cookie不会立即被替换).
我能够通过颠倒session_start()
调用的顺序和设置cookie的语句来解决这个问题Mage_Core_Model_Session_Abstract_Varien::start(..)
.这两行现在看起来像这样:
$cookie->set(session_name(), $this->getSessionId());
session_start();
Run Code Online (Sandbox Code Playgroud)
它现在只创建一个cookie,它似乎没有任何副作用.
BTW:我假设其他cookie不是在Zend_Session中创建的,而是两者都来自Mage_Core_Model_Session_Abstract_Varien::start(..)
.
归档时间: |
|
查看次数: |
5264 次 |
最近记录: |