Kas yra kanoninė žyma?

Kanoninė žyma yra nedidelė kodo dalis, įterpta į tinklalapį, kuri gali padėti paieškos varikliams susidoroti su keliomis to paties puslapio versijomis. Jį palaiko trys populiariausi paieškos varikliai, todėl žiniatinklio valdytojai gali nurodyti pageidaujamą adresą turiniui, kuris gali būti dubliuojamas. Paieškos sistemos paprastai patenkina šią užklausą ir indeksuodami puslapius naudoja pageidaujamą adresą, tačiau tam tikromis aplinkybėmis gali jo nepaisyti. Kanoninės žymos, kurios iš tikrųjų yra elementas žyma, gali būti naudojama tiek santykiniam, tiek absoliučiam keliui, bet paprastai negali pereiti per domenus.

2009 m. pradžioje trys pagrindiniai paieškos varikliai sutiko naudoti kanoninę žymą, kad padėtų susidoroti su pasikartojančiu turiniu internete. Panašius arba identiškus tinklalapius dažnai galima pasiekti iš kelių žiniatinklio adresų arba vienodų išteklių vietovių (URL), pvz., http://example.com, http://www.example.com ir http://www.example. com/index.php. Turinio valdymo sistemos, el. prekybos platformos ir wiki programinė įranga taip pat gali generuoti puslapius dinamiškai, naudojant šiek tiek skirtingus URL, siekiant pakeisti kategorijos rūšiavimo tvarką, sekti filialų nuorodas arba pasiekti ankstesnes straipsnio ar puslapio versijas.

Pasikartojantys puslapiai su šiek tiek skirtingais adresais gali prieštarauti paieškos variklio algoritmams, kurie naudoja nuorodų populiarumą, kad nustatytų, kur puslapis yra paieškos rezultatuose. Tinklalapis su 300 nuorodų, nukreipiančių į du skirtingus URL, paieškos variklio indeksavimo programinei įrangai gali atrodyti kaip vienas puslapis, kuriame yra tik 150 nuorodų. Paieškos varikliai istoriškai sprendė šią problemą, siūlydami pageidaujamus URL nustatymus savo žiniatinklio valdytojo įrankiuose, kurdami savo vidinius algoritmus, kad atspėtų tinkamiausią adresą, ir paklusdami 301 peradresavimui – serverio sugeneruotam būsenos kodui, kuris persiunčia užklausas nauju URL.

Kanoninė žyma yra būdas žiniatinklio kūrėjams pažymėti konkretų URL kaip pageidaujamą puslapio versiją. Tai nedidelis kodo fragmentas, kuris turi būti įterptas į visus tinklalapius, kuriuose yra panašus arba pasikartojantis turinys, tačiau nereikia keisti žiniatinklio serverio nustatymų. Dauguma paieškos sistemų tai traktuoja kaip „stiprią užuominą“, o ne komandą, o tai reiškia, kad kanoninė žyma, kuri buvo netinkamai įdiegta arba nukreipia į visiškai kitą puslapį, gali būti nepaisoma. Kodas prasmingas tik paieškos sistemoms; žiniatinklio naršyklės nepaiso kanoninių žymų.

Nepaisant pavadinimo, kanoninė žyma nėra tikra „žyma“, o elementas, kurį galima pritaikyti plačiai naudojamiems žyma. Puslapis pažymėtas kodu praneštų paieškos varikliui, kad pageidaujamas arba kanoninis turinio URL yra http://www.example.com/about.html. Kodo dalis „rel=canonical“ nurodo paieškos varikliui, kad „href=“ esantis URL yra kanoninė nuoroda. Skirtingai nuo 301 peradresavimo, kanoninė žyma gali būti naudojama tiek absoliučiame, tiek santykiniame keliais, nors kai kurios paieškos sistemos rekomenduoja naudoti absoliučiuosius kelius. Tačiau 301 peradresavimai gali nukreipti į kitą domeną, o dauguma paieškos sistemų palaiko tik kanonines nuorodas tame pačiame domene.