Satan, SEO a Subdomény - VOL I. - Chaos přichází plíživě

Využití subdomén jako základního strukturálního elementu není žádná velká novinka. Heureka díky tomu získala téměř legendární pověst. Od založení našeho webu uplynulo více než 10 let. Doba pokročila. Webové technologie se vyvíjí kupředu mílovými kroky. Výchozí podmínky pro přežití v internetové divočině se mění každý den. Ať už vlivem vývojářských zásahů, updaty vyhledávačů nebo aktivitami webmasterů konkurenčních webů. Panta rhei.[^1] Vše plyne. A podléhá nevyhnutelným změnám v nezastavitelném kyberprostoru.

Nedává smysl se schovávat za pozlátko legend, SEO mýtů a nesmyslné fikce. Žijeme v době, kdy jsou dezinformace na vzestupu a je třeba s tímto fenoménem bojovat. Rozhodli jsme se proto poodhalit útroby jednoho z největších českých webů. Trošku tím snad přispějeme k vzdělávání nejen odborné veřejnosti. Především však chceme rozbít spoustu nepravdivých informací a „mýtus subdomény“.

Stručná terminologická odbočka

V rámci tohoto textu je výrazem „subdoména“ myšlena doména třetího řádu (elektronika.heureka.cz). Výrazem „doména“ je myšlena doména druhého řádu (heureka.cz). TLD (Top Level Domain) nelze interpretovat jinak. A (sub)domény nižších řádů jsou vždy číslovány, například „doména čtvrtého řádu“ (test.elektronika.heureka.cz).

Subdoména jakožto nositel byznysového úspěchu

Rovnou hned zkraje je nutné vyvrátit jeden z nejrozšířenějších mýtů. Dlouhodobý úspěch Heureky a subdomény nemají nic moc společného. Firmy a weby jsou úspěšné díky dobrému managementu, chytře zvolené strategii, skvělým službám, unikátním produktům, silné konkurenceschopnosti a tak podobně. Naopak firmy a weby kupodivu nebývají úspěšné díky validnímu HTML, použití subdomén či adresářů, (ne)formálnímu dress code, dokonce ani díky čistým záchodům.

Čistý kód i čistý záchod jsou výsledky lidské činnosti, která je odvislá od různých faktorů. Například rozhodnutí managementu najmout schopného programátora a pořádkumilovnou uklízečku. A těmto poskytnout adekvátní pracovní prostředky. Za příznivých okolností se pak mohou dostavit pozitivní efekty, které mají přesah i do dalších procesů a přispět k úspěchu firmy.

Replikovat nějaký proces nebo výsledek bez detailní znalosti všech okolností je zpravidla odsouzeno k neúspěchu. Domnívat se, že subdomény jsou zárukou úspěchu a snažit se to napodobit, je ekvivalentem úklidu toalet bez použití jakýchkoliv úklidových a čisticích prostředků.

Detail, který zpravidla nevidíte, je ten, že uklízečka používá mop vymáchaný v kýblu s čistou vodou a Savem.[^2] Výsledkem její činnosti je čistá toaleta. Výsledkem neodborně replikované činnosti s absencí pravidelně měněné vody a adekvátních prostředků bude místnost, kam se většina uživatelů nebude chtít vracet.

Bez detailní znalosti celého procesu a faktického pozadí vlastně ani nemáte šanci odhalit temnější a rizikovější stranu reality. Replikujete geniální strategii nebo dobře ukrytý průšvih? Subdomény totiž klidně mohou být jen kýbl glorifikovaných pekelných sraček samotného Satana, které mnozí obdivují a považují za křišťálově čistý Rajec s příchutí kaštanu.[^3] Úspěch, prostě a jednoduše, netkví v subdoménách. Tečka.

Stručná historie subdomén Heureky

Heureka byla založena v roce 2007.[^4] Web hned od samotného začátku využíval subdomény pro stavbu stromu kategorií. Na startu ve veřejné betě tehdy bylo přibližně 30 subdomén, které povětšinou fungují dodnes. Například elektronika.heureka.cz, notebooky.heureka.cz či mobilni-telefony.heureka.cz.

