I understand that it is recommended to identify the lang/locale in the URL, for example example.com/de. I have some questions …
Is it okay to have a “default” language, so that visiting example.com renders English, as long as you perm redirect from example.com/en to prevent dupe content?
Is rel=”alternate” hreflang=”x-default” supposed to be used for the default, or only for “no language” (like a home page that just shows a list of languages or something … although those languages would have to translated as well I guess). I mean if your default language is “en”, would you have both rel=”alternate” hreflang=”x-default” and rel=”alternate” hreflang=”en”, or just one?
First of all, the country code (.de in your example) is not directly related to the language of the site. If it has any use at all, it is to indicate the country in which the domain operates (Germany in the case of .de). It’s true that, in many cases, there is a one-to-one correspondence between language and country, but that’s far from universally true. Many countries have multiple languages, and many languages apply in multiple countries. English is the most obvious example (you’ll find English language sites in many countries’ domains). And you’ll find virtually every conceivable language in a .com domain.
You mentioned a “default” language. It’s not clear what you mean by that, or what it has to do with redirects. In general, the language to show in your site is the language of the visitor. I’m not clear how doing a simple redirect from (in your example) a .com domain to a .de domain would achieve that.
The usual approach is to build a site in each of the languages you want to target (whether each site is a separate domain, or a sub-domain, or a sub-directory doesn’t make any difference for the purpose of this discussion). You then determine the visitor’s preferred language. You might do that by detecting the visitor’s country (by means of the IP address), and assuming that the language they want is that of the country. But, as I explained above, that’s not always a valid assumption. Or you might simply ask the user which language they prefer - perhaps by means of menu of available languages along the top of the page.
Once you have determined the language, you simply load the relevant page in that language. There’s no question of doing a redirect. You simply respond to the information that you have obtained from the visitor.
Finally, you talk about avoiding dupe content. Why is that relevant? Are you under the impression that, if you present a page in English and another one in German, that will somehow be considered “dupe content”, and that is somehow going to harm you in some way?
If I have misunderstood what you are asking, perhaps you could clarify your question.
Sorry for the late reply, I had an issue with my e-mail so I didn’t see the notification until now.
I know that the TLD doesn’t indicate the language (it’s .co.za here in South Africa, which means nothing, esp. since we have like 11 official languages :-)). But you can choose a “default” language for certain domains (.de = German, .cn = Chinese, .co.za = English, etc.).
What I mean by permanent redirects, is that if you have exactly the same content at x.com/de as x.de, it could be seen as duplicate content by search engines (I think). The same is true for serving English from x.com and x.com/en.
Once you have determined the language, you simply load the relevant page in that language. There’s no question of doing a redirect.
I don’t think it’s best practice to serve all languages from the same URL, hence my remark WRT identifying the lang/locale in the URL.
Good to hear from you again. No need to apologise for the delayed response. It happens to us all.
I still don’t understand what you mean when you say “you can choose a “default” language for certain domains”. Default for what? Who stipulates the default? And where do you make that choice?
You also say “I don’t think it’s best practice to serve all languages from the same URL”. Well, the URL identifies the specific page. So, clearly, you wouldn’t expect to have multiple languages on the same page. But I expect you mean the same domain rather than the same URL. Even so, I can’t see any harm in having multiple languages on the same domain. It’s perfectly normal to have, say, a sub-domain for English and another for German. Or perhaps a set of English pages in one directory off the domain, and some German pages in another. At least, that’s my opinion. If I’m wrong about that, feel explain why.
Of course, what you must have is proper navigation to enable the visitor find the correct languages - and not to dump him in another language without warning. But that’s got nothing to do with whether all the pages are on the same domain or not.