Přejít na obsah

Nastavení cookies

Zvolte, které druhy cookies povolíte. Svou volbu můžete kdykoli změnit přes Nastavení cookies v dolní části každé stránky. Prohlášení o ochraně osobních údajů

Nezbytné

Vždy zapnuté

Potřebné pro přihlášení, uchování košíku a zapamatování vašich voleb. Jsou vždy zapnuté.

Které cookies?
  • weboke_sessie, weboke_klant, weboke_remember: vaše relace a trvalé přihlášení
  • weboke_basket: váš košík
  • wkBtwIncl: zobrazení cen s DPH nebo bez DPH
  • wok_cookies: vaše volba cookies, 12 měsíců

Měří, která reklama vede k návštěvě nebo objednávce, abychom neplatili za reklamy, které nic nepřinášejí.

Které cookies?
  • Google Ads přes Google Tag Manager (_gcl_au, _gcl_aw), až 90 dní
  • OpenAI Ads, reklamy v ChatGPT
  • wok_aff: partner, který vás k nám doporučil (partnerský program), 60 dní

4,6

Země a jazyk

Každá země má vlastní web s cenami a DPH dané země.

Zobrazit

robots.txt: co blokovat a co ne

Modul 3: Technický základ stránky · Doba čtení: 13 minut

Cíl lekce: Po této lekci umíte přečíst a napsat soubor robots.txt, sami spočítat, zda Googlebot smí na určitou adresu, vysvětlit, co se stane, když soubor chybí nebo je nedostupný, a víte, proč robots.txt není zabezpečení ani noindex.

Klíčové pojmy: robots.txt (RFC 9309), crawler, skupina, User-agent, Disallow, Allow, nejdelší shoda, stejná délka (vyhrává Allow), * a $, Sitemap:, stavový kód souboru robots.txt (4xx, 5xx), 500 KiB, 24 hodin v mezipaměti, žádné zabezpečení, žádný noindex, AI crawlery (Google-Extended, GPTBot)

Cedulka u vchodových dveří

Soubor robots.txt je obyčejný textový soubor v kořenové složce Vašeho webu, vždy na stejné adrese: https://www.example.com/robots.txt. Slušný crawler (lekce 1.2) si tento soubor vyžádá jako první a přečte si, které části webu nesmí navštívit. Je to cedulka u vchodových dveří, ne zámek: Googlebot a Bingbot ji respektují, ale robot se zlými úmysly si cedulku prostě přečte a jde dál.

Od roku 2022 je protokol oficiálním internetovým standardem: RFC 9309. Google navíc přesně popisuje, jak Googlebot soubor čte. V této lekci vycházíme z obou zdrojů.

Několik pevných pravidel:

  • Soubor je v kořenové složce hostitele. Soubor robots.txt v /blog/robots.txt se nečte.
  • Platí pouze pro daného hostitele, protokol a port. https://www.example.com/robots.txt neplatí pro https://shop.example.com/; ten potřebuje vlastní soubor.
  • Je to prostý text v kódování UTF-8.

Jak je soubor sestaven

User-agent: *
Disallow: /winkelmand/
Disallow: /zoeken
Allow: /zoeken/tips

User-agent: Googlebot
Disallow: /concepten/

Sitemap: https://www.example.com/sitemap.xml

Soubor se skládá ze skupin. Skupina začíná jedním nebo více řádky User-agent: a po nich následují pravidla Disallow: (nenavštěvovat) a Allow: (navštěvovat). Cesta za Disallow: je začátek adresy: Disallow: /zoeken blokuje /zoeken, /zoeken?q=rozen a také /zoekenmachine, protože všechny začínají na /zoeken.

Řádek Sitemap: nepatří k žádné skupině a říká, kde je Vaše sitemap (lekce 3.4). Google vyžaduje úplnou adresu včetně https:// a názvu hostitele.

Pravidlo Disallow: bez cesty neblokuje nic. Disallow: / blokuje vše.

Která skupina platí?

Crawler si vybere jednu skupinu: tu s nejkonkrétnějším názvem, který mu odpovídá. Googlebot se tedy řídí skupinou User-agent: Googlebot, pokud existuje, a skupinu * pak zcela ignoruje. V příkladu výše tedy Googlebot do /winkelmand/ (nákupní košík) smí: toto pravidlo je pouze ve skupině *. Jde o jednu z nejčastějších chyb: kdo vytvoří samostatnou skupinu pro Googlebot, musí v ní zopakovat všechna pravidla, která mají platit i pro Google.

