有人可以解释一下原因吗?___ SID = U出现在我网站上的一些magento网址而不是其他网站上?
我认为它与会话有关,但并不完全清楚.而且,更令人困惑的是,它只出现在一些网址而不是其他网址中.
我不需要知道如何删除它,因为我知道管理区域中的设置.我真的想要解释它是什么,它的目的是什么以及为什么它会在某些页面而不是其他页面上显示.我不知道如何完全理解发生了什么,而是盲目地遵循一些如何删除它的建议.
Vin*_*nai 35
除了Brendan的回答之外,它还___SID=U在缓存中用作会话ID的占位符.它被Mage_Core_Model_Url::sessionUrlVar()反过来调用Mage_Core_Model_Url::sessionVarCallback().调用这些方法Mage_Core_Block_Abstract::_afterCacheUrl(),这意味着在块输出中找到的任何URL都将包含正确的会话ID(如果需要).
因此,为了摆脱你自己的代码中的参数,"正确的方法"使用这个:
$url = Mage::getUrl('some/magento/route'); // might append ___SID parameter
$url = Mage::getModel('core/url')->sessionUrlVar($url); // process ___SID
Run Code Online (Sandbox Code Playgroud)
如果字符串仍然显示在呈现的页面中是一个错误.您使用的是自定义缓存模块,还是使用非标准方式生成URL?
Bre*_*ski 11
SID是"会话ID".Magento使用它来跟踪用户在同一Magento安装中的活动.通常,Magento从一个安装(数据库)为一个网站和一个商店提供支持.
Magento可以通过一个安装为多个商店提供多个商店.SID允许用户在浏览这些网站/商店时保持登录状态.
我认为如果您启用了该功能,则在访问目录URL时会发送SID,以便Magento可以使用当前网站/商店的用户位置/状态更新会话.
如果您没有运行多网站或多商店环境,则可以安全地禁用前端的SID.
| 归档时间: |
|
| 查看次数: |
27728 次 |
| 最近记录: |