Ответить в теме

[QUOTE="Master, post: 1356, member: 10"]

Думаю запрет через фаервол или хтаксцесс не лучшее решение, так как в этом случае цензор знает, что доступ на сайт ограничен. Я бы рекомендовал выдавать цензорам другой контент  или ошибку 404.


Для диапазона

[CODE]iptables -I INPUT -m iprange --src-range 195.128.157.0-195.128.157.255 -j DROP # Роспотребназдор


iptables -I INPUT -m iprange --src-range 78.108.192.0-78.108.199.255 -j DROP # ФСКН


iptables -I INPUT -m iprange --src-range 212.42.32.0-212.42.63.255 -j DROP #мосспрокуратура[/CODE]


Скрипт будет  выглядеть так:

[PHP]

$ip=$_SERVER['REMOTE_ADDR']; // узнаем IP пользователя


$censor_mask=explode(chr(13), str_replace(array(' ', chr(10)),'',file_get_contents("censor_ip.txt")) );


$this_censor=false;

foreach($censor_mask as $i=>$mask)

{

    if (strpos($ip, $mask)!==false) { $this_censor=true; break; } // Если айпи пользователя соответствует маске, то помечаем его как цензорский

}


if ($this_censor==true) echo file_get_contents("404.html"); // Показываем цензорам ошибку 404, как будто страница уже удалена.


[/PHP]


Содержимое файла censor_ip.txt будет таким:

[CODE]

194.165.22.

194.165.23.

195.128.157

78.108.19

212.42.3

212.42.4

212.42.5

212.42.61.

212.42.62.

212.42.63.

[/CODE]


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


ПС

Скрипт в работе не проверялся.

[/QUOTE]

Сверху