Apache 301重定向重写/到/ en并保持/ fr到/ fr保留所有传递的变量

时间:2014-11-01 05:11:26

标签: wordpress apache mod-rewrite redirect multilingual

我有一个双语Wordpress网站,我正在更改域名,以下重定向效果很好。

RewriteEngine on
RewriteCond %{HTTP_HOST} !^newdomain\.com$
RewriteRule ^ http://newdomain.com%{REQUEST_URI} [L,R=301]

问题是我想要

olddomain.com/one/two/three 

重定向到

newdomain.com/en/one/two/three 

但请保持

olddomain.com/fr/one/two/three

重定向到

newdomain.com/fr/one/two/three

1 个答案:

答案 0 :(得分:1)

您可以将此规则放在主WP .htaccess的RewriteBase行下方:

RewriteCond %{HTTP_HOST} ^(www\.)?domain\.com$ [NC]
RewriteRule ^en/ http://newdomain.com%{REQUEST_URI} [L,NE,R=301]

RewriteCond %{HTTP_HOST} ^(www\.)?domain\.com$ [NC]
RewriteRule !^(en|fr)/ http://newdomain.com/fr%{REQUEST_URI} [L,NE,R=301]