Как Сделать Редирект В Зависимости От Страны?

ТБ
На сайте с 15.11.2007
Offline
37
5513

Здравствуйте Господа,

У меня есть буржуйский адалт сайт (на html) ориентированный на европейский траф и некоторая часть посетителей приходит из Штатов. Мне необходимо редиректить американцев на другий сайт.

Как это сделать?

Знаю, что это можно сделать и через .htaccess и через JS.

Помогите пожалуйста. Если сработает - отблагодарю.

Заранее спасибо.

Gold Line International | Получено За 4 Дня $1380. Это Круто !!! Зарабатывают ВСЕ! (http://main.goldline.pro)
M
На сайте с 10.06.2009
Offline
16
#1

гугли в сторону GeoIP

ICQ 386414065 skype webmtnt email request@webmutant.ru
_
На сайте с 11.07.2008
Offline
90
#2

1. Узнаём IP-адрес посетителя:

IP хранится в суперглобальном массиве $_SERVER;

пример:

$ip = $_SERVER['REMOTE_ADDR'];

2. Пишем функцию whois:

function whois($ip) {

if ($ip!="") {

$sock = fsockopen ("whois.ripe.net",43,$errno,$errstr);

if ($sock) {

fputs ($sock, $ip."\r\n");

while (!feof($sock)) {

$str.=trim(fgets ($sock,128)." <br>");

}

}

else {

$str.="$errno($errstr)";

return;

}

fclose ($sock);

}

return $str;

}

получаем whois-данные для нашего IP

пример:

$whois = whois($_SERVER['REMOTE_ADDR']);

3. Выдираем с помощью регулярных выражений данные о стране

Тут уже может быть куча способов, для примера вот этот:

$need = "country:";

$pos = strpos($whois,$need);

$search = substr($whois,$pos,18);

$excount = explode(":", $search);

$country = trim($excount[1]); //готово

"$country" содержит значение страны IP-адреса.

Значение в формате: RU, UA, US, TJ...

4. Что делать? Примеры

Запрет посетителей с USA:

if($country == "US") {

echo "Your IP banned! He-he...";

// header('Location: тут ссылка');

exit();

}

http://s30101705699.mirtesen.ru/blog/43113081455

подправил, где надо

плюсы:

легко + гео ип не нужен

минусы

лишние запросы (скорость загрузки) тут все зависит уже от канала

Предоставляю услуги программирования и администрирования. Бесплатная фриланс биржа (https://allfreelancers.su/)
ТБ
На сайте с 15.11.2007
Offline
37
#3
_gibson_:
1. Узнаём IP-адрес посетителя:

IP хранится в суперглобальном массиве $_SERVER;

пример:



$ip = $_SERVER['REMOTE_ADDR'];



2. Пишем функцию whois:



function whois($ip) {
if ($ip!="") {
$sock = fsockopen ("whois.ripe.net",43,$errno,$errstr);
if ($sock) {
fputs ($sock, $ip."\r\n");
while (!feof($sock)) {
$str.=trim(fgets ($sock,128)." <br>");
}
}
else {
$str.="$errno($errstr)";
return;
}
fclose ($sock);
}
return $str;
}



получаем whois-данные для нашего IP

пример:



$whois = whois($_SERVER['REMOTE_ADDR']);



3. Выдираем с помощью регулярных выражений данные о стране


Тут уже может быть куча способов, для примера вот этот:



$need = "country:";
$pos = strpos($whois,$need);
$search = substr($whois,$pos,18);

$excount = explode(":", $search);

$country = trim($excount[1]); //готово



"$country" содержит значение страны IP-адреса.



Значение в формате: RU, UA, US, TJ...



4. Что делать? Примеры



Запрет посетителей с USA:



if($country == "US") {
echo "Your IP banned! He-he...";
// header('Location: тут ссылка');
exit();

}

http://s30101705699.mirtesen.ru/blog/43113081455
подправил, где надо

плюсы:
легко + гео ип не нужен
минусы
лишние запросы (скорость загрузки) тут все зависит уже от канала

Спасибо большор _gibson_

Это если запретить вход посетителям из US. А как будет выглядетькод если я хочу только US редиректить на другую ссылку?

if($country == "US") {

echo "Your IP banned! He-he...";

// header('Location: тут ссылка');

exit();

}

Этот код я насколько понимаю работает с php

А если у меня html? Как можно такое замутить с .htaccess?

Спасибо.

MD
На сайте с 11.04.2010
Offline
22
#4
Это если запретить вход посетителям из US. А как будет выглядетькод если я хочу только US редиректить на другую ссылку?

if($country == "US") {
echo "Your IP banned! He-he...";
// header('Location: тут ссылка');
exit();

}

убрать "echo "Your IP banned! He-he...";" и всё.

Как можно такое замутить с .htaccess?

Никак

frion-seo
На сайте с 23.04.2010
Offline
69
#5

Тигран Бароян, ставьте TDS и будет вам счастье =)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий