CRAWL-01

robots.txt žádá prodlevu, kterou audit nemohl dodržet v plné výši

InfoPřístup pro crawlery

Co kontrola měří

Stejně jako SCOPE-02 ani tenhle nález nepopisuje vadu vašeho webu: popisuje, co jsme při auditu museli udělat my, a proč.

Ve vašem robots.txt je direktiva Crawl-delay a žádá delší prodlevu mezi požadavky, než kolik unese jeden audit. Hodnotu jsme proto ořízli na strop 5 sekund. Report uvede obě čísla: co soubor žádal a co jsme skutečně použili.

Těch 5 sekund není zdvořilostní odhad, ale spočítaná hranice (config/thresholds.json#crawler.crawl_delay.max_respected_seconds). Placený audit prochází až 200 stránek a na celý běh má 1 800 sekund. Při prodlevě 5 s zabere samotné procházení zhruba 1 000 s a na analýzu i generování souborů zbyde ~800 s, tedy víc, než trvá celý běžný audit. Při 10 s by chtělo samotné procházení 2 000 s a audit by na časovém stropu spadl zaručeně, i kdyby zbytek běžel plnou rychlostí. Pět sekund je tedy nejvyšší hodnota, která se do rozpočtu ještě vejde.

Platí vždy pomalejší z dvojice: naše vlastní tempo (dva požadavky za sekundu na doménu, tedy 0,5 s) a vaše hodnota. Cizí soubor nás tedy může jen zpomalit, nikdy zrychlit; Crawl-delay: 0.1 s námi nehne. Skupina se vybírá stejně jako u Disallow: nejspecifičtější shoda na náš token přebíjí User-agent: *.

Co kontrola nedělá:

  • Nevzniká, když jsme prodlevu dodrželi celou. Hodnota do 5 sekund včetně nás zpomalí a nález se neobjeví; respektovali jsme ji beze zbytku.
  • Neposuzuje, jestli je vaše hodnota rozumná. Server, který víc než jeden požadavek za deset sekund opravdu neunese, má Crawl-delay: 10 po právu. Nález říká jen to, že jsme ho nedodrželi.
  • Neignoruje rozbitý zápis, ale ani na něm nepadá. Crawl-delay: abc, záporné číslo nebo „10 sekund“ se přeskočí a jedeme vlastním tempem. robots.txt je cizí, nedůvěryhodný vstup.
  • Nezkracuje audit. Prodleva ovlivnila jen tempo, ne počet stránek. Kolik stránek se prošlo a proč, řeší SCOPE-02.
  • Nečte jiné direktivy. Zákazy (Disallow) vynucuje crawler dál a nezávisle; to je ACC-01.

Nález je na úrovni celého webu, závažnost informativní: do skóre se nepromítá vůbec (config/scoring.json, váha info je 0). Za nastavení vlastního serveru vám skóre klesat nemá.

Jak silný důkaz za tím stojí

Efekt nedoložený

Doporučujeme to, protože to neuškodí nebo to má jiný užitek, ale vliv na to, jestli vás jazykové modely budou citovat, neslibujeme. Nikdo ho zatím nedoložil.

Na viditelnost v odpovědích AI to nemá vliv ani v jednom směru a tenhle nález vám nic nedoporučuje. Třída „efekt nedoložený“ je tu proto, že jinou pro nález, který není doporučení, nemáme.

Doložené je něco jiného, a je to podstatné, pokud Crawl-delay používáte jako ochranu serveru: jako ochrana nefunguje spolehlivě, protože většina robotů ji nečte.

RobotBere Crawl-delay v úvahu?
GooglebotNe. Vlastní dokumentace Googlu vyjmenovává podporovaná pole a dodává: „other fields such as crawl-delay aren't supported“.
BingbotAno, podle vlastní dokumentace Bingu.
YandexNe, od 22. února 2018. Do té doby ano; dnes se rychlost nastavuje v jejich nástrojích pro webmastery (jejich vlastní dokumentace).
AmazonbotNe. Vlastní dokumentace Amazonu to říká výslovně: „They do not support the crawl-delay directive“ (ověřeno 2026-09-14).
Ostatní AI crawleřiNevíme. Prošli jsme primární dokumentaci robotů, které sledujeme (config/ai-bots.json). Crawl-delay v ní kromě Amazonbota žádný z nich nezmiňuje. Neznamená to, že ho nečtou; znamená to, že to nikdo z nich neslibuje.

K tomu jedna věc, kterou je fér říct rovnou: Crawl-delay není součástí standardu. RFC 9309 z roku 2022 standardizoval User-agent, Allow, Disallow a Sitemap, nic víc. Direktiva je rozšíření, které kdysi zavedl Yahoo/MSN, a každý robot si ji vykládá po svém: někdo jako sekundy mezi požadavky, někdo jako váhu.

Praktický závěr: proti robotovi, který na váš server tlačí, je Crawl-delay prosba, ne pravidlo. Kdo ji nečte, tím není nijak omezený. Účinné je omezení na straně serveru nebo pravidlo na WAF; ta platí pro všechny bez ohledu na to, co si přečetli.

Jak to opravit

Nejdřív rozhodněte, do které ze dvou situací patříte. Jsou to úplně jiné případy a pletou se:

SituaceCo udělat
Hodnota odpovídá skutečné kapacitě serveruNechte ji být. Audit jsme kvůli ní jen zpomalili, ne zkrátili: dostali jste plný rozsah, jen trval déle. Nález berte jako potvrzení, že jsme si vašeho přání všimli.
Hodnota je překlep nebo dědictví staré konfiguraceSnižte ji. Hodnoty jako Crawl-delay: 86400 (jeden požadavek za den) se v praxi vyskytují a bývají omylem; obvykle se zkopírovaly z cizí šablony.

Jak poznat, o který případ jde: podívejte se do logů serveru na dobu odpovědi při souběžných požadavcích. Web, který zvládne návštěvnický provoz, zpravidla zvládne i dva požadavky za sekundu od jednoho robota.

Pokud opravdu potřebujete roboty přibrzdit, vsaďte na něco, co platí i pro ty, kdo Crawl-delay nečtou:

  • Omezení na straně serveru nebo na WAF: jediná možnost, která funguje bez ohledu na dobrou vůli robota.
  • Google Search Console: rychlost procházení Googlebotem se řídí tam, ne v robots.txt (Google má na to vlastní stránku, odkaz níž).
  • Bing Webmaster Tools: Bingbot Crawl-delay respektuje, ale nastavit se dá i přímo v jejich nástrojích.
  • Odpověď 429 Too Many Requests: standardní způsob, jak robotovi říct „zpomal“. Na rozdíl od 403 a 401 ji roboti umí zpracovat; Google to ve své dokumentaci k omezení rychlosti výslovně uvádí.

A co s tím nedělat: nezvyšujte hodnotu proto, aby vás náš audit nechal na pokoji. Vyšší číslo ho nezpomalí víc než na těch pět sekund a jediné, co tím získáte, je pomalejší procházení od robotů, kterým na vašem obsahu záleží.

Co o tom říká report

Popis nálezu

Váš robots.txt žádá prodlevu [declaredSeconds] s mezi požadavky (direktiva Crawl-delay). Crawl jsme kvůli tomu zpomalili, ale jen na jeden požadavek za [appliedSeconds] s. Delší prodleva se nevejde do času vyhrazeného jednomu auditu a audit by skončil chybou dřív, než by stihl projít web. Procházeli jsme tedy pomaleji, než je naše běžné tempo (dva požadavky za sekundu na doménu), ne však tak pomalu, jak si soubor říká.

Doporučení

Pokud je hodnota překlep nebo dědictví staré konfigurace, snižte ji. Crawl-delay podle vlastní dokumentace respektuje Bingbot, takže při takhle vysoké hodnotě mu projití rozsáhlejšího webu zabere dny až týdny. U ostatních robotů se na něj spolehnout nedá: Yandex ho od 22. února 2018 podle své dokumentace nebere v úvahu vůbec a AI crawleři z `config/ai-bots.json` ho ve své dokumentaci buď nezmiňují vůbec, nebo jeho podporu výslovně popírají. Amazonbot podle vlastní dokumentace direktivu Crawl-delay nepodporuje. Googlebot direktivu podle vlastní dokumentace ignoruje úplně (rychlost procházení si řídí sám, měnit ji lze v Search Console), takže jako ochrana serveru před zátěží nefunguje spolehlivě; na to je účinnější omezení na straně serveru nebo pravidlo na WAF. Crawl-delay navíc není součástí standardu robots.txt (RFC 9309); je to rozšíření, které si každý robot vykládá po svém. Pokud hodnota naopak odpovídá skutečné kapacitě serveru, nechte ji být. Audit jsme kvůli ní jen zpomalili, ne zkrátili.

Zdroje

Text ověřen 2026-09-13