Historický snapshot z Web Archive. Rok 2007 a beta verze Heureky.

Po ukončení bety a spuštění Heureky do plného provozu se strom kategorií průběžně rozrůstal. Postupně bylo založeno cca 2500 kategorických subdomén. Mezi jedny z posledních patří například roboticke-vysavace.heureka.cz či auta.heureka.cz.

Další zásadní přírůstek se objevil v roce 2009. Heureka začala více pracovat se značkami a vznikly takzvané „brandové koutky“. Subdomény zasvěcené značkám a výrobcům. Například sony.heureka.cz nebo nikon.heureka.cz. Jednalo se o celkem logický tah. Naneštěstí po technické a strategické stránce nebyl úplně domyšlený a dlouhodobě efektivní. V průběhu let vzniklo přibližně 60.000 brandových subdomén.

Jako poslední v roce 2010 vzniklo něco, čemu říkáme „parametrické sekce“. Ty byly vytvářeny novým nestandardním postupem. Základem těchto sekcí byly vybrané kategorie se specificky zvolenou kombinací filtrů (např. mobilni-telefony.heureka.cz/f:1666:101069/), které byly překlopeny do speciálního izolovaného systému nového typu subdomény (např. iphone.heureka.cz). Výsledkem byla poslední úroveň kategorického stromu, která vznikala replikací části webu z vyšší úrovně stromu. Finální počet bylo necelých 1000 parametrických subdomén.

Následující roky byly příznivé a žádné další opravdu zásadní typy subdomén již nevznikaly. Výjimkou je pouze mobilní verze webu z roku 2013 (respektive původně 2009 jako WAP verze).

Rekapitulace stavu subdomén v roce 2018

  • Základní, systémové, mobilní a externí subdomény (www, m, blog, info, darky) ~20 subdomén.
  • Kategorické subdomény (notebooky, mobilni-telefony, elektronika) ~2500 subdomén.
  • Brandové subdomény (sony, nikon, apple) ~60.000 subdomén.
  • Parametrické subdomény (herni-notebook, android-telefony, xbox-360) ~1000 subdomén.

Úplně přesné číslo neznáme, ale finální součet se pohybuje někde kolem 65.000 subdomén. Hezký základ pro kvalitní SEO nebo spoustu problémů?

Postuláty chaosu

Subdomény jako základní stavební prvek byly z určitého hlediska geniálním tahem. Teoreticky nabízí možnost vytvoření jasně ohraničeného a kontrolovatelného prostředí. Pomocí subdomén skutečně vznikají jasně ohraničené tematické (eko)systémy. Ovšem v žádném případě se v jakékoliv fázi existence Heureky nejedná o uzavřené a kontrolovatelné prostředí. Spíše naopak.

Komplexita webu již během prvních let své existence narostla do dlouhodobě neudržitelného a neanalyzovatelného stavu. Desítky tisíc subdomén a stovky miliard URL. Někde velice silně a kvalitně propojené pomocí logických vazeb. Někde zase propojení připomínalo spíše úzké hrdlo láhve blokující efektivní ranking a crawling. A naopak na okrajích systémů naprosto nekontrolovatelně bují „nádory” v podobě gigantických spider traps, masivních sebereplikujících se duplicit a thin contentu.

Celkově se bavíme o počtu URL, který se pohybuje přes sextilion. 20^21. 1 000 000 000 000 000 000 000 URL.[^5] Celkem bez problémů to může být i o několik řádů více. Nemá smysl se snažit dopočítat přesnějšího čísla. Sextilion už je dostatečně daleko za hranicí šílenství.

Každý web má teoreticky potenciál být nekonečným. A z určitého úhlu pohledu je každá subdoména svým způsobem samostatný web. Ve chvíli, kdy existuje 65.000 subdomén, existuje také 65.000 spících průserů s potenciálem nekonečné a nekontrolovatelné expanze.

Diskrétní webové modely

