SEO/Marketing

Robots.txt

Co je to robots.txt?

Robots.txt je jednoduchý textový soubor umístěný v kořenovém adresáři vašeho webu, který říká vyhledávačům (Google, Seznam, Bing a dalším), které části webu mohou procházet a indexovat a které ne. Představte si ho jako ceduli u vchodu do budovy, která ukazuje, kam mohou návštěvníci vstoupit a kam mají zákaz. Soubor se vždy nachází na adrese vasestranka.cz/robots.txt a jeho úkolem je řídit chování robotů vyhledávačů – tedy automatizovaných programů, které procházejí webové stránky a ukládají jejich obsah do databází vyhledávačů.

Robots.txt používá jednoduchý textový formát založený na direktivách (příkazech), které určují pravidla pro přístup. Tento soubor je součástí takzvaného Robots Exclusion Protocol – standardu, který respektují všichni seriózní vyhledávače. Je důležité si uvědomit, že robots.txt není bezpečnostní nástroj – je to pouze zdvořilá prosba k robotům. Slušné roboty (jako Google) ji respektují, ale zlomyslní hackeři nebo spam roboti ji mohou ignorovat. Proto nikdy nepoužívejte robots.txt k ochraně citlivých dat.

Pro většinu webů je robots.txt důležitý z hlediska SEO optimalizace. Pomáhá řídit, jak vyhledávače procházejí váš web, šetří jejich crawl budget (limit zdrojů, které vyhledávač věnuje vašemu webu) a zabraňuje indexování duplicitního nebo nepodstatného obsahu. Správně nastavený robots.txt může výrazně zlepšit, jak vyhledávače vnímají strukturu a obsah vašeho webu. Často obsahuje také odkaz na XML sitemap, který vyhledávačům usnadňuje orientaci.

Jak robots.txt funguje v praxi?

Když robot vyhledávače (například Googlebot) přijde na váš web, první věc, kterou udělá, je pokus o načtení souboru robots.txt z kořenové URL vašeho webu (například www.vasestranka.cz/robots.txt). Pokud soubor existuje, robot si přečte pravidla a řídí se jimi při procházení webu. Pokud robots.txt neexistuje, robot považuje celý web za přístupný a volně ho prochází.

Pravidla v robots.txt platí pro konkrétní roboty (user-agenty) a jejich chování se skládá ze dvou základních příkazů: Disallow (zakázat přístup) a Allow (povolit přístup). Robot se řídí tím pravidlem, které je nejspecifičtější pro danou cestu. Je důležité vědět, že robots.txt funguje jen pro slušné roboty – roboti vyhledávačů jako Google nebo Seznam ho respektují, ale spam roboti nebo hackeři ho mohou ignorovat. Proto soubor robots.txt není bezpečnostní opatření a neměl by být používán k ochraně citlivých dat.

Robots.txt také často obsahuje direktivu Sitemap, která vyhledávačům říká, kde najdou XML sitemapu – strukturovaný seznam všech stránek webu. To výrazně usnadňuje indexaci a pomáhá vyhledávačům objevit všechny důležité stránky. Správně nastavený robots.txt je jeden z prvních kroků kvalitního technického SEO.

Základní syntaxe robots.txt

  • User-agent

  • Definuje, pro jakého robota platí následující pravidla. Hvězdička (*) znamená všichni roboti. Můžete specifikovat konkrétní roboty jako Googlebot (Google), SeznamBot (Seznam) nebo Bingbot (Bing). Příklad: User-agent: *

  • Disallow

  • Zakazuje robotovi přístup k určité cestě nebo adresáři. Prázdný Disallow (Disallow:) znamená, že je vše povoleno. Příklad: Disallow: /admin/ (zakáže přístup do administrace)

  • Allow

  • Explicitně povoluje přístup k určité cestě, i když je nadřazený adresář zakázán. Používá se pro výjimky. Příklad: Allow: /admin/public/ (povolí přístup do této konkrétní podsložky)

  • Sitemap

  • Říká robotům, kde najdou XML sitemapu webu. Pomáhá vyhledávačům efektivně objevit všechny důležité stránky. Příklad: Sitemap: https://www.vasestranka.cz/sitemap.xml

  • Crawl-delay

  • Nastavuje čekací dobu mezi požadavky robota (v sekundách). Pozor – Google tuto direktivu ignoruje. Používá se hlavně pro Seznam a Bing, pokud chcete snížit zátěž serveru.

