up vote 1 down vote favorite
1
share [g+] share [fb]

Is there a way to redirect an user depending on is browser locale ?

For instance, I'd like to redirect to a page called index.en.html all users who doesn't have their browser locale set to French.

Could I do this with Apache and .htaccess ?

link|improve this question

56% accept rate
feedback

3 Answers

Well looking at the documentation I found the MultiViews option.

Options MultiViews
AddLanguage fr .fr
AddLanguage en .en
<IfModule mod_negotiation.c>
     LanguagePriority fr en
</IfModule>
link|improve this answer
feedback

You can use mod_rewrite and test for the Accept-Language header. For example:

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

Better yet, take a look at mod_negotiation

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

link|improve this answer
feedback

You should be able to match the environment variable %{HTTP_ACCEPT_LANGUAGE} or the HTTP header Accept-Language (with %{HTTP:Accept-Language}) for fr or fr-fr.

link|improve this answer
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.