如何根据用户区域设置redirect到给定页面?

有没有办法根据浏览器语言环境redirect用户?

例如,我想redirect到一个名为index.en.html的页面,所有没有设置为法语的浏览器语言环境的用户。

我可以用Apache和.htaccess来做这个吗?

那么看看我find的MultiViews选项的文档。

Options MultiViews AddLanguage fr .fr AddLanguage en .en <IfModule mod_negotiation.c> LanguagePriority fr en </IfModule> 

您应该能够为frfr-fr 匹配环境variables%{HTTP_ACCEPT_LANGUAGE}或HTTP头Accept-Language (使用%{HTTP:Accept-Language} )。

您可以使用mod_rewrite并testingAccept-Language头。 例如:

 RewriteCond %{HTTP:Accept-Language} en-us RewriteRule ^(.*)$ /en-us/$1 [L] 

更好的是,看看mod_negotiation

http://httpd.apache.org/docs/2.2/content-negotiation.html