再会。
我有一个运行 2 个网站的多网站/商店 Magento 安装,并且想知道如何让 Magento 的共享会话/购物车在 Safari 中同一商店的不同网站之间工作。
Magento 如何处理会话的简介
当从一个购物车共享网站切换到另一个时,magento 会将 SID(会话 ID)附加到登录页面的 URL。从该页面导航后,会话仍应被记住,但由于不再需要而从地址栏中删除。
共享会话 URL 示例 从 www.website1.com 传输将导致 www.website2.com/?SID=[encrypted key] 类型的 URL 仅用于登录页面。
问题
从 www.website1.com 切换到 www.website2.com 时,会话 ID 在 Safari 中丢失。换句话说,SID 出现在登录页面的地址栏上,但实际上并未加载/保存会话。购物车中没有商品,如果用户在 website1 上登录,则用户将被注销。
Safari 版本是 5.2.1,在 Windows 7 上。移动 Android 手机与 Safari 完全相同,运行 Dolphin 9.3.2。
会话传输在 2013 年 4 月的最新浏览器中完美运行:Windows 7 上的 Chrome、IE 和 FireFox 浏览器。
如果我手动将 SID 添加到地址栏中并刷新,我会得到会话。
迄今为止研究的解决方案
http://www.magentocommerce.com/boards/viewthread/17924/
http://www.magentocommerce.com/boards/viewthread/36473/
(无法发布更多链接,但我也已阅读线程 60749)
迄今为止尝试的解决方案没有效果
- 关闭 Persistent Cart(测试后撤消)
- 从数据库中删除重复的电子邮件地址
- 将“共享客户帐户”设置为全局
- 将“Cookie 域”设置为 [website1].com 或 [website2].com(测试后撤消)
- 关闭“在前端使用安全 URL”(测试后撤消)
- 为 cookie 关闭“仅 HTTP”(测试后取消)
- 关闭 OneStepCheckout,购物车仍然不能仅在 Safari 中传输(测试后撤消)
- 将 Unsecure url 设置为“https”(测试后撤消)
- 清除缓存和会话文件
- 清除 Magento 和系统缓存
- 重新启动 Apache
- 重新同步服务器时间
- 打开“验证 HTTP_USER_AGENT”(测试后取消)
- 将会话 ID 强制设置为从 [website1] 传递的任何内容,导致错误(测试后撤消)
- 登录和注销时测试,相同的错误结果。已登录的用户已注销
任何帮助将不胜感激。