我正在改变Drupal设置中的语言特定路径,从url get参数(?language = en)到url prefix / en /。我需要检查请求的URL是否包含语言参数(?language = en),然后重定向它。
我有4种语言(da,en,de,pl)应该使用这种结构重定向:
www.example.com/blog?language=da => www.example.com/blog (This is the default language)
www.example.com/blog?language=en => www.example.com/en/blog
www.example.com/blog?language=de => www.example.com/de/blog
www.example.com/blog??language=pl => www.example.com/pl/blog
答案 0 :(得分:2)
可以使用以下条件:
RewriteCond %{QUERY_STRING} ^language=da$
RewriteRule ^/blog /blog/? [R=301,L]
RewriteCond %{QUERY_STRING} ^language=(en|de|pl)$
RewriteRule ^/blog /%1/blog/? [R=301,L]
答案 1 :(得分:1)
RewriteCond %{QUERY_STRING} language=en
RewriteRule ^/blog /en/blog/? [R=301]
RewriteCond %{QUERY_STRING} language=de
RewriteRule ^/blog /de/blog/? [R=301]
RewriteCond %{QUERY_STRING} language=pl
RewriteRule ^/blog /pl/blog/? [R=301]