На счет борьбы с качальщиками - есть идея по алгоритму:
1) Реализовать "мягкий" делэй на основе JS-таймера и редиректора. Не знаю, умеют ли качалки интерпретировать жабаскрипт корректно. Если JS будет интерпретирован корректно - тем лучше, мотивированная задержка в 10 секунд не столь критична для человека, но сильно испортит жизнь качальщикам, в случае некорректной интерпретации - качальщики вообще загнутся, кроме тех, кто специально будет допиливать качалку под сервер.
2) Включать задержку по одному из критериев: либо количество промахов за единицу времени с одного адреса, либо общая загрузка сервера.
3) Автоматический бан адреса при наборе определенного количества промахов в единицу времени.
На счет борьбы с качальщиками - есть идея по алгоритму:
1) Реализовать "мягкий" делэй на основе JS-таймера и редиректора. Не знаю, умеют ли качалки интерпретировать жабаскрипт корректно. Если JS будет интерпретирован корректно - тем лучше, мотивированная задержка в 10 секунд не столь критична для человека, но сильно испортит жизнь качальщикам, в случае некорректной интерпретации - качальщики вообще загнутся, кроме тех, кто специально будет допиливать качалку под сервер.
2) Включать задержку по одному из критериев: либо количество промахов за единицу времени с одного адреса, либо общая загрузка сервера.
3) Автоматический бан адреса при наборе определенного количества промахов в единицу времени.