Způsobů, jak minimalizovat potenciální problémy s webem, je mnoho. Jedním z cílů dobrého webmastera by měla být limitace autonomního růstu webu v oblastech s potenciálem nekonečné expanze. Vyžaduje to extrémní důslednost, pozornost a poměrně hluboké znalosti mnoha oblastí.

Jako rychlý příklad může posloužit známý celulární automat[^6] Game of Life.[^7] Na základě čtyř triviálních pravidel vzniká fascinující a až nevídaně komplexní 8-bitový „život“. Velkou výhodou experimentování s celulárními automaty je možnost omezit prostor a dobu trvání jejich existence.

Ukázka celulárního automatu Game of Life

Základních webových pravidel, která existují a která je nutné definovat, existuje podstatně více. Prostor i čas mají extrémní limity. Potenciálních proměnných, různých stavů a externích vlivů existují desítky až stovky.

V subdoménovém světě pak mohou vznikat samostatné systémy, které mohou začít tak trochu žít svým vlastním životem. Je nutné dodat, že je úplně jedno, zda se bavíme o složkách nebo doménách nižších řádů. K totožným problémům může dojít všude. U domén nižších řádů je ovšem detekce zpravidla komplikovanější, protože hledáme atypické vzorce chování v subsystémech, které mají svoje vlastní unikátní sady pravidel častěji, než je obvyklé u adresářů.

Extrémní technické limity

Běžné webové systémy bohužel nikdy nebudou diskrétními[^8] modely. Kyberprostor je dynamické neustále se měnící prostředí. Naštěstí alespoň pravidla existence webů a domén mají nějaké hranice. Týkají se primárně limitů DNS (Domain Name System), prohlížečů, vyhledávačů a různých protokolů.

Ukázka limitů prohlížečů a DNS

  • Maximální povolená délka celého doménového jména je 255 znaků.[^9]
  • Maximální délka doménového labelu je 63 znaků.[^10]
  • Maximum potenciálních úrovních domén nižších řádů je 127.
  • Sitemaps protokol stanovuje, že v atributu musí být počet znaků menší než 2048.[^11]
  • Maximální délka URL v adresním řádku Internet Exploreru je 2083 znaků a maximální délka cesty v URL může být jen 2048 znaků.[^12]
  • Obecně doporučená a optimální délka URL je pod 2000 znaků.

Napříč různými platformami pak existují různé limity. Například Chrome by měl v adresním řádku zvládnout až 32779 znaků. Ale obecně doporučované je držet maximální délku URL pod 2000 znaků, jak je uvedeno výše. Je to univerzální a nejvíce bezpečné řešení.

Podstatný je v této chvíli fakt, že nějaká omezení existují. Tím pádem existuje i relativně limitovaný počet validních a strojově zpracovatelných URL, což je alespoň trochu pozitivní zpráva.

Limity nástrojů

Aby mohl webmaster mít nad webem větší kontrolu, tak potřebuje nástroje. Ty mají také svoje limity. Google Search Console (dále jen GSC) je bez pochyby jeden ze zásadních diagnostických nástrojů.

Do roku 2015 byl v GSC limit 100 properties na jeden účet. Pro Heureku s 65.000 subdoménami bychom tedy potřebovali cca 650 účtů, ze kterých bychom data pomocí API spojovali v nějakém dalším nástroji typu Keboola.

V roce 2015 se limit změnil na 1000 properties. Stačilo by teoreticky jen 65 účtů pro kompletní pokrytí Heureky.

V roce 2019 přišla částečná záchrana v podobě GSC properties na doménové úrovni.[^13] Máme tedy konečně k dispozici data za celý web. Nicméně stále není možné filtrovat podle subdomén a pro ty klíčové tedy musíme i nadále zakládat samostatné properties. A z podstaty věci pak ani nelze subdoménová data nějakým způsobem shlukovat do logických datových celků a analyzovat je.

Google Analytics také nejsou nijak zvlášť příznivý nástroj k subdoménám. Je možné je vyhodnocovat, ale dost zásadní problém je vyhodnocení nějakého většího logického celku, například všechny subdomény, které spadají do větve kategorií foto.heureka.cz. To je možné řešit pomocí věcí jako Content Grouping. Ale základním předpokladem je správně a velice důsledně nastavená analytika.

