Magento 使用 302 重定向到基本 url,我如何让它使用 301

Posted

技术标签:

【中文标题】Magento 使用 302 重定向到基本 url,我如何让它使用 301【英文标题】:Magento redirects to base url using 302, how do I get it to use 301 【发布时间】:2012-09-01 06:46:51 【问题描述】:

我在 firebug 中注意到我的 magento 商店的非 www 版本使用 302 重定向到 www 版本。出于 SEO 目的,我希望它使用 301 重定向。

我如何尝试修复它

我去了系统 > 配置 > 常规 > Web > Url 选项,如果请求的 URL 不匹配,我的设置重定向到基本 URL 设置为是(只有 2 个选项:是或否)

重要提示

我正在使用 Magento v1.4.0.1 关于 URL 重写,我的 .htaccess 文件包含以下内容:

<IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine on
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%HTTP:Authorization]
    RewriteCond %REQUEST_URI !^/(media|skin|js)/
    RewriteCond %REQUEST_FILENAME !-f
    RewriteCond %REQUEST_FILENAME !-d
    RewriteCond %REQUEST_FILENAME !-l
    RewriteRule .* index.php [L]
</IfModule>

如何将重定向方法更改为301

【问题讨论】:

【参考方案1】:

尝试将最后一行更改为:

RewriteRule .* index.php [R=301,L]

请参阅Apache mod_rewrite RewriteRule Directive 关于标志的部分。

【讨论】:

我在尝试这种方法时收到了500 Internal Server Error 嗯,我删除了逗号后的space。不确定,这是否是重写 URL 中的语法错误。请重试。 哦,今天是星期五……应该是:“……RewriteRule 中的语法错误。” 这似乎不再适用于 1.6。相反,这可以直接在管理面板中设置,请参阅下面的答案。【参考方案2】:

从 1.6.2.0 开始,似乎可以在管理面板中选择重定向方法,无需修改 .htaccess

只需转到系统 -> 配置 -> 网站 -> 网址选项,然后将 自动重定向到基本 URL 设置为您的首选方法。

【讨论】:

问题是针对 magento 1.4.0.1 的,管理面板中没有选项。 当然,但这也是在搜索此问题的解决方案时出现在 Google 上的第一个结果之一,所以我想我会为通过 Google 找到此问题的任何人修改当前的解决方案。 :) 我发现这行不通。使用tools.seobook.com/server-header-checker,www。 example.com 显示为 302,但 example.com(减去 www.)显示为 301。

以上是关于Magento 使用 302 重定向到基本 url,我如何让它使用 301的主要内容,如果未能解决你的问题,请参考以下文章

302 url重定向到paypal主页

如何用 PHP 实现 302 重定向到其他 URL

302 登录重定向后被 IE 删除的 URL 片段

使用 php 获取 302 重定向 url

302 重定向到相对 URL 是有效的还是无效的?

302 重定向到相对 URL 是有效的还是无效的?