0

我需要根据他们的语言在主页中重定向我的用户。我想我必须使用 RewriteCond %{HTTP:Accept-Language} ,但我无法弄清楚。我的最后一次尝试:

重写引擎开启
RewriteCond %{HTTP:Accept-Language} ^es [NC]
RewriteRule .* http://mydomain.com [R,L]


重写引擎开启
RewriteCond %{HTTP:Accept-Language} ^en [NC]
RewriteRule .* http://en.mydomain.com [R,L]

重写引擎开启
RewriteCond %{HTTP:Accept-Language} ^fr [NC]
RewriteRule .* http://fr.mydomain.com [R,L]

但这会产生一个无限循环。

文件夹结构

  • htdocs/index.php -> mydomain.com
  • htdocs/en/index.php -> en.mydomain.com
  • htdocs/fr/index.php -> fr.mydomain.com
4

1 回答 1

0

您需要确保 HOST 尚未指向正确的位置:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^mydomain.com$ [NC]
RewriteCond %{HTTP:Accept-Language} ^es [NC]
RewriteRule .* http://mydomain.com [R,L]

RewriteCond %{HTTP_HOST} !^en.mydomain.com$ [NC]
RewriteCond %{HTTP:Accept-Language} ^en [NC]
RewriteRule .* http://en.mydomain.com [R,L]

RewriteCond %{HTTP_HOST} !^fr.mydomain.com$ [NC]
RewriteCond %{HTTP:Accept-Language} ^fr [NC]
RewriteRule .* http://fr.mydomain.com [R,L]
于 2013-05-12T20:09:36.743 回答