Poslední zmínka patří access logům a Kibaně. Ani zde není možné kvalitně vyhodnocovat cokoliv kolem subdomén. Absence možnosti použití klasických regex výrazů je ničivá. Lucene[^14] ani jiný z mnoha integrovaných dotazovacích jazyků (DSL, KQL, RexeP) není vhodný pro tvorbu komplexnějších queries.

Prostřednictvím subdomén jsme sami sebe dlouhodobě omezili v mnoha věcech. Detailní analytika nebyla možná. Pracovali jsme pouze se zlomkem dat, se kterým nebylo možné mít nad webem adekvátní kontrolu.

SEO na hraně chaosu

Po určitém čase začalo na webu docházet v nepravidelných intervalech k „náhodným“ problémům. Drobné a zdánlivě neškodné vývojové zásahy v kombinaci s nedůsledně nastavenými pravidly chování webu způsobily rozsáhlé řetězové reakce, které se dokázaly zacyklit v potenciálně nekonečném počtu iterací.

Díky nedokonalostem v analytice a absencí kompletních dat z Google Search Console jsme byli z určité části slepí vůči mnoha existujícím problémům. Dostali jsme se na takzvanou „hranu chaosu“.[^15]

Jak již bylo nastíněno. Weby nejsou diskrétními systémy. Jsou ovlivňované mnoha externími vlivy. Ale také se nejedná o čistě stochastické[^16] a nekonečné systémy. Ve svém jádru weby podléhají sadě relativně jednoduchých pravidel a vzorců chování. Úkolem webmastera je tyto pravidla znát a umět je správně nastavit. V praxi se často jedná o různé fail-safe mechanismy.[^17] Například automatické redirecty z HTTP na HTTPS. Ošetření lomítek na konci URL. A tak podobně.

Postupem času se minimalizací či ideálně eliminací nekontrolovatelných (chaotických) elementů stává z webu entita řízená pevně stanovenými pravidly. Vnitřní změny se stávají lépe předvídatelnými, spočitatelnými a měřitelnými.

Nemrtvé je třeba řezat zaživa

Celá Heureka se mění. Vzniká nový responzivní design. Starý monolitický kód je transformován do mikroslužeb. Ideální příležitost změnit i přístup k SEO. Místo kvantity jsme se rozhodli vydat cestou kvality a pořádně říznout do roky zanedbaného prohnilého svinstva.

Možná se budete ptát: „Proč? Přece to fungovalo. Tak proč to měnit?“ Ale ono to dlouhodobě nefungovalo, jen to nebylo na první pohled zřejmé. Subdomény už dávno dosáhly svého stropu a růst se zasekl. Detailní analýzy nám pomohly odhalit zásadní nedostatky a ukázaly, že větší zásah je nezbytně nutný. Některé části webu byly více mrtvé, než živé. Mnohé samy sebe kanibalizovaly v organických i placených kanálech. Zvrhý kanibalský zombie moloch na setrvačník.

Plánování, promýšlení důsledků, analýzy a validace zabraly skoro rok. V některých případech i více. Měnit 12 let budovanou strukturu webu není zrovna legrace. Nicméně bylo potřeba zasáhnout dříve, než se definitivně a nenávratně přehoupneme za hranu chaosu. Lepší řezat ještě do živého, než resuscitovat mrtvolu a doufat, že se podaří alespoň nějaké životní funkce obnovit.

Závěr

První lehce teoretický úvodní článek končí. Seriál o subdoménách začíná. V příštím článku s podtitulem „Protinádorová SEOterapie“ detailně představíme, jak jsme z webu chirurgicky vyřezali 1000 parametrických subdomén. Primární zaměření budou praktické postupy, in-house nástroje a užitečné tipy pro webmastery.