Na velikosti písmen v názvu nezáleží (googlebot = Googlebot). Pokud jsou v souboru dvě skupiny pro stejný crawler, Google je sloučí.

Které pravidlo vyhrává?

V rámci skupiny může jedna adresa spadat pod více pravidel. Pak platí:

  1. Vyhrává nejdelší odpovídající pravidlo (nejkonkrétnější cesta).
  2. Jsou-li Allow a Disallow přesně stejně dlouhé, vyhrává Allow. Google tomu říká „nejméně omezující pravidlo“.

Dva znaky mají zvláštní význam:

ZnakVýznamPříkladZasáhneNezasáhne
*žádný nebo více libovolných znakůDisallow: /*?sessie=/rozen?sessie=12/rozen?kleur=rood
$konec adresyDisallow: /*.pdf$/folder.pdf/folder.pdf?v=2

Příklad výpočtu se skupinou * z ukázky výše, pro crawler Bingbot (který nemá vlastní skupinu):

AdresaOdpovídající pravidlaVýsledek
/winkelmand/Disallow: /winkelmand/nesmí
/zoeken/tipsDisallow: /zoeken (7 znaků) a Allow: /zoeken/tips (12)smí: vyhrává nejdelší
/zoeken?q=rozenDisallow: /zoekennesmí
/bruidsboekettenžádnásmí
/robots.txt(vždy)smí: samotný robots.txt je vždy povolen

Když soubor chybí nebo server selhává

Co Google udělá, závisí na stavovém kódu, kterým Váš server odpoví na /robots.txt:

OdpověďCo Google udělá
200 (nalezeno)Přečte pravidla
Přesměrování (301, 302)Následuje alespoň pět kroků; potom s tím Google zachází jako s 404
4xx, například 404 nebo 403 (kromě 429)Jako by žádný robots.txt neexistoval: vše je povoleno
5xx nebo žádné spojeníPrvních 12 hodin Google web neprochází a zkouší to znovu; potom až 30 dní používá poslední dobrou verzi z mezipaměti. Pokud chyba trvá i potom a web jinak funguje, Google se chová, jako by robots.txt neexistoval

Chybějící robots.txt tedy problém není: pak je povoleno vše. Soubor robots.txt, který vrací chybu serveru, ale problém je: Google pak dočasně přestane web procházet. RFC 9309 je v tom ještě přísnější: u nedostupného souboru musí crawler předpokládat, že je vše zakázáno.

Dále:

  • Google čte nejvýše 500 KiB; co následuje dál, ignoruje.
  • Google obvykle uchovává robots.txt v mezipaměti až 24 hodin. Změna se tedy neprojeví okamžitě. V Search Console najdete v Nastavení přehled robots.txt (robots.txt report): kterou verzi Google naposledy stáhl, s chybami a upozorněními, a tlačítko pro opětovné stažení.
  • Google zná pouze User-agent, Allow, Disallow a Sitemap. Pravidla jako Crawl-delay nebo Noindex Googlebot ignoruje.

Co robots.txt nedělá

Není to zabezpečení

Váš robots.txt si může přečíst kdokoli, i ten, kdo má zlé úmysly. Pravidlo Disallow: /beheer-oud/ naopak ukazuje, kde je něco zajímavého. RFC 9309 to říká samo: pravidla nejsou žádnou formou zabezpečení přístupu. Skutečně chránit obsah můžete heslem nebo tím, že server přístup odmítne, například pomocí .htaccess (viz Další čtení).

Není to noindex

Toto je nejdůležitější poučení. robots.txt řídí procházení, ne indexování (lekce 1.3). Google doslova píše, že robots.txt není způsob, jak udržet stránku mimo Google. Pokud na zablokovanou adresu odkazují jiné weby, může se adresa ve výsledcích vyhledávání přesto objevit, jen bez popisu.

Chcete-li stránku udržet mimo výsledky vyhledávání, použijte noindex (v <meta name="robots"> nebo v hlavičce X-Robots-Tag) nebo stránku ochraňte heslem. A pozor na klasickou past: pokud stránku s noindex zároveň zablokujete v robots.txt pomocí Disallow, Google ji nemůže navštívit, a tedy noindex nikdy nepřečte.

Neblokujte části, které Google potřebuje

Neblokujte složky se styly, skripty nebo obrázky, které Vaše stránka potřebuje ke správnému zobrazení. Google si stránku prohlíží tak, jak to dělá prohlížeč; bez těchto souborů jí rozumí hůř.

AI crawlery

Stále více firem shromažďuje webové stránky pro umělou inteligenci. Některé z nich můžete v robots.txt oslovit:

  • Google-Extended není samostatný robot, ale název v robots.txt, kterým určujete, zda Google smí Váš obsah používat k trénování modelů Gemini a pro grounding. Google uvádí, že to nemá žádný vliv na zařazení ani pozici ve Vyhledávání Google.
  • GPTBot od OpenAI shromažďuje stránky, které mohou být použity k trénování modelů. OAI-SearchBot slouží vyhledávací funkci ChatGPT: pokud ho zablokujete, Váš web se v odpovědích vyhledávání ChatGPT nezobrazí.
User-agent: GPTBot
Disallow: /

Zda to chcete, je Vaše volba, ne technická nutnost. Pokud omylem zablokujete vyhledávacího robota (Googlebot, Bingbot, OAI-SearchBot), budete tam hůře k nalezení.

V praxi: kde je Váš robots.txt?

  • AI Builder od WebOké při publikování sám vytvoří robots.txt s User-agent: *, Allow: / a řádkem Sitemap:. Pokud web nastavíte na neindexovat nebo jde o bezplatné demo, je v souboru Disallow: /.
  • WordPress vytváří virtuální robots.txt s odkazem na sitemap. Pokud do webové složky sami nahrajete soubor robots.txt, má přednost.
  • Vlastní web na hostingovém balíčku: soubor robots.txt nahrajete do webové složky (v DirectAdmin public_html) přes Správce souborů nebo FTP.

U jiných poskytovatelů to funguje podobně: soubor musí být vždy dostupný na /robots.txt Vašeho hostitele.

Shrnutí

  • robots.txt je na /robots.txt každého hostitele a říká slušným crawlerům, co nesmějí navštívit.
  • Crawler se řídí jednou skupinou (nejkonkrétnější název, jinak *). V rámci skupiny vyhrává nejdelší pravidlo; při stejné délce vyhrává Allow.
  • 404 znamená „vše je povoleno“, chyba serveru způsobí, že Google dočasně přestane procházet. Google čte 500 KiB a ukládá do mezipaměti až na 24 hodin.
  • robots.txt není zabezpečení ani noindex. Stránku s noindex v robots.txt neblokujte.
  • AI crawlery jako GPTBot a název Google-Extended můžete řídit zvlášť, bez důsledků pro Vyhledávání Google.

Kvíz

1. V robots.txt je skupina User-agent: * s Disallow: /winkelmand/ a skupina User-agent: Googlebot pouze s Disallow: /concepten/. Smí Googlebot procházet /winkelmand/?



2. Ve skupině pro Googlebot jsou Disallow: /folder a Allow: /folder. Smí na /folder/rozen.html?



3. Váš robots.txt vrací celý týden chybu 503. Co Google udělá?



4. Chcete, aby se stránka /bedankt (poděkování) nezobrazovala v Googlu. Jaký je nejlepší postup?



5. Co se stane ve Vyhledávání Google, když přidáte User-agent: Google-Extended s Disallow: /?



Úkol

Úkol A3.3: Kontrola Vašeho souboru robots.txt. Zadejte svou doménu a k ní tři adresy ze svého webu (například domovskou stránku, stránku produktu a nákupní košík nebo stránku vyhledávání) a u každé adresy svůj odhad: smí ji Googlebot procházet, ano, nebo ne? Program stáhne Váš robots.txt, zkontroluje stavový kód, velikost, skupiny a řádek Sitemap: a u každé adresy spočítá, co Googlebot podle pravidel z této lekce smí. Odpovídá Váš odhad? Nemáte vlastní web? Použijte www.wikipedia.org.

Úkol A3.3: Kontrola Vašeho souboru robots.txt








Co vyplníte a co zjistíme, neukládáme. Váš prohlížeč si pamatuje Vaše odpovědi a to, zda jste úkol splnili. Pokud jste přihlášeni, ukládáme v sekci Moje kurzy pouze to, že jste úkol měli (téměř) správně; i to tam můžete odstranit.

Další čtení

Postupy v těchto článcích platí pro panely WebOké; u jiných poskytovatelů to funguje podobně.

Chvíli strpení…

Nastavení vašich domén

U každé domény nastavte jmenné servery, propojení s hostingem a to, kdo bude držitelem.

Načítání vašich domén…