Multilingual Site and 301 redirection
-
Hey there awesome people of Moz
I have this site that has many languages in it.
The main language is English and my developer did the following
www.example.com ( is the main site ) which redirects with a 301 to www.example.com/en
if your geo location is supported by our languages then you will automatically be redirected to whatever language you have in your country but does the first language with is english have to 301 redirect to www.example.com/en ?
I thought that the right way is to just leave /en at the root file.
Thanks in advance
-
Hi Angelos. I agree. Having a 301 redirect that's always in place for going to /en is a bit redundant. If /en is the default option the default should be the root.
Other redirection should be handled via 302 to the various languages with all the proper href-lang and alternate attributes. Per Google, "For language/country selectors or auto-redirecting homepages, you should add an annotation for the hreflang value "x-default" as well: " Cheers!
-
Why use a 302?
-
For the other languages, it's going to be a conditional redirect, which is best handled by 302. Here it is from Google: http://googlewebmastercentral.blogspot.com/2014/05/creating-right-homepage-for-your.html :
A third scenario would be to automatically serve the appropriate HTML content to your users depending on their location and language settings. You will either do that by using server-side 302 redirects or by dynamically serving the right HTML content.
Remember to use x-default rel-alternate-hreflang annotation on the homepage / generic page even if the latter is a redirect page that is not accessible directly for users.
Note: Think about redirecting users for whom you do not have a specific version. For instance, French-speaking users on a website that has English, Spanish and Chinese versions. Show them the content that you consider the most appropriate.
Cheers!
-
Hi Angelos.
You have a great question and there are a few ways to take this.
What I would recommend is having your www.example.com be a starter page that doesn't have your "homepage" content, but rather, asks people to pick a language. You can detect it from their browser settings or from the IP (whatever you do, do NOT redirect anything based on IP address) and prompt them from there, or just list them all. That page would be your x-default in HREFLANG terms. It's the page that doesn't have a language. Then all of the others would be linked to from there. This would of course have English as /en.
You don't have to do that though. If you prefer, you can totally have www.example.com as all English, and just have the other languages under their subfolders. I would detect if you think the user prefers one of the other languages and use Javascript to popup a prompt to ask if they would prefer that language. If they say yes, then set a cookie and take them there. If not, it keeps them on the English URLs.
Just please don't redirect anyone based on IP address. This can cause problems down the line.
I hope that helps.