Session Magento用户会话混淆

Session Magento用户会话混淆,session,caching,magento,login,Session,Caching,Magento,Login,我想知道是否有人能帮我解决以下问题。在我们的Magento站点上,企业版1.10.1.1,用户可以登录,并显示另一个人的姓名。然后,如果你点击另一个链接,它可能会回到你的名字。用户会话显然被混淆了。显然,这是一个完整的页面缓存问题,因为我们的完整页面缓存经常是无效的,如果我们关闭它,用户会话将不再混合。然而,关闭它会大大降低网站的速度。将会话从db存储切换到文件存储(反之亦然)并没有解决该问题。有人知道问题可能是什么或如何解决吗 非常感谢 Brenda这可能取决于缓存问题。尝试关闭缓存(转到管理

我想知道是否有人能帮我解决以下问题。在我们的Magento站点上,企业版1.10.1.1,用户可以登录,并显示另一个人的姓名。然后,如果你点击另一个链接,它可能会回到你的名字。用户会话显然被混淆了。显然,这是一个完整的页面缓存问题,因为我们的完整页面缓存经常是无效的,如果我们关闭它,用户会话将不再混合。然而,关闭它会大大降低网站的速度。将会话从db存储切换到文件存储(反之亦然)并没有解决该问题。有人知道问题可能是什么或如何解决吗

非常感谢


Brenda

这可能取决于缓存问题。尝试关闭缓存(转到管理、系统、缓存管理并禁用所有缓存)

如果问题消失-您需要检查缓存配置。如果没有-您确实有会话问题。
顺便说一句,您在哪里存储会话(文件或DB或memcached?

您应该向Magento查询补丁。我有一个类似的问题,礼券字段信息在会话之间混淆。他们提供了一个解决问题的补丁。

我找到了与
Enterprise\u PageCache\u Model\u Processor\u Default
类相关的原因,我的方法是在
config.xml
中禁用它,编辑
src\app\code\core\Enterprise\PageCache\etc\config.xml

<requests>
<!--  <cms>enterprise_pagecache/processor_default</cms>-->
</requests>


此问题可能是由于Magento在Varnish之类的反向代理缓存之后无法设置正确的会话参数造成的(我打赌是这样的)。无论何时使用中间caché系统,都必须确保使用Apache中的apropiate模块将http头的X_FORWARDED_转发给Magento,比如mod_rpaf,否则,Magento将看到来自同一IP的所有请求,它将无法确定正确的会话隔离,因为它将认为所有请求都来自同一个客户端。

在header.phtml文件中,您应该使用它来打印用户名

<?php echo $this->getChildHtml('welcome') ?>

然后,如果你想自定义你的消息,你可以覆盖“Mage\u Page\u block\u Html\u Welcome”块


使用“完整页面缓存”时会发生这种情况,因为默认情况下,magento会排除完整页面缓存的某些块,而块“欢迎”就是其中之一。如果您使用的是自定义代码和消息,用户名也将被缓存,其他用户将在此部分看到不同的用户名。

用户在哪里看到他的名字?可能是某个扩展添加的块没有为该块执行打孔操作?用户在Magento的标题中看到他的名字,欢迎消息就在这里。我现在正在查打孔。非常感谢你。希望我能关掉那个街区的FPC。谢谢。首先会话存储在数据库中,然后我们切换到文件存储。这两种情况都有问题。如果我们关闭FPC,那么问题就消失了,但它会减慢网站的速度。我刚刚听说过打孔,我会看看是否可以关闭该块(以及其他块)的FPC。你不能关闭特定块的FPC。区块必须实现穿孔,以便FPC以正确的方式缓存。嗨,安德鲁,非常感谢你让我知道。我一定会的。祝你度过愉快的一天。什么是补丁?还是区块?你能告诉我吗?基本上你关闭了整页缓存,这是EE中一个主要的性能增强。您可以在管理缓存控件中将其关闭。