Forum Webscript.Ru

Программирование => Perl => Тема начата: advanced от 08 Октября 2002, 01:45:23

Название: Как определить язык посетителя и отправить его на соответствующую страницу!??
Отправлено: advanced от 08 Октября 2002, 01:45:23
Кто знает как сделать скрипт, который устанавливается на главную страницу сайта и меняет выберает страницу в зависимости от вероятного языка посетителя. При первичном заходе на страницу анализируются: языки броузера (ACCEPT_LANGUAGE), с какой страницы пришел посетитель (HTTP_REFERER), язык поискового запроса (если он пришел с поисковика), в какой доменной зоне находится его компьютер (по REMOTE_ADDR).

Пример:
Существует три папки(eng/rus/ger), как вы поняли каждая папка относится к своему языку!
Вот допустим заходит посетитель, а скрипт считывает его язык по умолчанию, доустим это английский и отправляет пользователя вот сюда eng/index.html

Пожалуйста, помогите!!
Зарание благодарен!
Название: Как определить язык посетителя и отправить его на соответствующую страницу!??
Отправлено: YA от 08 Октября 2002, 02:51:26
$ENV{\'HTTP_ACCEPT_LANGUAGE\'}
Название: Как определить язык посетителя и отправить его на соответствующую страницу!??
Отправлено: advanced от 08 Октября 2002, 03:05:15
YA
Извени, я новичёк а каким должен быть сам скрипт!????
Название: Как определить язык посетителя и отправить его на соответствующую страницу!??
Отправлено: YA от 08 Октября 2002, 11:03:28
# Делаешь хеш для возможных направлений переадрессаций (например):
$redirect{\'en\'}="http://en.host.ru/";
$redirect{\'de\'}="http://de.host.ru/";

# Далее проверяешь, какой язык основной и есть ли в твоем хеше ему соответствие:
$redirect=$redirect{($ENV{\'HTTP_ACCEPT_LANGUAGE\'}=~/^([^,]+)/)[0]};
Если есть, то перенапрвляешь:
if ($redirect) {print "Location: $redirect\\n\\n";}

# - первое, что пришло в голову