Как сделать редирект на русскую и английскую версию сайта?
На хостинге две директории: ru и en, для русскоязычных и англоязычных пользователей соответственно. Как сделать так, чтобы при заходе с русских, беларусских,украинских и казахских ip адресов кидало на ru директорию, а с остальных - в en?
Александр А: нет. У первые стран, используется кириллица. Можно спокойно понять, что у них будет выдаваться ru_RU. А если кто-то из украинцев или русских юзает английскую версию, то это его проблемы и он сам может переключиться на русскую. Но это неправильно делать по IP! Они могут меняться! Можно конечно в гугле вбить "ip база стран" и уже оттуда по маске проверять, но, блин! ЭТО ПЛОХОЙ СПОСОБ.
Если не хочешь быть первым - не вставай в очередь!
Среди прочего, браузер обычно сам выдаёт набор предпочитаемых пользователем языков, практически готовое решение + список "русскоговорящих" языков есть тут. Но если очень хочется именно по IP и/или браузер не прислал набор предпочитаемых языков (*я бы в этом случае просто перекинул на EN), то можно воспользоваться готовым решением для PHP.
Правильное решение - использовать информацию из заголовков об используемом языке.
Если же не удается определить язык по данным из браузера, следует опираться на определение через Ip-адрес. Просто опирайтесь на код страны. Если не найдена, то всегда открывайте версию на английском языке.