|
I'm about to localize IngoRammer.com to provide a German version in addition to the existing English one. I therefore have to make the hard decision about which localization technique I should use. Essentially, I ended up with the following possibilities:
- a) Use the Accept-Language HTTP header
- b) Use a) and all the user to override this setting with a custom cookie
- c) Use URLs like http://www.ingorammer.com/en/something.html vs. http://www.ingorammer.com/de/something.html
- d) Use parameters like http://www.ingorammer.com/something.html?lang=EN vs. http://www.ingorammer.com/something.html?lang=DE
a) and b) will allow me to re-use all incoming links to present the visitor with the correct language choice. It will however prevent google from indexing any non-English content.
c) and d) [which are possible because of my http handler framework which intercepts all requests to .HTML files to post-process them before sending the result to the user] will allow google to index the German language pages but will make it necessary to also post-process all internal links while parsing the HTML. I'd really love to have internal links which only point to a non-language dependent location, which are switched dynamically based on the user's chosen language. The page's representation would in this case contain an statement like <a href="/consulting/"> which would have to be replaced on the fly by something like <a href="/consulting/?lang=DE"> when presenting German language content.
I guess I'll go for option b).
|