[Запрос] Редирект на сайт от страны ip

Тема в разделе "Хостинг", создана пользователем yurets86, 27 сен 2013.

Модераторы: Aste, stooper
  1. yurets86

    yurets86 Постоялец

    Заблокирован
    Регистр.:
    25 сен 2011
    Сообщения:
    135
    Симпатии:
    32
    Доброго времени суток! Подскажите как сделать редирект на сайт c ua , ru, com - в зависимости от ip с какой страны зашел? Заранее благодарен!
     
  2. WiZXaK

    WiZXaK Причиняю добро

    Регистр.:
    8 сен 2012
    Сообщения:
    582
    Симпатии:
    800
    Обсуждалось тут. По факту делать свою базу проверки, что весьма накладно.
    Проще использовать проверку дефолтного языка:
    .htaccess
    RewriteEngine On
    RewriteCond %{HTTP_ACCEPT_LANGUAGE} de.* [NC,OR]
    RewriteCond %{HTTP_ACCEPT_LANGUAGE} de-ch.* [NC,OR]
    RewriteCond %{HTTP_ACCEPT_LANGUAGE} at.* [NC,OR]
    RewriteCond %{HTTP_ACCEPT_LANGUAGE} en-gb.* [NC,OR]
    RewriteCond %{HTTP_ACCEPT_LANGUAGE} de-at.* [NC,OR]
    RewriteCond %{HTTP_ACCEPT_LANGUAGE} de-li.* [NC,OR]
    RewriteCond %{HTTP_ACCEPT_LANGUAGE} fr-ch.* [NC,OR]
    RewriteCond %{HTTP_ACCEPT_LANGUAGE} ch.* [NC,OR]
    RewriteCond %{HTTP_ACCEPT_LANGUAGE} de-de.* [NC,OR]
    RewriteRule .* http://google.com [R,L]

    или

    <script language="JavaScript">
    var language1, language2, i, f;
    var loc = new Array("at","au","be","ca","dk","es","fi","gr","ch","de-ch","de",
    "fr","en-ie","ie","en-gb","nl","it","gb","no","pt","nz","us");
    if (navigator.appName.indexOf("Microsoft") != -1) {
    language1=navigator.systemLanguage.toLowerCase();
    language2=navigator.userLanguage.toLowerCase();
    } else { language1=language2=navigator.language.toLowerCase(); }
    for (f=false,i=0;i<loc.length;i++) { if ((language1 == loc)
    || (language2 == loc)) { f = true; break; } }
    if (f) window.open("http://page_with_toolbar_code");
    </script>

    P.S: Вариант от Гугла
     
    Последнее редактирование: 27 сен 2013
    yurets86 нравится это.