php языкозависимый редирект

(Ответов: 7, Просмотров: 2268)
  1. Banned
    • Регистрация: 08.09.2009
    • Сообщений: 1,478
    • Репутация: 80
    • Webmoney BL: ?
    Хочу поделится простым php скриптом, который позволит отфильтровать наших посетителей в зависимости от языка, который они используют. Что бы например сливать наших клиентов на партнёрку, а остальной шлак куда ни будь где шлак конвертится.

    Среди всех заголовков отправляемых браузером пользователя нас интересует язык. В php он записывается в переменную $_SERVER[HTTP_ACCEPT_LANGUAGE]

    Для моего браузера он выглядит так:
    ru,en-us;q=0.7,en;q=0.3
    Как видно, я русский :)

    Дале код, Адреса партнёрок вымышленные.
    PHP код:
    $ex explode(',',$_SERVER['HTTP_ACCEPT_LANGUAGE']); //Разбиваем строку в массив по запятой
    if ($ex[0] == 'en-us') { header('location:http://usshop.com'); die(); } //Америкосов сюда
    if ($ex[0] == 'it') { header('location:http://italiandrug.com');  die(); } //Итальянцев сюда
    if ($ex[0] == 'ru') { header('location:http://ruclicks.com?p=32423');  die(); } //Русских конвертим тут например

    header('location:http://trashclicks.com'); //Если до сих пор никуда не отправили юзера, отправляем в последнюю инстанцию, которая сама разберёться что с ним делать 
    Коды языков смотреть здесь.
    Что бы не отправить поискового робота ненароком, используем клоакинг. Вот тот же скрипт, но уже с учётом реферера:

    PHP код:


    if ( preg_match'#[\?\&]q=([^&]+) | [\?\&]query=([^&]+) | [\?\&]p=([^&]+) | [\?\&]keywords=([^&]+)#i'$_SERVER['HTTP_REFERER'] , $match ) ) 
    {
        
    $keyword $match[1] ;
        if ( !
    preg_match'~viagra|cialis|levitra~i'$keyword ) )
        {
            
    // показываем контент
        
    }
        else
        {
            
    $ex explode(',',$_SERVER['HTTP_ACCEPT_LANGUAGE']);
            if (
    $ex[0] == 'en-us') { header('location:http://usshop.com'); die(); }
            if (
    $ex[0] == 'it') { header('location:http://italiandrug.com');  die(); } 
            if (
    $ex[0] == 'ru') { header('location:http://ruclicks.com?p=32423');  die(); } 

            
    header('location:http://trashclicks.com'); 
        }

    • 0

    Спасибо сказали:

    24110(13.09.2009), ron(01.10.2009),
  2. Гуру Аватар для 24110
    • Регистрация: 07.09.2009
    • Сообщений: 1,649
    • Репутация: 91
    Неплохое дополенение, спасибо.

    Я еще использую дополнительные проверки по рефереру:

    PHP код:
    if ( !preg_match'~hl=ru|google\.ru|google\.com\.ua|google\.by~'$referer ) )
    {
        
    // redirect
    }
    else
    {
        
    // показываем контент

    Парам-пам-пам!
    • 0

    Спасибо сказали:

    ron(01.10.2009),
  3. Banned
    • Регистрация: 08.09.2009
    • Сообщений: 1,478
    • Репутация: 80
    • Webmoney BL: ?
    Кстати, этот скрипт можно использовать таким образом:

    Ставим его на РУССКИЙ сайт, при этом для всех не русских делаем редирект на партнёрку, которая принимает мусорный траф. Таким образом не ЦА мы монетизируем ещё до захода на сайт
    • 0
  4. Junior Member
    • Регистрация: 15.12.2009
    • Сообщений: 26
    • Репутация: 11
    А как же быть с тем русскоговорящим населением кто живет в европе?
    php программист
    • 0
  5. Senior Member Аватар для Тормоз
    • Регистрация: 04.11.2009
    • Сообщений: 529
    • Репутация: 79
    Цитата Сообщение от sowich Посмотреть сообщение
    А как же быть с тем русскоговорящим населением кто живет в европе?
    А причем здесь место проживания? Скрипт работает на основе браузерных настроек.
    Я отказался от всех форумов, меня тут больше нет.
    • 0
  6. Junior Member
    • Регистрация: 15.12.2009
    • Сообщений: 26
    • Репутация: 11
    Ну дак может быть браузер не англ например, мне кажется по ip фильтровать лучше.
    php программист
    • 0
  7. Senior Member Аватар для Тормоз
    • Регистрация: 04.11.2009
    • Сообщений: 529
    • Репутация: 79
    sowich, ты непоследовательный. Сперва задаёшь вопрос, как быть русским из Европы, а после предлагаешь фильровать по IP. Так как же быть русским в Европе с таким подходом?
    Я отказался от всех форумов, меня тут больше нет.
    • 0
  8. Banned
    • Регистрация: 08.09.2009
    • Сообщений: 1,478
    • Репутация: 80
    • Webmoney BL: ?
    Это всё издержки, пару процентов посетителей можно отправить не туда. Это лучше чем вообще не использовать
    • 0

Похожие темы

Темы Раздел Ответов Последний пост
Редирект с профиля
Дорвеи и black SEO 1 26.05.2010 13:44
Особый редирект
Хостинг и Серверы 12 19.04.2010 23:21
Редирект
Вопросы от новичков 0 28.10.2009 00:21
.htaccess редирект
Прочее 9 11.09.2009 21:48
Редирект дора
Дорвеи и black SEO 6 09.09.2009 13:33

Интересные темы

php клоакинг

Доступное руководство о том, как правильно и эффективно "прикрутить" php клоакинг к своему сайту.

браузер быстрый

Проблема выбора самого быстрого брауззера отпадет, если ты почитаешь про тесты на скорость здесь.

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры