2011-11-22 89 views
0

我正在尝试将文章从我的博客重定向到他们的英文版本。Apache和RewriteRule优先级

基本上,一篇文章/我的/文章是法文。但是您可以在/ en/my/article上访问英文版本。如果用户不是法国人,我需要重定向到此网址。

我做了这个规则,我的.htaccess:

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteCond %{HTTP:Accept-Language} !^fr [NC] 
RewriteCond %{REQUEST_URI} !^/en [NC] 
RewriteRule ^(.*)$ /en/$1 [L,R] 
</IfModule> 

当我要/我的/文章实际上,我重定向到/en/index.php。 我想这是因为WordPress的默认重定向:

<IfModule mod_rewrite.c> 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 

我怎样才能使这项工作?

+0

这些规则的顺序是什么? –

+0

还,尝试改变[L,R]刚刚[R] –

+0

我把这个规则在我的.htaccess –

回答

0

更新WordPress数据库中的wp_options表。在wp_options中搜索“/ my /”,并用“/ en /”替换它的所有实例。

+0

,这是没有意义的。 –

+0

基本上,WordPress认为你的网站仍然位于wordpress/my /。将其更改为wordpress/en /(如果您尚未)WordPRess识别新URL。 –