有没有办法根据浏览器语言环境重定向用户?
例如,我想将所有未将浏览器语言环境设置为法语的用户重定向到名为 index.en.html 的页面。
我可以使用 Apache 和 .htaccess 来做到这一点吗?
答案1
通过查看文档我找到了 MultiViews 选项。
Options MultiViews
AddLanguage fr .fr
AddLanguage en .en
<IfModule mod_negotiation.c>
LanguagePriority fr en
</IfModule>
答案2
你应该能够匹配环境变量%{HTTP_ACCEPT_LANGUAGE}
或 HTTP 标头Accept-Language
(带有%{HTTP:Accept-Language}
)用于fr
或fr-fr
。
答案3
您可以使用mod_rewrite
并测试标Accept-Language
头。例如:
RewriteCond %{HTTP:Accept-Language} en-us
RewriteRule ^(.*)$ /en-us/$1 [L]
更好的是,看看mod_negotiation