在Magento 1.8.1中重定向/ en(或/ default)为root

时间:2014-04-30 23:46:56

标签: .htaccess magento url redirect

编辑:

我在Magento有一个多语言网站,有4种语言代码:en,de,fr,es。默认语言是en,因此URL是myexample.com/en,但问题是由于索引问题,必须将301s重定向到myexample.com /

只是为了澄清:我的Magento安装不在的子目录中,它位于服务器的根目录下。

我一直在为.htaccess文件尝试不同的组合,其中一种有效但不完全,因为它只将myexample.com/en重定向到myexample.com,我还需要重定向所有的CMS页面,产品和类别/ en到/

代码是:

RewriteRule (^[a-z0-9\-]+)\.html /en/$1.html [R=301,L]
RewriteRule (^catalog/.*) /en/$1.html [R=301,L]
RewriteRule en/$ /$1 [R=301,L]

所以,总结一下,我想要实现的是:

  1. myexample.com/en重定向到myexample.com,因为它是默认语言。
  2. / en中的所有内容,CMS页面,产品和类别都被重定向到/,因此,而不是myexample.com/en/faqs,而不是myexample.com/en/shop,而不是myexample.com/en/shop是myexample.com/shop。
  3. 所有其他语言代码必须保持不变,因此myexample.com/es,myexample.com/de和myexample.com/fr及其所有相关的CMS页面,产品和类别都将保持不变。
  4. 关于它有什么问题的任何想法?

    感谢。

1 个答案:

答案 0 :(得分:0)

尝试下面的

RewriteCond %{THE_REQUEST} /en/ [NC]
    RewriteRule ^en/ /%{REQUEST_URI} [NC,R=301,L]

检查link