Košík je prázdný

Blokace botů

Internetový bot, nebo-li Web crawler prochází weby na internetu za účelem vytvoření obrovské databáze/indexu. Navštěvuje automaticky veškeré dostupné Webové stránky a vytváří databázi obsahu, přístupů, architektury..

Řešit boty má cenu! Správným nastavením přístupu botů můžete výrazně upravit rychlost webu a jeho bezpečnost. Boti přistupují na váš web neustále. V některých případech i desítky botů v jednom okamžiku, stovky až tisíce prošlých stránek za vteřinu.

 

Výkon webu

Malé weby a eshopy obvykle řešit boty vůbec nemusí. Bot přistoupí na web a během pár vteřin projde cely web. Zátěž webu na server se malinko zvýší a zas hned opadne.
Rozsáhlé weby jsou ale problém. Bot přistoupí na web a zahájí indexaci webu, která může trvat pár minut, ale také i pár hodin. Zátěž webu na server se zvýší a neustále stoupá až do nedostupnosti serveru. Klasickým příkladem jsou eshopy, nepoužívajicí cache, s více jak 100 000 produkty. Dobře postavený eshop obvykle nezpůsobí velkou zátěž a indexace botem projde hravě. I tak může nastat problém, pokud se takových botů sejde více naráz.

Naštěstí je možné rychlost dobrých botů ovlivnit přidáním nastavení do /robots.txt

Crawl-Delay: 10 - Číslovka 10 definuje počet vteřin mezi indexací další stránky.

nebo ovlivnit rychlost procházení přímo v rozhraní bota/vyhledávače.

 

Bezpečnost

Každý web má části, které nechcete, aby byly vyhledatelné. Obvykle přístupy do administrace, soubory pro partnery apod. Zamezením přístupu pro dobré boty můžete jednoduše udělat v robots.txt:

User-agent: *
Disallow: /Admin

= Všechny boti mají zakázáno přistupovat na adresu /Admin

Nebo můžeme zakázat indexaci jen některým botum:

User-agent: googlebot
Disallow: /B2B

= Zakazuji googlu přistupovat do adresáře B2B. Google však může procházet ostatní části webu. Ostatní boti mohou procházet vše.

 

Dobrý vs. Zlý bot

A proč mluvíme v celém článku o dobrém botu? Dobrý bot je takový bot, který respektuje pravidla napsaná do robots.txt, nebo jeho nastavení lze upravit v jeho admin rozhraní.

Dobrý bot:

  • Boty vyhledávačů
  • Boty hlídání dostupnosti webů a serverů
  • CDN Cachovací boty (MaxCDN, Cloudflare, CDN77, Akamai,...)

Zlý bot:

  • Boty marketingových agentur
  • Boty hlídání cen konkurence
  • Boty SEO nástrojů
  • Boty na prolomení validace vstupu pomocí brutal force (/wp-admin)
  • Boty napadající weby pomocí SQL injekce

 

Jak zablokovat přístup zlých botu na web?

Jediná možnost je blokace botů skrze .htaccess

Můžete blokovat IP adresu botů:

Order Deny,Allow
Deny from 111.111.111.111

Ale zlý boti mění často IP adresu, nebo rovnou přistupují z více IP rozsahů naráz.

Je tedy potřeba přistoupit k blokaci botů podle jména.

SetEnvIfNoCase User-Agent "SemrushBot" bad_user
SetEnvIfNoCase User-Agent "semrush" bad_user
Deny from env=bad_user

Konkrétní zápis na blokaci nejotravnějšího bota Semrush


 Připravili jsme pro Vás zápis, který blokuje většinu současných zlých botů. Stačí vložit do .htaccess:

RewriteEngine on

