[identity profile] ifeelgood.livejournal.com posting in [community profile] useful_faq
Друзья, вопрос:
У меня сайт на русском языке.
Делаю англ. версию.
Как сделать / отправьте, что почитать по этому узкому вопросику:
нужно, чтобы посетитель, у которого основной язык -
русский/кириллица в раскладке - автоматом попадал на русскую версию сайта.
А английский / нерусский посетитель - автоматом попадал на английскую версию.
Это ведь как-то очень просто. (charset ??)
не хочу создавать велосипед, а место, где велосипеды хранятся - начисто отшибло.

Гугл да, но приятнее когда человек.
всем спасибо.

Date: 2011-07-13 08:26 pm (UTC)
From: [identity profile] spamsink.livejournal.com
Если кто у себя в предпочтениях браузера задал языки, то их список будет виден серверу в виде переменной окружения, например, так:

HTTP_ACCEPT_LANGUAGE=en-us,en;q=0.7,ru;q=0.3

Date: 2011-07-13 08:55 pm (UTC)
From: [identity profile] yaker.livejournal.com
Именно. А раскладка, кодировка и иже с ними геотаргетинг — от лукавого, потому что или недоступно, или ненадежно.

Ну и, конечно, давать выбрать руками и гадить в куки.

Date: 2011-07-13 08:27 pm (UTC)
From: [identity profile] spamsink.livejournal.com
А с charset много каши не сваришь. Ну стоит

HTTP_ACCEPT_CHARSET=UTF-8,*

и какой язык показывать?

Date: 2011-07-14 02:52 am (UTC)
From: [identity profile] savelich.livejournal.com
Country Hawk
http://www.cyscape.com/products/chawk/
detects language by country of the requesting IP.

Date: 2011-07-14 06:28 am (UTC)
From: [identity profile] archaicos.livejournal.com
So, what language should it show for the US, for example? There's no official language in the US and there're many languages spoken, not just English. Spanish, German, Italian, French, Russian, Ukrainian, to name just a few.

Date: 2011-07-14 01:55 pm (UTC)
From: [identity profile] savelich.livejournal.com
You can show whatever language you want to whatever country you want. If it is general purpose site you show English. If it is a site about russians in New York for Russians in NY you can show Russian.

Date: 2011-07-14 06:43 am (UTC)
From: [identity profile] karpion.livejournal.com
Какой сервер? Выделенный, виртуальный? Или просто сайт на хостинге?

charset тут не поможет - он лишь указывает кодировку русских (или не русски) букв. Т.е. выбор между Win1251, DOS-cp866, KOI8-r с возможностью автоматической перекодировки (тогда как автоматический перевод - задача пока не решённая).

Так что ключевое слово - language (или lang).

Date: 2011-07-14 03:02 pm (UTC)
From: [identity profile] karpion.livejournal.com
Проще всего - два сайта, один в зоне ru, другой в зоне com. И со ссылками друг на друга.

Date: 2011-07-14 03:05 pm (UTC)
From: [identity profile] karpion.livejournal.com
Проще всего - два сайта, один в зоне ru, другой в зоне com. И со ссылками друг на друга.

А вообще, скачайте себе Apache и почитайте его конфиг.
Или http://apache.lexa.ru/configure.html - возможно, это что-то прояснит. Хотя там в основном на тему charset. Но я сразу нашёл упоминание "LanguagePriority".