Роботы являются большой проблемой для большинства современных интернет-проектов. Роботы увеличивают нагрузки на сервер, , количество спама и подвергает данные пользователей опасности. С помощью роботов злоумышленники могут искать бреши в системах безопасности сайтов и даже полностью препятствовать его работе. Поэтому роботов необходимо блокировать. Однако не все роботы наносят сайту вред. Например, есть поисковые роботы, которые индексируют страницы вашего сайта для их дальнейшего добавления в поисковые системы такие как Яндекс и Google.

Как определить “вредного” робота

Как мы уже отметили выше, не все роботы наносят вред сайту. Поэтому для начала необходимо определиться какие роботы существуют в принципе:

  • Злонамеренные боты. Эти роботы создаются с целью взлома и вывода сайтов из строя. Их задача заключается в сканировании сайта не на предмет содержащейся там информации, а в первую очередь на уязвимые компоненты, в которые могут быть внедрены элементы удаленного управления или совершения вредоносных действий. Такие виды роботов необходимо блокировать.
  • Парсеры. Такие роботы в основном собирают информацию с сайтов для дальнейшей ее передачи заинтересованным лицам. Такие виды роботов так-же нужно блокировать. Однако необходимо разрешить доступ к API, если у вашего сайта таковое имеется.
  • Поисковые роботы. Этот тип роботов, которые занимаются сканированием и индексацией информации с сайтов для дальнейшего их занесения в базу данных поисковых систем. Этих роботов не нужно блокировать. Если вы заблокируете данных роботов, то поисковые системы будут считать ваш сайт не доступным для посетителей.

Способы обнаружение роботов

Перед тем чтобы начать блокировать роботов необходимо определить является ли посетитель сайта человеком или роботом, а если посетитель является роботом, то необходимо понять откуда он пришел и какие у него цели. 

Для того чтобы определить кем является посетитель сайта можно воспользоваться следующими методами:

  • Выяснить, используются ли посетителем JS-скрипты. Во всех современных браузерах уже более 10 лет есть поддержка JS скриптов. Данная технология включена в браузерах по умолчанию. Отключить её можно только через настройки. Если у посетителя не работают JS-скрипты - это 1 признак того, что посетитель является роботом. Либо у робота вообще нет браузера, что бывает довольно часто, либо их специально выключили.
  • Выяснить, в каком режиме работает браузер. У всех популярных браузеров есть 2 режима работы: оконный и консольный. Как правило, консольным режимом пользуются только роботы. Выяснить, в каком режиме находится браузер у посетителя, можно через JS. 
  • Проверить, управляет ли браузером какое-либо автоматизированное ПО. Очевидно, что реальный посетитель не будет использовать в своём браузере плагины для автоматического выполнения задач. Выяснить, есть ли в браузере такие плагины, можно через JS.
  • Проверить IP адрес посетителя. Роботы как правило делают запросы с прокси серверов. Наиболее популярными прокси-серверами является сеть Tor. Выяснить, используется ли у посетителя прокси можно сверив IP посетителя с базой IP прокси серверов. 
  • Проанализировать кол-во запросов в течении 1 сек с 1 IP адреса. Человек не сможет загружать страницы сотнями в течении 1 сек.
  • Проанализировать действия посетителя на странице. Как правило, роботы нажимают на ссылки, кнопки даже не прокручивая страницу до этой ссылки и кнопки. Поля в формах обратной связи заполняются моментально. Переход на другие страницы сайта может осуществляться не через навигацию на сайте, а через вставку ссылок на страницу в адресную строку браузера. Все это является признаками того, что посетитель скорее всего робот.

Как заблокировать роботов на сайте без использования капчи

