Должен ли я избавиться от ботов, посещающих мой сайт? - PullRequest
4 голосов
/ 29 ноября 2008

Я заметил на своих трекерах, что боты посещают мой сайт ALOT. Должен ли я изменить или отредактировать свой robots.txt или что-то изменить? Не уверен, что это хорошо, потому что они индексируют или как?

Ответы [ 5 ]

4 голосов
/ 29 ноября 2008

Я действительно не думаю, что изменение robots.txt поможет, потому что только ХОРОШИЕ боты соблюдают его. Все остальные игнорируют это и разбирают ваш контент по своему усмотрению. Лично я использую http://www.codeplex.com/urlrewriter, чтобы избавиться от нежелательных роботов, отвечая запрещенным сообщением, если они найдены.

4 голосов
/ 29 ноября 2008

Должен ли я изменить или отредактировать свой robots.txt или что-то изменить?

Зависит от бота. Некоторые боты покорно игнорируют robots.txt. У нас была похожая проблема 18 месяцев назад с ботом Google AD, потому что наш клиент покупал Soooo много рекламы. Боты Google AD будут (как задокументировано) игнорировать исключения подстановочных знаков (*), но будут слушать явные игнорирования.

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

Лучшее решение - дросселировать или подавать статическое содержимое боту.

Не уверен, хорошо ли это, потому что они индексируют или как?

Они могут быть индексацией / очисткой / воровством. Все таки на самом деле. Я думаю, что вы хотите, чтобы ускорить их обработку HTTP-запросов на основе UserAgents. Как это сделать, зависит от вашего веб-сервера и контейнера приложения.

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

  • Пользовательские агенты из белого списка - например, создать фильтр пользовательских агентов, который принимает только определенные пользовательские агенты. Это очень несовершенно.
  • IP banning - заголовок http будет содержать исходный IP. Или, если вы получаете DOS'd (атака отказа в обслуживании), тогда у вас есть большие проблемы
3 голосов
/ 29 ноября 2008

Спам-ботам нет дела до robots.txt. Вы можете заблокировать их чем-то вроде mod_security (который сам по себе довольно крутой плагин Apache). Или вы можете просто игнорировать их.

2 голосов
/ 30 ноября 2008

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

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

Для каждого сеанса на сервере мы определяли, нажимал ли пользователь в любой момент слишком быстро. После заданного количества повторов мы установили для флага isRobot значение true и просто снизили скорость отклика в этом сеансе, добавив спящие режимы. Мы никому не сообщили об этом, поскольку в этом случае он просто начал бы новую сессию.

2 голосов
/ 29 ноября 2008

Возможно, вам придется использовать .htaccess, чтобы запретить некоторым ботам завинчивать ваши логи. Смотрите здесь: http://spamhuntress.com/2006/02/13/another-hungry-java-bot/

У меня было много ботов Java, сканирующих мой сайт, добавляющих

SetEnvIfNoCase User-Agent ^ Java / 1. javabot = да
SetEnvIfNoCase User-Agent ^ Java1. javabot = да
Запретить от env = javabot

заставил их остановиться. Теперь они получают только 403 один раз и все:)

...