Показать сообщение отдельно

  #8  
Старый 08.08.2009, 15:52
mailbrush
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
С нами: 9410786

Репутация: 2731


По умолчанию

Если надо на PHP:
ban.php
PHP код:
<?php

     $file 
= array_map('trim', file('networks.txt')); #загоняем файл в массив
     
foreach ($file as $expression) #цикл - обработка каждого элемента массива

     
{
         
$expression = str_replace('.', '\.', $expression);    #подгоняем строку под регулярку
         
$expression = str_replace('*', '(.*)', $expression); #подгоняем строку под регулярку
         
if (preg_match('#' . $expression . '#', $_SERVER['REMOTE_ADDR'])) #проверяем айпи по регулярке и в случае удачи
         
{
             
header('HTTP/1.1 403 Forbidden'); #отправляем заголовок 403 и
             
die("<title>BANNED NETWORK</title>\r\n\r\n<h1>Banned network!</h1>"); #выводим, что подсеть забанена
         
}
     }

?>
networks.txt
Код:
127.*.0.1
255.*.*.*
 
Ответить с цитированием