Реклама на сайте Advertise with us
Тема: отлуп серфера с .ru Расширенный поиск по форуму  
Автор Сообщение
Aramis


Зарегистрирован:

Ссылка на сообщениеДобавлено: 04/12/00 в 01:23

отлуп серфера с .ru
Господа такой вопрос назрел. Изучая статистику узрел, что 5 процентов серферов набредают ко мне с зоны .ru Я конечно патриот и все такое, но ведь они все равно платить не будут. Лишь глянут и уйдут. А у меня ратио падает.... =( Так вот может кто научит меня скрипту, который их отлавливает и .... А вот что с ними делать я потом сам придумаю.... =)

K началу

 
Lust


Зарегистрирован:

Ссылка на сообщениеДобавлено: 04/12/00 в 02:40

re: отлуп серфера с .ru
if (navigator.browserLanguage == 'ru') document.location = 'nahuy.html';
по-моему так.. хотя я и ошибаться могу...

K началу

 
dimm


Зарегистрирован:

Ссылка на сообщениеДобавлено: 04/12/00 в 03:55

re: отлуп серфера с .ru
Неа... Не так надо! К сожалению, Лолаз (webmaster of xxxmadness), которого вы в свое время нехило тут опустили, мог бы поделиться скриптом собственного написания с немаленькой базой русских ip, но он куда то пропал...... :-(((

K началу

 
Ruble


Зарегистрирован:

Ссылка на сообщениеДобавлено: 04/12/00 в 04:38

Apache
Сам не пробовал, но думаю так...
Это нужно не скриптом делать, а использовать возможности Apache.
1. смотри
http://www.engelschall.com/pw/apache/rewriteguide/#ToC25
2. проверяем переменную среды HTTP_ACCEPT_LANGUAGE = 'ru'

K началу

 
Он


Зарегистрирован:

Ссылка на сообщениеДобавлено: 04/12/00 в 04:40

Вот скрипт Лолаза:)
‚от скрипт ‹олаза. Ћн вроде сам был не против его использованиЯ народом. Џользуйтесь!:)
#!/usr/bin/perl
#tracker.cgi V1.3.0b
use Socket;
use CGI qw(:standard);
use Fcntl ':flock';
# поЯвилось в версии 1.2, сохранение логов
sub lock {
flock(LOG,LOCK_EX);
seek(LOG, 0, 2);
}
sub unlock {
flock(LOG,LOCK_UN);
}
##############################################################
### единственное, что нужно настроить - 4 следующие строки ###
$url = "Људа слать америкосов?";
$logfilename = "как обозвать файл логов?";
$usewarningpage = "1"; # 0/1 - no/yes , v1.3
$sendrussianto = "куда русских слать, если отключена страница?"; #v1.3
##############################################################
@allowed = ('cz','se','fi','it','uk','nl','lu','de','fr','dk','sk','be','at','gr'); # поЯвилось в версии 1.2, пустить их надо :), v1.3 - updated
$referer = $ENV{'HTTP_REFERER'};
$iaddr = gethostbyname($ENV{'REMOTE_ADDR'});
$host = gethostbyaddr($iaddr, AF_INET);
$realaddr = $ENV{'HTTP_X_FORWARDED_FOR'};
$iaddr = gethostbyname($realaddr);
$realhost = gethostbyaddr($iaddr, AF_INET);
$addr = $ENV{'REMOTE_ADDR'};
$proxy = $ENV{'HTTP_VIA'} ;
$realhost = $host if ($realhost eq '');
$realaddr = $addr if ($realaddr eq '');
if (param('show') eq 'declined')
{
print "Content-type: text/html
";
print "<html>
<head>
<title>Stop Russian Surfers!</title>
";
print "<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
</head>
<body>
";
print "<br><center><h1>403 Forbidden</h1><br><b><font color=red size=4>Unfortunately you can not get on this resource since its owner has considered necessary to protect the site from surfers from Russia.<br>It has taken place in connection with the become frequent cases of use of stolen numbers of credit cards. Take into account, all IP are kept and sooner or later you will catch. You will not make anything good neither, nor us.<br><br>Љ сожалению вы не сможете попасть на этот ресурс, т.к. его хозЯин посчитал нужным оградить свой сайт от серферов из ђоссии.<br>ќто произошло в свЯзи с участившимисЯ случаЯми использованиЯ краденых номеров кредитных карт. “чтите, все IP сохранЯютсЯ и рано или поздно вас поймают. ‚ы не сделаете ничего хорошего ни себе, ни нам.</font></b></center><p align=right>On all questions connected with this script, contact <a href=mailto:webmaster@xxxmadness.net>Authors</a>. © 2K.<br><font size=1>If you consider, that your address should not be blocked, contact us, we correct this annoying mistake.</p>";
print "</body>
</html>";
exit;
}
@ipaddr=split(/./,$realaddr);
@iphost=split(/./,$realhost);
$declined = 0;
if ((@ipaddr[0] eq '195') (@ipaddr[0] eq '193') (@ipaddr[0] eq '212') (@ipaddr[0] eq '194')) {$declined = 1;}
if ((@iphost[@iphost-1] eq 'ru') (@iphost[@iphost-1] eq 'su') (@iphost[@iphost-1] eq 'ua') (@iphost[@iphost-1] eq 'ee')) {$declined = 1;}
foreach $fld (@allowed) # поЯвилось в версии 1.2, пустить их надо :)
{ if (@iphost[@iphost-1] eq $fld) {$declined = 0}; }
if ($declined)
{
$time=time; # v1.3
open(LOG, ">>$logfilename")
or die "Can't open logfile: $!";
lock();
print LOG "Stopped ".$time.": ".$realhost."($realaddr), from: $referer
";
unlock();
close(LOG);
if ($usewarningpage) { #v1.3
print "Location: tracker.cgi?show=declined
";
} else {
print "Location: $sendrussianto
";
}
}
else
{
$time=time;
open(LOG, ">>$logfilename")
or die "Can't open logfile: $!";
lock();
print LOG "Allowed ".$time.": ".$realhost."($realaddr), from: $referer
";
unlock();
close(LOG);
print "Location: $url
";
}
exit;

K началу

 
Ruble


Зарегистрирован:

Ссылка на сообщениеДобавлено: 04/12/00 в 05:59

лажа
use CGI
- жопа, эту библиотеку боятся применять даже в обычных приложениях, не то что в Adult, время ее компиляции - вечность по сравнению со временем компиляции самого скрипта.
gethostbyname()
gethostbyaddr()
- ох.....льные временные затраты. Время компиляции CGI тут и рядом не стоит.
IMHO скрипт несостоятельный при большой посещаемости. IP адреса можно тоже проверять через Apache mod_rewrite (см. пред. постинг)

K началу

 
Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!
Форум закрыт Форум закрыт  Тема закрыта Тема закрыта

Спонсор сайта

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »