Незванные роботы нагружают сайт
-
Здравствуйте, интересует такой вопрос: можно закрыть доступ к сайту всех роботов через файл .htaccess но разрешить поисковым роботам доступ к сайту? можно так сделать и как ?
Также отпишите свои варианты как лучше бороться с незваными роботами
-
у вас вообщем-то 2 варианта
первый — вежливо попросить не лазить по сайту, в robots.txt
User-agent: GoogleBot Disallow: /wp-admin/ User-agent: Yandex Crawl-delay: 2 Disallow: /wp-admin/ User-agent: * Disallow: /
второй — банить по user-agent
SetEnvIfNoCase User-Agent "Java/1.6.0_04" bad_bot SetEnvIfNoCase User-Agent "Java/1.6.0_24" bad_bot SetEnvIfNoCase User-Agent "Downloader" bad_bot <Limit GET POST HEAD> Order Allow,Deny Allow from all Deny from env=bad_bot </Limit>
список сами составите, или можно нагуглить… только все равно посмотрите кого баните, не всегда нагугленные списки хороши на все 100
ну и ботов все равно не перебанить, MSIE 6.0 многие представляются.
Как вариант можно заскриптовать ханипот — на странице разместить картинку или css, если загружена — человек, нет — бот, добавить в черный список по IP, где то даже готовые варианты были подобных скриптов
Большое спасибо за помощь и с наступающим НГ
Если закрывать через роботс то еще нужно указать User-agent для меил и бинг поисковиков? Вариант хороший, но по моему так никто не делает, оставлю его про запас))Список роботов я могу посмотреть в статистике, подскажи какие из этих ботов лучше не блокировать, с поисковиками, все понятно, а вот остальные под вопросом) особенно интересует бот Unknown robot (identified by ‘bot*’) он больше всех нагружает.
Unknown robot (identified by ‘bot*’)
bingbot
Yandex bot
MJ12bot
Mail.ru bot
Googlebot
WordPress
Unknown robot (identified by ‘crawl’)
Unknown robot (identified by empty user agent string)
Unknown robot (identified by ‘robot’)
WebFilter
Feedfetcher-Google
StackRambler
Unknown robot (identified by hit on ‘robots.txt’)
Yahoo Slurp
proximic
Nutch
Unknown robot (identified by ‘spider’)
FavIconizer
archive.org bot
SeznamBot
Google AdSense
WGet tools
CFNetwork
twitterbot
Python-urllib
Exabot
Alexa (IA Archiver)
BaiDuSpider
FaceBook bot
Bing Preview bot
A PHP script
Suspected bot masqurading as Mozilla
rpt-httpclient
TITAN
MSNBot-media
Common *nix tool for automating web document retireval. Most likely a bot.
SurveyBot
Jakarta commons-httpclient
Java (Often spam bot)
Unknown robot (identified by ‘scanner’)
Unknown robot (identified by ‘checker’)Unknown robot (identified by ‘bot*’) он больше всех нагружает.
у любого запроса есть user agent, или бывает даже что это пустая строка, слово «bot» встречается много где, я бы не стала явно банить.
MJ12bot
грузят, какая то сео контора которая анализирует ссылки, robots.txt уважают
WordPress
как внутренние запросы (cron!) , так и внешние trackback/pingback , банить не стоит
Python-urllib
скрипт на питоне, автор не потрудился выставить UserAgent, обычно спам
Baidu
китайский «гугл», иногда сильно тупит, не уважает robots.txt
Jakarta commons
лет 6 назад спамили, давно не вижу
могу показать то что блокирую я, у меня для nginx
set $block_user_agents 0; if ($http_user_agent ~ "360Spider") { set $block_user_agents 1; } if ($http_user_agent ~ "SEOkicks-Robot") { set $block_user_agents 1; } if ($http_user_agent ~ "Indy Library") { set $block_user_agents 1; } if ($http_user_agent ~ "libwww-perl") { set $block_user_agents 1; } if ($http_user_agent ~ "GetRight") { set $block_user_agents 1; } if ($http_user_agent ~ "GetWeb!") { set $block_user_agents 1; } if ($http_user_agent ~ "Go!Zilla") { set $block_user_agents 1; } if ($http_user_agent ~ "Download Demon") { set $block_user_agents 1; } if ($http_user_agent ~ "Go-Ahead-Got-It") { set $block_user_agents 1; } if ($http_user_agent ~ "URLGrabber") { set $block_user_agents 1; } if ($http_user_agent ~ "Java") { set $block_user_agents 1; } if ($http_user_agent ~ "Ezooms") { set $block_user_agents 1; } if ($http_user_agent ~ "Jakarta") { set $block_user_agents 1; } if ($http_user_agent ~ "TurnitinBot") { set $block_user_agents 1; } if ($http_user_agent ~ "ZmEu") { set $block_user_agents 1; } if ($http_user_agent ~ "CCBot/") { set $block_user_agents 1; } if ($http_user_agent ~ "SISTRIX") { set $block_user_agents 1; } if ($http_user_agent ~ "CrystalSemanticsBot") { set $block_user_agents 1; } if ($http_user_agent ~ "ScreenerBot") { set $block_user_agents 1; } if ($http_user_agent ~ "BLEXBot") { set $block_user_agents 1; } if ($http_user_agent ~ "WebBot-FindUrl") { set $block_user_agents 1; } if ($http_user_agent ~ "sukibot_heritrix") { set $block_user_agents 1; } if ($block_user_agents = 1) { return 403; }
вообще прогоните свои логи через webalizer или другой анализатор и посмотрите кто досаждает на вашем сайте, а дальше уже баньте, если они вам не нужны и перегружают сайт, чужие списки не есть хорошо
Если бот называет так — Alexa (IA Archiver)
название этого бота нужно указывать полностью или только Alexaif ($http_user_agent ~ "Alexa") { set $block_user_agents 1; } if ($http_user_agent ~ "Alexa (IA Archiver)") { set $block_user_agents 1; }
первый или второй вариант будет правильным?
не копируйте это в .htaccess , работать не будет
это правила для nginxдля .htaccess (Apache) http://httpd.apache.org/docs/2.2/mod/mod_setenvif.html
SetEnvIfNoCase User-Agent «Alexa» bad_bot
хотя лично я Alexa бы банить не стала, может когда нибудь получится в топ 1000 попасть 😀
Админ хостинга заблокировали бота Navigator вот таким вариантом
RewriteEngine on RewriteCond %{HTTP_USER_AGENT} Navigator [NC] RewriteRule ^(.*)$ – [F,L]
какой вариант использовать лучше? или без разницы.
я давно не использую Apache, почитайте сами оригинал документации
http://httpd.apache.org/docs/2.2/mod/mod_rewrite.htmlили в сети есть переводы и другие руководства.
///
разница в использовании разных модулей mod_rewrite / mod_setenvif, возможно rewrite будет быстрее и потреблять меньше ресурсов сервера, надо тестировать 😀https://wordpress.org/plugins/bad-behavior/
еще можете вот этот плагин посмотреть,
бот конечно дойдет до PHP, но БД и движок вордпресса грузить не будет, помогает даже от ботов которые маскируются под поисковики, хотя на самом деле таковыми не являются, плагин раньше регулярно обновлялся, сейчас — не знаю, надеюсь что обновляется.Заблокировал больше 10 ботов, но нагрузка по прежнему зашкаливает, воспользуюсь плагином, возможно он блокирует боты правообладателей)
в чем выражается зашкаленность нагрузки?
что у вас за хостинг?боты — неизбежное зло, траффик от ботов в мире превышает 60%
полностью всех не перебанить и не переблочитьsprinthost.ru — очень чувствительный к нагрузкам, если вылезать за тариф будет иногда выдавать сообщение о перегрузке.
Писал им, чтоб провели диагностику, но у них одни мысли — перевести на более дорогой тариф. Попросил отчет о нагрузках на сервер, нашел там несколько ботов и заблокировал.Могу показать скрин с нагрузками,
Мой сайт http://kinoklik.net/
ясно, так и подумала что шаред хостинг шлет «письма счастья»
отчет был бы интересен вот примерно такой
http://storage7.static.itmages.ru/i/14/1229/h_1419877407_3388821_ffe7f26a5a.pngзеленые точки стоят у «нормальных» поисковых ботов
красные — у тех, которые «ненормальные» и если это не ваша личная инициатива — их стоило бы забанить, только не копируйте сразу эти агенты в свои правила бана, там банить нечего, кроме того Xenu Link Sleuth я бы весьма рекомендовала для проверки сайта на битые ссылки, Link Checker — хуже
откровенно плохие злобные боты у меня в ТОП 50 не попалисиние точки стоят там где user agent вызывает подозрение на то что он был подделан, или слишком старое, или необычное сочетание или что-то было пропущено, например указано «Trident» без версии IE
AhrefsBot — СЕО контора какая-то, я их пока не баню, но полезность их под сомнением, поэтому стоят обе точки… на усмотрение.
отчет составлен webalyzer по обычному логу сервера (формат apache combined), у вас должен быть доступ. Если на хосте нет вебалайзера, можно скачать лог и проанализировать локально. Есть вроде версия для венды тоже.
Ну Лог у меня есть за 27 число, утром его частично проанализировал. Вот статистика посещений, ботов и т.д. http://kinoklik.net/awstats/
Только в ней не все боты отображаются. По поводу webalyzer спрошу у админов хостинга, возможно они об этом даже не слышали)Есть еще бот, который через каждых 5 минут спамит в комментариях ВК, банить аккаунты бесполезно, этого бота вычислить и заблокировать было бы чудесно, но скорей всего он не перегружает сайт.
- Тема «Незванные роботы нагружают сайт» закрыта для новых ответов.