Příklad jednoduchého robots.txt:

User-agent: *
Disallow: /admin/
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /cgi-bin/
Disallow: /*.pdf$

Sitemap: https://www.vasestranka.cz/sitemap.xml
                    

Proč je robots.txt důležitý pro SEO?

Robots.txt hraje klíčovou roli v technickém SEO. Hlavní přínos spočívá v řízení crawl budgetu – tedy množství zdrojů, které vyhledávač věnuje procházení vašeho webu. Každý web má omezený crawl budget. Pokud robot ztrácí čas procházením nepodstatných stránek (jako administrace, duplicitní obsah, parametry filtrace v e-shopu), nemusí stihnout zaindexovat důležité stránky. Robots.txt vám umožňuje směrovat roboty jen tam, kde je to opravdu potřeba.

Dalším důležitým aspektem je prevence duplicitního obsahu. Mnoho webů generuje stejný obsah na různých URL adresách – například kvůli parametrům třídění, filtrům, session ID nebo tisknutelným verzím stránek. Pomocí robots.txt můžete zabránit indexování těchto duplicit a nasměrovat sílu vašeho webu do správných kanonických URL. To je zvlášť důležité pro e-shopy a větší weby s dynamicky generovaným obsahem.

Robots.txt také pomáhá chránit soukromé nebo citlivé oblasti webu před indexací – nikoliv však před přístupem. Můžete zablokovat indexaci stagingových prostředí, interních vyhledávacích výsledků, košíků nebo dočasných stránek. Je však kritické si uvědomit, že robots.txt je veřejně přístupný – kdokoliv si ho může přečíst. Proto nikdy neblokujte cesty jako /tajne-dokumenty/ nebo /administrace-hesla/ – tím je přímo zveřejníte všem. Pro skutečnou ochranu musíte použít autentizaci nebo firewall.

Správně nastavený robots.txt také pomáhá optimalizovat rychlost indexace nového obsahu. Když robot neprocházívá zbytečné stránky, má více zdrojů na procházení důležitého obsahu. To znamená, že nové články nebo produkty budou zaindexovány rychleji, což je klíčové pro aktuální témata nebo sezónní produkty.

Co můžete blokovat pomocí robots.txt

  • Administrační rozhraní

  • Blokování cest jako /admin/, /wp-admin/, /user/ nebo /login/ zabrání zbytečnému procházení interních nástrojů a administrace, které nemají co dělat ve vyhledávání.

  • Duplicitní obsah a parametry

  • E-shopy často generují tisíce URL kvůli filtrům, třídění a parametrům. Můžete blokovat URL obsahující ?sort=, ?filter=, ?sessionid= a podobné parametry, které vytváří duplicity.

  • Technické adresáře

  • Složky jako /cgi-bin/, /tmp/, /cache/, /includes/, /scripts/ obsahují technické soubory, které nemají přidanou hodnotu pro návštěvníky a nezaslouží si indexaci.

  • Soubory určitých typů

  • Pomocí koncovek můžete blokovat PDF soubory, obrázky, videa nebo dokumenty. Například Disallow: /*.pdf$ zablokuje všechny PDF. Pozor však – blokování obrázků může negativně ovlivnit SEO pro obrázky v Google Images.

  • Vyhledávací výsledky a stránkování

  • Interní vyhledávání (např. /search?q=) nebo stránkování s parametry (?page=2) často vytváří nepodstatný obsah. Blokování těchto cest pomáhá udržet indexaci čistou.

  • Stagingové a testovací prostředí

  • Pokud máte testovací verzi webu na subdoméně (např. test.vasestranka.cz), určitě ji zablokujte celou pomocí Disallow: / – předejdete problémům s duplicitním obsahem.

Časté chyby při nastavení robots.txt

  • Zablokování celého webu

  • Nejčastější a nejhorší chyba – direktivou Disallow: / zablokujete celý web a vyhledávače ho přestanou indexovat. Váš web zmizí z Google. Vždy pečlivě kontrolujte, co blokujete.

  • Blokování CSS a JavaScriptu

  • Google potřebuje přístup k CSS a JS souborům, aby správně renderoval stránky. Blokování těchto souborů může negativně ovlivnit SEO, zejména pro mobilní web. Direktivy jako Disallow: /css/ nebo Disallow: /*.js$ jsou škodlivé.

  • Použití robots.txt jako ochrany citlivých dat

  • Robots.txt je veřejně přístupný soubor! Blokováním cesty jako /tajne-dokumenty/ přímo sdělujete světu, že tam něco je. Pro skutečnou ochranu použijte heslo, firewall nebo jiné bezpečnostní mechanismy.

  • Špatná syntaxe a překlepy

  • Jedna chyba v syntaxi může způsobit, že celý robots.txt přestane fungovat. Časté problémy jsou mezery navíc, chybějící dvojtečka, nebo špatné kódování souboru. Vždy soubor otestujte v Google Search Console.

  • Nerespektování case-sensitive cest

  • Robots.txt rozlišuje velká a malá písmena. Disallow: /Admin/ je něco jiného než Disallow: /admin/. Buďte konzistentní a držte se struktury cest vašeho webu.

  • Blokování stránek místo noindex meta tagu

  • Pokud chcete stránku úplně vyloučit ze vyhledávání, nestačí ji zablokovat v robots.txt – mohla by se stále zobrazit, pokud na ni vede odkaz odjinud. Pro úplné vyloučení použijte meta tag robots s hodnotou noindex.

Rozdíl mezi robots.txt a meta robots tag

Je důležité rozlišovat mezi souborem robots.txt a meta robots tagem – oba řídí chování vyhledávačů, ale fungují odlišně a mají různá použití. Robots.txt zabraňuje robotům navštívit stránku – říká jim: „Nejdi tam, tato cesta je zakázána." Robot tedy stránku nikdy nenavštíví, nepřečte si její obsah a neví, co obsahuje. Problém je, že pokud na tuto stránku někdo odkáže z jiného webu, může se URL stále zobrazit ve výsledcích vyhledávání (bez popisu, protože robot obsah nezná).

Naproti tomu meta robots tag říká robotovi, co má udělat se stránkou, kterou již navštívil. Robot může stránku navštívit, přečíst si její obsah, ale na základě meta tagu se rozhodne, zda ji zaindexuje (noindex), zda bude následovat odkazy (nofollow) nebo zda zobrazí snippet ve výsledcích (nosnippet). Meta tag je umístěn přímo v HTML hlavičce stránky, například <meta name="robots" content="noindex, follow">.

Kdy použít co? Robots.txt je ideální pro blokování technických adresářů, duplicitního obsahu nebo oblastí, které nemají přidanou hodnotu pro vyhledávání, ale nechcete je úplně skrýt – jen řídit crawl budget. Meta robots tag použijte, když chcete stránku úplně vyloučit ze zobrazení ve výsledcích vyhledávání, nebo když potřebujete říct robotovi, jak se má chovat k odkazům na stránce. Často se používá kombinace obou – robots.txt pro efektivní řízení robotů a meta tag pro přesné řízení indexace konkrétních stránek.

Jak vytvořit správný robots.txt

Vytvoření souboru robots.txt je jednoduché. Prvním krokem je vytvořit textový soubor s názvem přesně „robots.txt" (malými písmeny, bez mezer). Použijte čistý textový editor jako Poznámkový blok (Windows), TextEdit (Mac) nebo pokročilejší editor jako VS Code. Nikdy nepoužívejte Word nebo jiné programy pro úpravu dokumentů – můžou přidat neviditelné znaky, které soubor zničí.

Druhý krok je napsat pravidla podle syntaxe popsané výše. Začněte s User-agent: *, který platí pro všechny roboty. Pak přidejte Disallow direktivy pro cesty, které chcete blokovat. Vždy začněte obecně a pak přidávejte konkrétnější pravidla. Na konci přidejte direktivu Sitemap s URL vaší sitemapy. Pamatujte, že prázdný Disallow: znamená, že je vše povoleno.

Třetí krok je nahrát soubor do kořenového adresáře vašeho webu pomocí FTP nebo správce souborů v hostingu. Soubor musí být přístupný na adrese vasestranka.cz/robots.txt – nikde jinde. Pokud máte HTTPS, funguje i https://vasestranka.cz/robots.txt. Ujistěte se, že server vrací HTTP status 200 (OK), nikoliv 404 (nenalezeno).

Čtvrtý krok je otestovat soubor v Google Search Console pomocí nástroje „robots.txt tester". Ten vám ukáže, jak Google váš soubor interpretuje, zda jsou chyby v syntaxi a zda konkrétní URL je povolená nebo zakázaná. Tento krok je kritický – odhalí většinu chyb před tím, než způsobí škody. Seznam.cz má podobný nástroj v Seznam Webmaster.

Pátým krokem je pravidelná kontrola a aktualizace. Robots.txt není „postav a zapomeň" – měl by se vyvíjet s vaším webem. Když přidáte nové sekce, administraci, nebo změníte strukturu webu, zkontrolujte, zda robots.txt stále odpovídá vašim potřebám. Pravidelně sledujte v Search Console, zda se neobjevují problémy s blokovanými zdroji nebo neočekávaně blokovanými stránkami.

Nejčastější otázky o robots.txt

Kde se nachází soubor robots.txt? Rozbalit

Soubor robots.txt musí být vždy umístěn v kořenovém adresáři webu a být dostupný na URL vasestranka.cz/robots.txt. Nesmí být nikde jinde – vyhledávače ho hledají vždy přesně na této adrese. Pokud máte víceúrovňovou doménu (např. poddoménu), každá může mít vlastní robots.txt.

Je robots.txt povinný pro každý web? Rozbalit

Ne, není povinný. Pokud robots.txt neexistuje, vyhledávače procházejí celý web. Nicméně pro většinu webů je doporučený – umožňuje kontrolovat, co se indexuje, a optimalizovat crawl budget. Malé jednoduché weby často robots.txt nepotřebují, ale větší weby a e-shopy z něj výrazně profitují.

Zabrání robots.txt zobrazení stránky ve výsledcích vyhledávání? Rozbalit

Ne úplně. Robots.txt zabraňuje robotům navštívit stránku, ale pokud na ni vede odkaz odjinud, může se ve výsledcích zobrazit bez popisu. Pro úplné vyloučení ze vyhledávání použijte meta tag robots s hodnotou noindex – to řekne robotovi, aby stránku navštívil, ale nezobrazoval ji ve výsledcích.

Můžu robots.txt použít k ochraně citlivých dat? Rozbalit

Ne! Robots.txt je veřejně přístupný soubor a každý si ho může přečíst. Nikdy v něm neblokujte cesty obsahující citlivé informace – tím je přímo zveřejníte. Pro ochranu dat použijte heslo, firewall nebo jiné bezpečnostní mechanismy. Robots.txt je jen nástroj pro řízení robotů vyhledávačů, nikoliv bezpečnostní ochrana.

Jak často by se měl robots.txt aktualizovat? Rozbalit

Robots.txt byste měli aktualizovat vždy, když výrazně měníte strukturu webu, přidáváte nové sekce nebo chcete optimalizovat indexaci. Pro běžné weby stačí kontrola každé 3-6 měsíců. Pro e-shopy a větší weby doporučuju pravidelnou měsíční kontrolu a sledování v Google Search Console, zda nejsou problémy s blokovanými zdroji.

Související pojmy