Session Magento多域签出问题

Session Magento多域签出问题,session,magento,cookies,session-cookies,Session,Magento,Cookies,Session Cookies,我安装了一个Magento,多个域(domain1.com、domain2.com)共享一个签出URL(checkoutdomain.com)。问题是,当我进入购物车并进入新域时,我会收到“购物车中没有商品”错误。由于某些原因,会话/cookie没有传递到签出域 我正在运行Magento 1.7。我已转到system/config/web/sessioncookie管理,并在cookie域字段中尝试了以下所有值: .domain.com .domain.com/ http://www.domai

我安装了一个Magento,多个域(domain1.com、domain2.com)共享一个签出URL(checkoutdomain.com)。问题是,当我进入购物车并进入新域时,我会收到“购物车中没有商品”错误。由于某些原因,会话/cookie没有传递到签出域

我正在运行Magento 1.7。我已转到
system/config/web/session
cookie管理,并在cookie域字段中尝试了以下所有值:

.domain.com
.domain.com/
http://www.domain.com
http://www.domain.com
这里应该有别的东西吗

我还将cookie路径字段设置为空(默认),并将use http only设置为yes(默认)


我不知道这里还能做什么。

我要检查的第一个地方是你的店铺设置。请记住,您不能轻松地跨多个网站共享购物车,只能共享商店和商店视图(使用Magento的术语)

假设没有问题,下一个问题是确保所有域使用相同的PHP会话。您可以通过告诉他们使用相同的会话id来实现这一点。Cookie是一个理想的解决方案,但Cookie不能跨完全不同的域工作


这意味着我们必须明确地告诉会话我们希望加载的
checkoutdomain.com
。通过将会话id作为
SID
GET参数传递,可以强制Magento加载特定会话。您可以通过调用
Mage::getModel(“核心/会话”)->getEncryptedSessionId()来获取此值

您应该在系统配置中将
web/session/use_frontend_sid
设置为
yes

您还应该记住,不指定cookie路径将使其默认为设置cookie时打开的当前路径。您应该将其默认设置为“/”,以确保为网站全局设置。

谢谢,我没有意识到我的网站必须设置为商店而不是网站才能实现这一点。在重新配置商店后,一切都运转良好