Robots.txt: účel, omezení a role v moderním SEO

Robots.txt: účel, limity a místo v moderním SEO

Robots.txt je textový soubor umístěný v kořenovém adresáři hostitele (např. https://www.priklad.sk/robots.txt), který poskytuje vyhledávacím robotům (crawlerům) instrukce, které části webu mohou nebo nesmí procházet. Ačkoliv se nejedná o bezpečnostní mechanismus a nebrání přímo v přístupu, správné nastavení významně ovlivňuje crawl budget, rychlost indexace a konzistenci dat pro AIO/AEO a moderní SEO.

Základní struktura souboru a směrnice

  • User-agent: definuje, pro který robot platí blok pravidel (např. User-agent: * pro všechny).
  • Disallow: cesta, kterou robot nesmí procházet (např. Disallow: /admin/).
  • Allow: cesta, kterou robot smí procházet, typicky k upřesnění výjimky v rámci zakázaného adresáře (např. Allow: /admin/help.html).
  • Sitemap: odkaz na XML soubor(y) s mapou stránek (např. Sitemap: https://www.priklad.sk/sitemap.xml), může být uveden i vícekrát a není nutné jej uvádět v sekci konkrétního agenta.
  • Crawl-delay: nestandardní směrnice, kterou některé vyhledávače respektují; Google ji ignoruje. Slouží ke zpomalení počtu dotazů.
  • Host a Clean-param: proprietární směrnice (např. pro Yandex); Google je nevyužívá.

Pravidla shody cest, specifičnost a pořadí

V moderních implementacích (např. Googlebot) platí, že se uplatní nejvíce specifické pravidlo vzhledem k dané URL. Vzory mohou používat zástupné znaky * (libovolná posloupnost znaků) a $ (konec řetězce). Příklady:

  • Disallow: /vyhladavanie/* zablokuje vše pod /vyhladavanie/.
  • Allow: /vyhladavanie/povolené vytvoří výjimku pro konkrétní cestu.
  • Disallow: /*?session= cíluje URL s parametrem session.
  • Disallow: /*.pdf$ cíluje URL končící příponou .pdf.

Rozdíl mezi procházením a indexací

Disallow zabraňuje procházení, nikoliv nutně indexaci. Pokud na zablokovanou URL směřuje mnoho odkazů, může se objevit v indexu bez obsahu (bez snippetu). Pro zamezení indexace použijte noindex v meta tagu nebo v HTTP hlavičce X-Robots-Tag – to však vyžaduje, aby byla stránka procházetelná. Pokud URL blokujete v robots.txt, robot se k meta tagu nedostane. Proto u citlivých URL používejte autentifikaci nebo kontrolu přístupu; robots.txt není bezpečnostní bariéra.

Umístění, rozsah a více hostitelů

  • Robots.txt je per hostitel a protokol: https://sub.priklad.sk/robots.txt se vztahuje pouze na sub.priklad.sk a protokol HTTPS. http:// a jiné subdomény vyžadují vlastní soubor.
  • Pro vícejazyčné verze na subdoménách nebo CDN vytvořte samostatné robots.txt na každém hostiteli.
  • Maximální velikost zpracování je limitovaná (např. Google zpracuje jen prvních cca 500 kB). Dlouhé soubory udržujte štíhlé a odstraňte nadbytečné komentáře.

HTTP odpovědi a chování crawlerů

  • 200 OK: pravidla se aplikují.
  • 404/410: znamená „robots.txt neexistuje“, crawler implicitně nic neblokuje.
  • 5xx nebo dočasné selhání: některé crawlery dočasně omezí nebo odloží procházení, aby server nezatěžovaly.
  • Robots.txt se cacheuje; změny se nemusí projevit okamžitě. Zohledněte to při nasazování.

Sitemap v robots.txt a jejich vliv

Direktiva Sitemap: usnadňuje objevování XML sitemap a feedů (např. Sitemap: https://www.priklad.sk/sitemap-index.xml). Uveďte i sitemapu pro obrázky či video, pokud existují. Umístění do robots.txt není povinné – alternativou je odeslání do Search Console nebo deklarace v HTTP hlavičkách odpovědi.

Interakce s dalšími direktivami a standardy

  • Meta robots (<meta name="robots" content="noindex,nofollow">) působí až po procházení stránky. Pokud URL zablokujete v robots.txt, robot meta tag neuvidí.
  • X-Robots-Tag v HTTP hlavičce umožňuje globální řízení (např. pro PDF soubory: X-Robots-Tag: noindex, nofollow).
  • rel=“nofollow“ u odkazů neblokuje crawl cílové URL, pouze snižuje přenos signálů; pokud chcete reálně snížit zátěž crawl, použijte robots.txt nebo jiné mechanismy.

Strategie pro crawl budget a výkon

Dobře navržený robots.txt pomáhá směrovat crawl na hodnotné stránky a minimalizovat šum. V rámci velkých webů (e-commerce, zpravodajství) je vhodné blokovat generované filtry a nekonečné kombinace parametrů, které nepřinášejí přidaný obsah. Současně však neblokujte kritické zdroje (CSS/JS), aby si vyhledávače udržely schopnost správně renderovat layout a hodnotit Core Web Vitals.

Doporučené vzory pro běžné scénáře

  • Základ pro všechny agenty:
    User-agent: *
    Disallow: /admin/
    Disallow: /krok-platby/
    Allow: /admin/help.html
    Sitemap: https://www.priklad.sk/sitemap.xml
  • Precizní cílení parametrů:
    User-agent: *
    Disallow: /*?sort=
    Disallow: /*&sort=
    Disallow: /*?session=
    Disallow: /*&session=
  • Výjimka v zakázaném adresáři:
    User-agent: *
    Disallow: /statika/
    Allow: /statika/logo.svg
  • Specifické pravidlo pro bota (např. rychlejší zpravodajský bot):
    User-agent: NewsBot
    Disallow:
    User-agent: *
    Disallow: /interní/
  • Blokování typů souborů (zvažte vhodnost):
    User-agent: *
    Disallow: /*.zip$
    Disallow: /*.bak$

Nejčastější chyby a jak se jim vyhnout

  • Neúmyslné zablokování CSS/JS: pravidla typu Disallow: /wp-includes/ mohou bránit renderingu. Ujistěte se, že kritické zdroje zůstávají dostupné.
  • Blokování stránek, které mají být indexovány: zablokování /produkt/ povede k absence snippetů a horšímu výkonu ve vyhledávání.
  • Spoléhání se na robots.txt pro „noindex“: není podporováno; používejte meta tagy nebo HTTP hlavičky.
  • Přemíra rozporuplných pravidel: crawleři aplikují nejvíce specifické pravidlo; přeplněné a protichůdné zápisy zvyšují riziko chyb.
  • Chybějící soubor na subdoménách: každý hostitel potřebuje vlastní robots.txt, jinak se implicitně nic neblokuje.

Robots.txt a AIO/AEO: vliv na odpovědi asistentů

Asistenti a LLM systémy stále častěji respektují signály o přístupu k obsahu a rychlosti. Rozumný robots.txt, který zabraňuje procházení bezcenných parametrů a povoluje render kritických zdrojů, zlepšuje dostupnost reprezentativního obsahu a stabilitu metrik (LCP/INP/CLS). Přispívá tak ke kvalitnějším citacím, odpovědím a doporučením v AIO/AEO kanálech.

Proces řízení změn, QA a měření dopadu

  • Vytvořte staging a validujte syntaktické chyby (např. duplicitní znaky, mezery, neviditelné znaky).
  • Logujte přístupy na /robots.txt a sledujte chování klíčových crawlerů po změně.
  • Ověřte pokrytí v nástrojích vyhledávačů (např. reporty o procházení a indexaci) a porovnejte crawl rate před/po.
  • Průběžně auditujte pravidla; co bylo užitečné včera (blokování starých parametrů), může být překážkou po redesignu.

Šablona pro udržitelný robots.txt

Jednoduchá, komentovaná kostra, kterou můžete přizpůsobit:

  • # ZÁKLAD: povol vše, blokuj pouze skutečný šum
  • User-agent: *
  • # Administrativa a soukromí
  • Disallow: /admin/
  • Disallow: /kosik/krok-platby/
  • # Parametry bez hodnoty pro indexaci
  • Disallow: /*?sort=
  • Disallow: /*&sort=
  • # Výjimky pro kritické assety
  • Allow: /assets/css/
  • Allow: /assets/js/
  • # Sitemapy
  • Sitemap: https://www.priklad.sk/sitemap.xml
  • Sitemap: https://cdn.priklad.sk/sitemap-cdn.xml

Testování a validace bez rizika

  • Ověřte, zda se soubor nachází na správné URL a vrací 200 OK s text/plain.
  • Simulujte pravidla na reprezentativních URL (produkty, kategorie, filtry, obsahové články).
  • Sledujte renderovatelnost: blokované CSS/JS zjistíte i v nástrojích pro náhled renderu a v logech požadavků.

„Recepty“ pro specifické CMS a scénáře

  • E-shop s filtrováním: blokujte kombinace parametrů, které netvoří unikátní obsah. Použijte vzory s * a explicitní výjimky pro hodnotné landingy.
  • Zpravodajský web: neblokujte archivy ani stránkování, ale omezte interní vyhledávání (/hladat/), pokud generuje duplicity.
  • Vícejazyčný web: každý hostitel/subdoména má vlastní robots.txt; udržujte konzistenci pravidel napříč jazyky.
  • Soubory ke stažení: zvažte X-Robots-Tag: noindex v odpovědi serveru pro PDF/ZIP, pokud je nechcete v indexu, a neupravujte je pouze přes robots.txt.

Minimalistický, přesný a auditovatelný robots.txt

Úspěšný robots.txt je stručný, přesně cílený a pravidelně auditovaný. Snižuje šum v crawl, chrání rozpočet, zachovává renderovatelnost a nepodkopává indexaci. V kombinaci se sitemapami, meta/X-Robots-Tag a kvalitní architekturou webu tvoří stabilní základ pro moderní SEO i pro AIO/AEO – aby se k hodnotnému obsahu dostali jak lidé, tak asistenti.