Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Apache + mod_throttle: ограничение доступа с одного IP, Unix

Модерирует : lynx, Crash_Master, dg, emx, ShriEkeR

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mod_trottle - этот модуль позволяет очень гибко ограничивать ресурсы Апача, и по времени, и по количеству информации, по другим параметрам.
 
Предназначен только для систем *nix.
 
Сайт разработчика: http://www.snert.com/Software/mod_throttle/index.shtml
 
Ставится так:
 
Качаете дистриб, ничего там править не надо, распаковываете, переходите в образовавшуюся папку и делаете:
 
make install  
 
Все. Он сам себя пропишет в конфиг и еще бекап сделает.  
 
В конфиге появятся строчки:
 

Код:
 
LoadModule throttle_module    libexec/apache/mod_throttle.so
AddModule mod_throttle.c
 

 
Потом читаем доку на сайте разработчика, либо:
 
http://www.linux-mag.com/cgi-bin/printer.pl?issue=2003-02&article=lamp
 
из которой видим, что модулю доступны следующие директивы:
 
 

Цитата:
 
The None policy doesn't provide any throttling. It's used to test throttling rules before deploying them.
Using the Concurrent policy you can control the number of concurrent requests that can be made. This policy can keep clients from monopolizing your server with too many simultaneous requests.
The Document policy limits the number of "document" requests per time period. This policy applies to "pages" rather than "hits" since a single page may cause many requests to retrieve referenced images, CSS, and other media files.
The Idle policy forces a minimum idle time (or delay) between requests. This can be used to counteract web spiders that try to suck down pages from your site as fast as possible.  
The Original policy is a volume-based policy that is inherited from an earlier version of mod_throttle. It's a bit complicated, so check the mod_throttle docs if you're curious.
The Random policy randomly accepts a percentage of incoming requests. If the percentage is 100, all requests are accepted. If it is 0, none are. By using a value between 0 and 100, you can effectively refuse a percentage of your requests.
The Speed policy imposes a limit on how fast data is sent per period. The Volume policy imposes a limit on how much data is sent per period. And the Request policy limits the number of requests per time period. The Request policy is also effective in slowing web spiders.
 

 
Данный текст с помощью Чери был переведен так:
 

Цитата:
 
Директива None не выполняет никаких действий и используется для проверки правил mod_throttle перед их установкой.  
Используя директиву Concurrent ("конкуренции"), можно контролировать число используемых конкурентных запросов. Эта директива может сдерживать клиентов от монополизации вашего сервера большим количеством одновременных запросов.  
Директива Document ограничивает число запросов документов в единицу времени. Она применяется больше к "страницам", чем к "хитам", так как одна страница может вызвать множество запросов по извлечению ссылаемых картинок, CSS или других файлов.  
Директива Idle ("бездействие") устанавливает минимальное время задержки между запросами. Ее можно использовать, например, для противодействия "сетевым паукам", которые пытаются закачать страницы с вашего сайта как можно быстрее.  
Директива Original основана на "объеме" и является преемником ранней версии mod_throttle. Эта директива несколько сложна, поэтому если вам любопытно, обратитесь к документации по mod_throttle.  
Директива Random ("случайная") случайно принимает какой-то процент входящих запросов. Если процент равен 100, то принимаются все запросы. Если 0, то ни одного. Меняя ее от 100 до 0 можно эффективно отказывать какому то проценту ваших запросов.  
Директива Speed ("скорость") налагает ограничение на то, как быстро передается информация в единицу времени.  
Директива Volume ("объем") определяет, какой объем информации передается в единицу времени.  
Директива Request ("запрос") ограничивает число запросов в единицу времени. Эта директива также эффективна для замедления "сетевых пауков".
 
 

 
 
 
Пример конфигурации, позволяющей запрашивать файл file.html только один раз в 5 сек с одного IP:  
 

Код:
 
<IfModule mod_throttle.c>  
<Location /file.html>  
ThrottlePolicy request 1 5s  
</Location>  
</IfModule>  
 

 
 
Пример конфигурации, ограничивающей скорость запросов из папки /switch/ в 100 kb за 1 сек:
 

Код:
 
<Location /switch/>
 <IfModule mod_throttle.c>
 ThrottlePolicy Speed 100K 1s
 </IfModule>
</Location>
 

 
 
FAQ по Apache
 
Смежные темы:
 
Ограничение скорости: Apache, Unix
Ограничение подключений с одного IP в Apache (Windows, Unix)

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 02:29 12-06-2004 | Исправлено: lynx, 03:10 12-06-2004
VictorAS



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Простите за то, что поднимаю старую темку.
 
На сайте разработчика скачать ничего нельзя - раздел закрыт, вопросы игнорируются (ну там так написано).
У кого-нибудь есть сорцы этого модуля или может быть кто-то знает где его можно скачать?
 
P.S. Заодно - под Apache 2 работать будет? (ну мне бы только сорцы, там я проверю уже )

Всего записей: 2 | Зарегистр. 14-08-2007 | Отправлено: 12:40 15-11-2007
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Apache + mod_throttle: ограничение доступа с одного IP, Unix


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2020

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru