.htaccess语言重定向到虚拟文件夹

时间:2015-04-15 16:22:04

标签: .htaccess redirect http-accept-language

如果未检测到特定语言,我会尝试重定向到虚拟文件夹,但这不起作用:

RewriteCond %{HTTP:Accept-Language} ^!dk [NC] #if language isn't "dk"
RewriteRule ^$ /en/ [L,R=301]                 # rewrite to folder
RewriteRule ^en/(.*)$ /$1 [L,NC]              # virtual folder

我需要什么:

如果某人使用的语言不是" dk"访问url.to/page.html他应该被重定向到url.to/en/page.html,否则他应该留在根文件夹(url.to/page.html)。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

尝试在第一条规则中添加其他条件:

RewriteCond %{HTTP:Accept-Language} ^!dk [NC]
RewriteCond %{THE_REQUEST} \ /+(?!en/).*
RewriteRule ^(.*)$ /en/$1 [L,R=301]
RewriteRule ^en/(.*)$ /$1 [L,NC]