SetEnvIfNoCase User-Agent "SemrushBot" bad_user
SetEnvIfNoCase User-Agent "semrush" bad_user
SetEnvIfNoCase User-Agent "BlackWidow" bad_user
SetEnvIfNoCase User-Agent "ChinaClaw" bad_user
SetEnvIfNoCase User-Agent "Custo" bad_user
SetEnvIfNoCase User-Agent "DISCo" bad_user
SetEnvIfNoCase User-Agent "eCatch" bad_user
SetEnvIfNoCase User-Agent "EirGrabber" bad_user
SetEnvIfNoCase User-Agent "EmailSiphon" bad_user
SetEnvIfNoCase User-Agent "EmailWolf" bad_user
SetEnvIfNoCase User-Agent "ExtractorPro" bad_user
SetEnvIfNoCase User-Agent "EyeNetIE" bad_user
SetEnvIfNoCase User-Agent "FlashGet" bad_user
SetEnvIfNoCase User-Agent "GetRight" bad_user
SetEnvIfNoCase User-Agent "GetWeb!" bad_user
SetEnvIfNoCase User-Agent "Go!Zilla" bad_user
SetEnvIfNoCase User-Agent "Go-Ahead-Got-It" bad_user
SetEnvIfNoCase User-Agent "GrabNet" bad_user
SetEnvIfNoCase User-Agent "Grafula" bad_user
SetEnvIfNoCase User-Agent "HMView" bad_user
SetEnvIfNoCase User-Agent "MegaIndex.ru" bad_user
SetEnvIfNoCase User-Agent "HTTrack" bad_user
SetEnvIfNoCase User-Agent "InterGET" bad_user
SetEnvIfNoCase User-Agent "JetCar" bad_user
SetEnvIfNoCase User-Agent "larbin" bad_user
SetEnvIfNoCase User-Agent "LeechFTP" bad_user
SetEnvIfNoCase User-Agent "Navroad" bad_user
SetEnvIfNoCase User-Agent "NearSite" bad_user
SetEnvIfNoCase User-Agent "NetAnts" bad_user
SetEnvIfNoCase User-Agent "NetSpider" bad_user
SetEnvIfNoCase User-Agent "NetZIP" bad_user
SetEnvIfNoCase User-Agent "Octopus" bad_user
SetEnvIfNoCase User-Agent "PageGrabber" bad_user
SetEnvIfNoCase User-Agent "pcBrowser" bad_user
SetEnvIfNoCase User-Agent "RealDownload" bad_user
SetEnvIfNoCase User-Agent "ReGet" bad_user
SetEnvIfNoCase User-Agent "SiteSnagger" bad_user
SetEnvIfNoCase User-Agent "SmartDownload" bad_user
SetEnvIfNoCase User-Agent "SuperBot" bad_user
SetEnvIfNoCase User-Agent "SuperHTTP" bad_user
SetEnvIfNoCase User-Agent "Surfbot" bad_user
SetEnvIfNoCase User-Agent "tAkeOut" bad_user
SetEnvIfNoCase User-Agent "VoidEYE" bad_user
SetEnvIfNoCase User-Agent "WebAuto" bad_user
SetEnvIfNoCase User-Agent "WebCopier" bad_user
SetEnvIfNoCase User-Agent "WebFetch" bad_user
SetEnvIfNoCase User-Agent "WebLeacher" bad_user
SetEnvIfNoCase User-Agent "WebReaper" bad_user
SetEnvIfNoCase User-Agent "WebSauger" bad_user
SetEnvIfNoCase User-Agent "WebStripper" bad_user
SetEnvIfNoCase User-Agent "WebWhacker" bad_user
SetEnvIfNoCase User-Agent "WebZIP" bad_user
SetEnvIfNoCase User-Agent "Widow" bad_user
SetEnvIfNoCase User-Agent "WWWOFFLE" bad_user
SetEnvIfNoCase User-Agent "Zeus" bad_user
SetEnvIfNoCase User-Agent "AhrefsBot" bad_user
SetEnvIfNoCase User-Agent "DotBot" bad_user
SetEnvIfNoCase User-Agent "BaiduSpider" bad_user
SetEnvIfNoCase User-Agent "CCBot" bad_user
SetEnvIfNoCase User-Agent "MJ12bot" bad_user
SetEnvIfNoCase User-Agent "SiteAnalyzerbot" bad_user
SetEnvIfNoCase User-Agent "BLEXBot" bad_user

SetEnvIfNoCase User-Agent "Uptimerobot" bad_user
SetEnvIfNoCase User-Agent "AspiegelBot" bad_user
SetEnvIfNoCase User-Agent "VelenPublicWebCrawler" bad_user
SetEnvIfNoCase User-Agent "Xenu Link Sleuth" bad_user
SetEnvIfNoCase User-Agent "sarpstatbot" bad_user
SetEnvIfNoCase User-Agent "ZoominfoBot (zoominfobot at zoominfo dot com)" bad_user
SetEnvIfNoCase User-Agent "Nimbostratus-Bot" bad_user
SetEnvIfNoCase User-Agent "SEOkicks" bad_user
SetEnvIfNoCase User-Agent "Seekport Crawler" bad_user
SetEnvIfNoCase User-Agent "Alphabot" bad_user
SetEnvIfNoCase User-Agent "magpie-crawler" bad_user
SetEnvIfNoCase User-Agent "LinkpadBot" bad_user
SetEnvIfNoCase User-Agent "Linguee bot" bad_user
SetEnvIfNoCase User-Agent "Semtix.cz" bad_user
SetEnvIfNoCase User-Agent "Statusoid" bad_user
SetEnvIfNoCase User-Agent "BananaBot" bad_user
SetEnvIfNoCase User-Agent "CFNetwork" bad_user
SetEnvIfNoCase User-Agent "python-request" bad_user
SetEnvIfNoCase User-Agent "FirmoGraph" bad_user
SetEnvIfNoCase User-Agent "PetalBot" bad_user

SetEnvIfNoCase User-Agent "TombaPublicWebCrawler" bad_user

SetEnvIfNoCase User-Agent "barkrowler" bad_user
SetEnvIfNoCase User-Agent "serpstatbot" bad_user
SetEnvIfNoCase User-Agent "Archive Team" bad_user
SetEnvIfNoCase User-Agent "Barkrowler" bad_user

SetEnvIfNoCase User-Agent "Sogou web spider" bad_user

Deny from env=bad_user

 

Poslední aktualizace: 01.01.2021