Блокирование одного IP-адреса с .htaccess
Структура .htaccess файла проста. В свой наиболее простой форме он выглядит следующим образом:
order allow,deny
deny from 1.23.45.67
allow from all
Не забудьте заменить 1.23.45.67 на IP-адрес, который вы хотите заблокировать.
Сначала устанавливаем директиву order для allow,deny. Затем указываем Apache, кому запрещать доступ (deny), после этого указываем, что всем остальным можно разрешать доступ (allow). На запросы, поступающие из запрещенных IP-адресов, будет дан ответ в виде HTTP заголовка 403 Access Denied.
Блокирование нескольких IP-адресов с .htaccess
Если есть несколько адресов, которые необходимо заблокировать, можно добавить строку для каждого адреса в .htaccess файле. Допустим, мы хотим заблокировать адреса 1.2.3.4 и 2.3.4.5, для этого нужно сделать следующее:
order allow,deny
deny from 1.2.3.4
deny from 2.3.4.5
allow from all
Вы можете добавить любое количество адресов, просто следуйте вышеуказанному шаблону.
Блокирование диапазона IP-адресов с .htaccess
Если необходимо заблокировать диапазон адресов, можно сделать так:
order allow,deny
deny from 123.45.67.
allow from all
Обратите внимание, что в IP адресе нет последней цифры. При этом создается шаблон адресов. Теперь будут заблокированы все адреса от 123.45.67.0 до 123.45.67.255. Будьте аккуратны при установке шаблонов для блокирования, поскольку вы также можете блокировать обычных пользователей.
Блокирование клиентов по доменному имени с .htaccess
Чтобы блокировать клиентов, можно даже не использовать адреса, содержащие цифры. Вы можете указывать доменные имена и поддомены, чтобы блокировать пользователей. Если нужно заблокировать клиентов, чьи хосты заканчиваются на bad-isp-company.com, то можно сделать следующее:
order allow,deny
deny from bad-isp-company.com
allow from all
Это означает, что все потенциальные пользователи определенного Интернет провайдера будут заблокированы.
Примерчик
Order Deny,Allow
Deny from 94.242.219.
Deny from 64.250.116.
Deny from 37.59.164.