Чтобы заблокировать как правило используют капчу. Однако капча не только блокирует роботов, но и раздражает обычных людей, что негативно сказывается на поведенческих факторах сайта и, как следствие, его посещаемости. Надежного способа заблокировать робота без использования капчи нет, однако можно значительно уменьшить кол-во роботов на сайте с помощью следующих способов:

  • Блокировка по IP. Самый простой способ - это внесение IP посетителя в черный список. Однако после блокировки, посетитель может сменить IP на другой при помощи прокси сервера или переподключиться к сети, если у провайдера данного посетителя нет статических IP адресов.
  • Блокировка по User-Agent. Если у посетителя специфический User-Agent, который не соответствует ни 1 браузеру, то такой User-Agent можно внести в черный список. Однако, после блокировки, посетитель может сменить и его.
  • Блокировка всей подсети посетителя. Более продвинутый способ блокировки - это заблокировать всю подсеть посетителя. В данном случае блокируются пул IP адресов. Однако недостаток в данном методе заключается в том, что если IP из данной сети используются в том числе и обычными людьми, то будут заблокированы в том числе и такие люди. 
  • Блокировка по странам. Если вы работаете на территории РФ, а запросы идут из США, то можно просто ограничить доступ к сайту посетителям из другим стран.
  • Блокировка прокси-серверов и VPN. VPN и прокси сервера как правило используются для того чтобы обойти блокировки на сайте. Поэтому их так же необходимо блокировать. Стоит отметить, что если у посетителя используется приватный VPN или прокси сервер, то такая блокировка на такого посетителя не повлияет.
  • Блокировка определенных запросов к сайту. Роботы могут выполнять запросы к несуществующим страницам на сайте или передавать не типичные параметры в адресной строке. ТАкие запросы можно отфильтровать на уровне сервера. 

Егор Левин Егор Левин

Дата публикации:

Обновлено:

Свежие записи в нашем блоге

68a643c03e0d5.jpeg

Материнская плата LGA 1155: ностальгический трип или бюджетный апгрейд в 2025 году?

Левин Егор

В мире, где на сцене царствуют свежие сокеты и DDR5, платформа LGA 1155 выглядит как почтенный пенсионер, который всё ещё может дать фору молодым в бюджетной лиге. Да, это уже история. Но история, кот...

68a63d250a1c7.jpg

Создание сайта с нуля: пошаговая инструкция для новичков

Левин Егор

Создать свой сайт — мечта многих предпринимателей и блоггеров. Но как начать, если ты не имеешь опыта в веб-разработке? В этой статье мы разберемся, как создать сайт с нуля, используя бесплатные инстр...

68a46ffe78a83.jpg

Как исправить ошибку CRYPT_E_REVOCATION_OFFLINE в Git

Левин Егор

Вы пытаетесь получить последние обновления из удаленного репозитория с помощью git pull, но вместо успешного завершения операции сталкиваетесь с загадочной ошибкой CRYPT_E_REVOCATION...

689e48ef52da0.jpg

Как ускорить загрузку Windows и повысить эффективность работы

Левин Егор

В наше время компьютеры и ноутбуки стали неотъемлемой частью нашей жизни. Мы используем их для работы, общения, развлечений и многое другое. Однако со временем производительность ПК может начать умень...

689cf051df27c.jpg

No-Code Платформы для Интернет-Магазинов:

Левин Егор

Представьте: вы давно вынашиваете идею своего интернет-магазина. Глаза горят, планы строятся, а потом... мысль о технической реализации. Сайт. Дизайн. Программирование. Интеграции. Голов...

689532cf641ed.png

Интеграция генеративного ИИ в Figma: стратегии автоматизации веб-дизайна и верстки

Левин Егор

Эволюция инструментов проектирования интерфейсов достигла переломного момента: связка Figma и генеративного ИИ формирует новый стандарт в создании цифровых продуктов. Данное исследование анализирует п...

68952e5b47517.jpg

Обработка видео для сайта: Оптимальные форматы и интеграция FFmpeg

Левин Егор

Эффективная работа с видеоконтентом — критически важная задача для современных веб-платформ. Основная сложность заключается в необходимости поддерживать различные форматы видео, обеспечивая при этом б...

689096dd3da1e.jpg

Выбор Open-Source 3D Игрового Движка

Левин Егор

Выбор Open-Source 3D Игрового Движка в 2025: Примеры Успешных Игр Сравнение Unreal Engine 5, Godot, Stride, O3DE и Unity по графике, физике и оптимизации. Узнайте,...

Другая полезная информация