Я решил принять это как вопрос в своем собственном праве, так как он генерировал столько дискуссий в комментариях исходного сообщения.
Интересно видеть, что многие люди на SO (которые являются разработчиками) просто не получают локализации. Heres мой взять на себя, как он должен работать:
Во всех браузерах, на которые я смотрел (и для разработчиков .NET там тоже), когда вы смотрите на предпочтения пользовательской культуры, он находится в следующем формате: язык культура.
Итак, мы имеем:
- en-GB - Английский язык - культура Великобритании
- en-US - Английский язык - культура США
- ru - Английский язык - Инвариантная культура.
- fr-FR - французский язык - французская культура
- fr-CH - французский язык - швейцарская культура
- de-CH - немецкий язык - швейцарская культура
- de-DE - немецкий язык - немецкая культура
См. MSDN для полного списка, поддерживаемого платформой .NET.
Когда я перехожу на сайт, он знает, что я хочу, чтобы английский язык был частью en, и он знает, что я заинтересован в том, чтобы он был наклонён в Великобританию (форматирование чисел, форматирование даты). Поэтому, когда я перехожу на google.com, и он переводит меня на google.de(из-за моего IP-адреса), это прекрасно, если google.de отображает все на мне по-английски, но совершенно неправильно, так как google.de находится на немецком языке. Я мало контролирую свой IP-адрес, но полностью контролирую настройки языка и культуры. Если вас заинтересовала новая поисковая система Microsoft (bing.com), она правильно обрабатывает. Пусть надеется, что Microsoft научится выполнять поиск, а также Google или Google может научиться локализовать, а также Microsoft;)
MSDN есть еще одна хорошая статья здесь для получения дополнительной информации
Итак, каковы ваши рекомендации относительно того, как сайты должны иметь дело с локализациями?