Seriál o SEO a subdoménách

  • Satan, SEO a Subdomény - VOL I. - Chaos přichází plíživě
  • Satan, SEO a Subdomény - VOL II. - Protinádorová SEOterapie
  • Satan, SEO a Subdomény - VOL III. - Řízená SEOcida plošným vypalováním
  • Satan, SEO a Subdomény - VOL IV. - TBD
  • Satan, SEO a Subdomény - VOL V. - TBD
  • Satan, SEO a Subdomény - VOL VI. - TBD

Disclaimer

K textu přistupujte obezřetně. Tento článek a celý seriál neslouží jako návod. Texty neobsahují žádné „univerzální“ pravdy. Každý web představuje unikátní systém s různými výchozími podmínkami. Je nutný individuální přístup a perfektní znalost konkrétního webu i dané problematiky.

Článek popisuje náš web. Nijak nehodnotíme obecnou efektivitu subdomén či adresářů. Ani nedoporučujeme žádné konkrétní řešení. Opět se jedná o silně individuální záležitost, kterou ovlivňuje mnoho faktorů.

Strategie a detailní plány pro některé zde popsané aktivity vznikaly více než rok. Vše bylo mnohokrát diskutováno, průběžně testováno a validováno. Myslete na to, prosím, až budete podobné aktivity sami dělat.

Některá uvedená data mohou být nepřesná a účelově zkreslená. Konkrétní čísla, jako jsou například statistiky organické návštěvnosti, revenue, konverze a podobně, nemáme z pochopitelných důvodů v plánu vypustit ven. Klíčové informace, jako jsou počty subdomén, URL a naše postupy, jsou však uvedeny pravdivě bez přikrášlení.

Texty mohou obsahovat pokročilé koncepty a modely, které nejsou v oblasti SEO úplně standardní. Články je proto doplněny o poznámky pod čarou se zdroji, kde je vše detailně vysvětlené.


Poznámky:

[^1] Panta rhei: https://en.wikipedia.org/wiki/Heraclitus.

[^2] Savo. Oblíbený čisticí prostřek, silná chemikálie, žíravina. Nemá léčivý efekt, nenahrazuje očkování!

[^3] Máte rádi kaštany? Podělte se s námi o zkušenosti s vodou Rajec Kaštan: https://vody.heureka.cz/rajec-kastan-1_5l-pet/.

[^4] O Heurece: https://cs.wikipedia.org/wiki/Heureka.cz.

[^5] Používáme anglosaské číslovky, kde výraz „sextilion“ označuje 10^21: https://en.wikipedia.org/wiki/Orders_of_magnitude_(numbers)#1021.

[^6] Celulární automaty: https://en.wikipedia.org/wiki/Cellular_automaton.

[^7] Game of Life: https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life.

[^8] Diskrétní matematika: https://en.wikipedia.org/wiki/Discrete_mathematics.

[^9] Různé limity URL viz odstavec 2.3.4 v RFC 1035: https://www.ietf.org/rfc/rfc1035.txt.

[^10] Viz též poznámka 9.

[^11] Limit znaků v sitemapách viz sekce XML tag definitions: https://www.sitemaps.org/protocol.html.

[^12] Znaky v adresním řádku IE: https://support.microsoft.com/cs-cz/help/208427/maximum-url-length-is-2-083-characters-in-internet-explorer.

[^13] Domain Level v GSC: https://webmasters.googleblog.com/2019/02/announcing-domain-wide-data-in-search.html.

[^14] Lucene: https://www.elastic.co/guide/en/kibana/current/lucene-query.html.

[^15] Hrana chaosu: https://en.wikipedia.org/wiki/Edge_of_chaos.

[^16] Stochastika: https://cs.wikipedia.org/wiki/Stochastika.

[^17] Fail-safe: https://en.wikipedia.org/wiki/Fail-safe.

<hr>

Nejsme asociálové

Twitter

Na Twitteru můžeš sledovat, na čem děláme


GitHub

Na GitHubu můžeš sledovat, jak to děláme
Follow us on GitHub

Instagram

A na Instagramu, že se u toho i skvěle bavíme
Follow us on Instagram

YouTube

Na život se musí chytře ;)
Follow us on YouTube
<hr>