在Magento,我目前在网站类别网址上没有斜线,即www.example.com/gifts
我想更改类别网址以使用尾部斜杠,例如www.example.com/gifts/
要做到这一点,我进入了管理部分,并在系统下编辑了SEO部分 - >配置 - > '目录' - >搜索引擎优化。
我在Category URL Suffix框中添加了一个'/'。
这是标准的,并且在重建索引之后,该站点确实显示了具有尾部斜杠的所有类别URL,例如, www.example.com/gifts /
问题是,当我点击www.example.com/gifts/(或现在的任何类别)时,我得到无限重定向循环。
Chrome说“错误310(net :: ERR_TOO_MANY_REDIRECTS):重定向太多了。”并且在网址上执行CURL -I -0会显示 301重定向到位置:/ gifts / 。
我已经检查了我的htaccess文件,并且肯定没有与斜杠或类别重定向相关的规则。
编辑:我也在htaccess上启用了日志记录,并且我不断获得如下行:
strip per-dir prefix: /var/www/blah/app-core/index.php -> index.php
这是正常的吗?
之前有没有人见过这个问题,或者根本不知道可能导致这个问题的原因?
它对我来说是一个完整的阻挡者,所以任何见解或帮助都会非常感激。
由于 保罗
答案 0 :(得分:2)
终于明白了 - 我认为它可能是Magento 1.4中的一个错误。
在Mage / Core / Model / Url / Rewrite.php文件中,请求路径为:
$requestPath = trim($request->getPathInfo(), '/');
所以我对'/ gifts /'的要求变成'礼物'。然后Magento尝试附加斜线,并且无限循环。
将trim()更改为 ltrim()时,它可以正常工作。即 $ requestPath = ltrim($ request-> getPathInfo(),'/');
现在'/ gifts /'是'gift /',而www.example.com/gifts/是200!
当然,现在只需要对Magento进行一次小调整就是一种痛苦......
答案 1 :(得分:0)
听起来你的网址重写表需要重建。登录您的管理区域并重新索引网址重写。