Простой IP фильтр, для провинившихся пользователей!

Статус
В этой теме нельзя размещать новые ответы.

jaroslaver

Новичок
Простой IP фильтр, для провинившихся пользователей!

Помогите создать именно такой скрипт, а не на оборот!
Есть допекающие меня на сайте IP адреса (5-12) им нужно запретить действие при посещении определённой страницы, переадресовав на стартовую страницу. Остальным ничего не запрещать.

Скрипт должен работать приблизительно так!

В начале страницы, нужно вставить:

<?
Script IP фильтра
?>

а задача его такая, например создадим ip.txt куда в ручную добавим список IP адресов, которым запрещено видеть мою страницу. Надо чтобы скрипт прочитав все адреса определил, если клиент в списке ip.txt, то сделать ему редирект на страницу http://www.super.com и написать: Вам доступ запрещён!, а если IP в списке ip.txt отсутствует, продолжить работу страницы после скрипта фильтра.

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

Апокалипсис

тех дир matras.ru
Подам идею:
Пиши IP в файл ip.txt каждая строка - ip адрес, потом:
$f=file("ip.txt");
$ip = getenv("REMOTE_ADDR");
for($i=0;$i<=count($f);$i++)
{
if($ip == $f[$i]){ header("location: http://super.com"); exit;}
}
 

jaroslaver

Новичок
Действительно работает и просто и сердито. Надо бороться со спамерами и фишерами, буду их банить, а то мусорят мне в гостевой книге, а у меня страница не для баловства. Апокалипсис благодарен вам, спасибо за помощь!
 

Гравицапа

elbirret elcno
Апокалипсис
Просто, я так понимаю, человек твою "идею" скопировал и даже не задумался как оно работает/должно работать.
 

jaroslaver

Новичок
Ну не надо за меня тут говорить ;) Да я частично скопировал идею, модифицировал под свою нужду. Это именно то что мне требовалось. Заблокировать злостных нарушителей! Кто хочет посмотреть где это применено, вот ссылка: http://piirissaar.pri.ee/index.php?id=rjqbook , если вы видите гостевую, то всё работает без ошибок. А вот если сообщение вылезло, мол вы заблокированы, значит ваш IP в чёрном списке!

-~{}~ 21.11.06 14:32:

Если начинать филосовствовать, то объясните в чём разница, и чем мне лучше от этого станет если заменить на
$_SERVER
foreach. В чём недовольство?
 

Alexandre

PHPПенсионер
Действительно работает и просто и сердито. Надо бороться со спамерами и фишерами, буду их банить
проф спамер бомбит через проксю, по этому будешь банить призраки...
 

jaroslaver

Новичок
Во всяком случае, принята попытка. Будем смотреть, что дальше. Alexandre - можно ли модифицировать, этот скрипт, так, что бы если IP в списке отсутствуют, то ограничить Гостевую от посещающих с прокси? Если используется прокси, то перевести на стартовую страницу. Запрет у меня распространяется только на Гостевую.
 

Гравицапа

elbirret elcno
Если начинать филосовствовать, то объясните в чём разница, и чем мне лучше от этого станет если заменить на
$_SERVER
Судя по коммента в мане и по гуглу, на вин платформе могут возникнуть проблемы с вызовом функции этой+ зачем вообще вызывать фукнцию, когда результат уже есть?
Он удобнее

если вы видите гостевую, то всё работает без ошибок. А вот если сообщение вылезло, мол вы заблокированы, значит ваш IP в чёрном списке!
Почитай лучше вот это http://www.captcha.ru/

-~{}~ 21.11.06 21:09:

В чём недовольство?
for($i=0;$i<=count($f);$i++)
count() вызывается на каждой итерации
Зачем?
 

jaroslaver

Новичок
Незнаю как там по гуглам да по манам, у меня сервер самого крупного в Эстонии хостинг провайдера. Всё лежит и обрабатывается на его сервере. И в Windows я только просматриваю как и все через IE, и дизайн в идеале у меня сделан именно под IE, другое не приемлемо. Будут проблемы, буду думать как дальше поступать. Да если не трудно могли бы вы мне помочь. Куда и как вставить
$_SERVER
foreach
Интересно, что именно надо заменить? Приведите полный пример от начала до конца.
 

Гравицапа

elbirret elcno
Незнаю как там по гуглам да по манам, у меня сервер самого крупного в Эстонии хостинг провайдера.
БАШорг рыдает
Да если не трудно могли бы вы мне помочь. Куда и как вставить
$_SERVER
foreach
Почитай в мане "что это и с чем это едят" и вставь сам.
Приведите полный пример от начала до конца.
Лень.
 

Апокалипсис

тех дир matras.ru
Насчет прокси. Я слышал можно как то полностью блокировать их так сделано в http://ddt.ru/chaddt/chat.php3
Не пройдет ни один прокси:) Но автор умалчивает как он это сделал. Не чере X_FORWARDER_FOR это точно
 

AmadMike

Новичок
Ну есть вроде публичные прокси, есть анонимные, которые не определишь. Да потом банить по ip очень жестоко, вот у моего прова например один общий ip, и что делать всем пользователям, если один нарушит что-то и ты забанишь его? А как же динамические ip-шки??? Расставляй куки, конечно от людей понимающих не спасет, но все-же какую-то часть забанить получится. Фильтры какие-нибудь на структуру сообщения, если много ссылок - не пропускать и т.д...
дизайн в идеале у меня сделан именно под IE, другое не приемлемо
- это зря, я вот, например, вообще IE использую только когда дизайн разрабатываю, чтобы узнать что подправить нужно. Это старая идеология, надо от нее избавляться.
 

jaroslaver

Новичок
Как я говорил ранее, баню на сайте я только, тех кто в гостевухе ссылки вместо текста пишет. На всю остальную страницу фильтр не реагирует ;) Принял меры против прокси, пока примитивным методом, добавив пркси сервера в список.
Текстовый файл вырос с 630 байт до 4162 килобайт - это публичные халявные прокси. Список обновляется за счёт тех кто не в списке!
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху