Magento中的Double Set-Cookie,导致某些用户登录问题

问题描述:

我们有一个发布双Set-Cookie的Magento应用程序。以下是标题:Magento中的Double Set-Cookie,导致某些用户登录问题

HTTP/1.1 200 OK 
    Date: Wed, 18 Apr 2012 21:04:28 GMT 
    Server: Apache/2.2.3 (CentOS) 
    X-Powered-By: PHP/5.2.10 
    Set-Cookie: frontend=iti6c00cdm6cc79hfl1pl9pq52; expires=Wed, 18-Apr-2012 22:04:28 GMT; path=/ 
    Expires: Thu, 19 Nov 1981 08:52:00 GMT 
    Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 
    Pragma: no-cache 
    Set-Cookie: frontend=iti6c00cdm6cc79hfl1pl9pq52; expires=Wed, 18-Apr-2012 22:04:28 GMT; path=/; domain=**example.com** 
    Connection: close 
    Transfer-Encoding: chunked 
    Content-Type: text/html; charset=UTF-8 

在某些情况下,登录后第二个cookie设置为frontend = deleted。从我的阅读看来,两个前端= cookies不是一个“问题”,这是标准的Magento行为。从我读的规范中,第二个前端= cookie将覆盖第一个,如果他们的范围/规范是相同的。

任何想法,我们可以开始深入研究这个问题,看看为什么第二个前端= cookie不像第一个那样?

Magento版本是Ver。的企业版。 1.9.0.0

相关问题

+0

用户的行为是什么?重定向回登录?你使用Lightspeed还是其他缓存? – 2012-04-19 04:28:59

+0

我有一个类似的问题,其中cookie设置了两次。这似乎源于lightpeed.php在没有时创建cookie的事实。这发生在Magento框架之外,导致cookie设置两次。 – 2013-05-27 11:54:54

你想覆盖fronten饼干......如果是这样更好的尝试首先破坏的cookie,然后重新设置使用的Magento方法

法师:: getModel( '芯/饼干') - >集( '前端',$会话级> GETCUSTOMER() - >的getId(),100000 * 24 * 3600);

这种情况发生在会话验证检查失败 - 该cookie将被用“删除”清除值,并在过去的一个截止日期:

以下信息将通过Magento的用于验证会话进行检查:

  • 被连接到服务器
  • 的 “通过” 的客户机IP地址的HTTP报头
  • 的 “X-转发,对于” 页眉
  • “用户 - 代理”页眉

如果用于相同的会话ID的请求时,这些信息的变化之一(或更多),则会话将被Discarted,则cookie将被的方式所描述的清除和服务器将发送一个重定向头到主页。

您可以通过转到系统>配置>网页来更改要在Magento管理员面板中验证的信息。但你应该永远不会关闭所有检查,因为这将允许会话劫持。