Защищаем сайт от нежелательных роботов

Различные боты и роботы способны создавать существенную нагрузку на хостинг, особенно при их одновременном посещении сайта.

Если у вас виртуальный хостинг, то обычно этого не замечаешь, но если вы пользуетесь сервером ВПС то при нехватке его мощностей сайты в лучшем случае начинают работать медленно, а в худшем, сервер просто перестает работать.

Увидеть перегрузки сервера вы можете в панели управления хостингом, а чтобы понять, что именно за “посетители” привели к перегрузкам необходимо проверить лог обращений к сайту.

Закрываем по юзерагенту

В логе мы видим ip, с которого произошло обращение к сайту и юзерагент, по которому можно определить бота и заблокировать его.
Что то вроде такого:

"Mozilla/5.0 (iPhone; CPU iPhone OS 8_1 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12B411 Safari/600.1.4 (compatible; YandexMobileBot/3.0; +http://yandex.com/bots)"

Из строки выше можно понять, что это YandexMobileBot. Известные боты поисковых систем от yndex, google, bing и т.п., конечно, не стоит блокировать. А вот для большинства прочих сайт можно закрыть, если они мешают его нормальной работе.

Например, нам нужно блокировать 2 бота: ahrefsbot и mj12bot. Для этого в файл htaccess помещаем следующие строчки:

SetEnvIfNoCase User-Agent "^ahrefsbot" bad_bot
SetEnvIfNoCase User-Agent "^mj12bot" bad_bot
Order Allow,Deny
Allow from all
Deny from env=bad_bot

Вместо первых 2-х строк можно написать любое количество, указав там нужные имена роботов. После этого они не смогут зайти на ваш ресурс.

Закрываем по IP

Также бывает полезно уметь заблокировать бота по его ip адресу. Для этого указывает следующие инструкции в htaccess:

Order Deny,Allow
Deny from 144.76.200.164
Deny from 91.109.19.24

Здесь мы закрыли сайт для 2-х ip. Чтобы указать диапазон адресов указываем начало и конец диапазона через “/”. Например, команда Deny from 91.109.19.0/24 заблокирует ip с 91.109.19.0 до 91.109.19.24.

Нужно отметить, что увеличение файла htaccess приводит к снижению скорости работы сайта, то есть не стоит им злоупотреблять.

Понравилась статья? Поделись с друзьями:

1 Комментарий

  1. Кирилл 4 года назад

Добавьте комментарий

* Нажимая на кнопку "Отправить" Вы соглашаетесь с политикой конфиденциальности.