Бывает частая ситуация, когда боты создают высокую нагрузку на сайт, тем самым потребляют лишние ресурсы CPU и RAM и это может приводить к замедлению работы сайта. Есть полезные боты, например поисковые системы, а есть бесполезные, которые сканируют сайт например для сбора каких-то данных или поиска уязвимостей на сайте.

И иногда возникает желание заблокировать доступ таким бесполезным ботам.

Это можно сделать в файле .htaccess, если у Вас уже есть этот файл в корне сайта, то достаточно просто добавить записи, если этого файла нет, то просто создайте его в корне своего сайта.

Блокировать ботов можно следующей конструкцией:

Deny from 192.168.0.100

Такой записью Вы блокируете доступ для всех запросов к сайту с IP 192.168.0.100

Также бывает необходимость закрыть доступ к сайту для всех, но оставить доступ только для своего IP, в этом случае запись будет выглядеть так:

Order Deny,Allow 
Deny from all
Allow from 192.168.0.100

Если у бота много IP и они постоянно меняются то можно блокировать его по user-agent значению:

BrowserMatchNoCase "SemrushBot" bots
BrowserMatchNoCase "AhrefsBot" bots
BrowserMatchNoCase "MJ12bot" bots
Order Allow,Deny
Allow from all
Deny from env=bots

Ниже приведен пример как заблокировать все POST запросы, но при этом оставить GET запросы:

RewriteCond %{REQUEST_METHOD} POST
RewriteRule .* – [F,L]

 Хостинг
Всего 0 Голосов:
0

Tell us how can we improve this post?

+ = Verify Human or Spambot ?