Minden, amit a Robots.txt-ről tudni érdemes-példákkal bemutatva!

Minden, amit a Robots.txt-ről tudni érdemes-példákkal bemutatva!

Ebben a cikkünkben egy részletes leírást szeretnénk arra adni, hogy mi az a robots.txt. Pontosan hogyan használjuk, és milyen komoly hibákat ne kövessünk el. Lenne szó a gyakori kérdésekről is, amit sokan kevernek, mint fogalmat: mi a különbség az index, follow, feltérképezés között.

Manapság ahhoz, hogy a weboldalaink, webáruházaink sikeresen szerepeljenek a Google keresőjében, elengedhetetlen a megfelelő technikai SEO alkalmazása. Ide alapvetően sok mindent lehetne sorolni: a weboldal gyorsasága, a törött linkek száma, az SSL megléte, és még sorolhatnánk.

Talán az egyik legfontosabb technikai SEO elem a robots.txt fájl megfelelő megléte. Ugyanis abban az esetben, ha valamit rosszul állítunk be itt, könnyen lehet, hogy az egész weboldaluk eltűnik a keresőből, illetve, és könnyedén kézben tarthatjuk vele a feltérképezési büdzsénket.

Habár én magam is használtam már a robots.txt-t technikai SEO beállításokra, természetesen egy kis irodalomkutatást végeztem, mielőtt ezt a cikket megírtam. Ebből adódóan nem szeretném titkolni, hogy mennyire színvonalasnak találtam a Yoast ide vágó blogcikkét, ami elképesztőn jó példákat hozott a témával kapcsolatban.

Mi az a robots.txt?

A robots.txt egy TXT fájl, ami lényegében azt határozza meg, hogy a különféle keresőmotorok milyen tartalmainkat térképezhetik fel. Egy szigorú felépítéssel, és formátummal bír, ebből adódóan feltétlenül figyelnünk kell ilyen téren a technikai pontosságra.

Ennek ellenére nem egy „hivatalos standard”-ként fogható fel, de gyakorlatilag minden egyes keresőmotor képes őket értelmezni egy elfogadható szinten, ebből adódóan ha hibázunk, annak súlyos következményei lehetnek.

A robots.txt minden egyes domain esetén a /robots.txt URL alatt található, amennyiben meg van adva. Fontos, hogy a fájl neve kisbetűkből álljon, a Robots.txt elnevezés nem lesz megfelelő erre a célra.

Mit csinál konkrétan a robots.txt fájl?

Minden egyes feltérképezéskor még a feltérképezés előtt megnyitja a keresőmotor a robots.txt fájlunkat, és megvizsgálja annak a tartalmát, ami utasításokat ad arra vonatkozóan, hogy milyen tartalmainkat szeretnénk feltérképeztetni, és melyikeket nem. Mikor az oldalainkra érkeznek a keresőrobotok, akkor egy adott, hogy nagyjából mennyi időt szeretnének ott eltölteni, ugyanis a feltérképezés erőforrás-igényes számukra, és a mi szervereinket is terheli. Ebből adódóan, adunk egy utasítást arra vonatkozóan: Ezeket az oldalakat inkább ne térképezzétek fel, van még rengeteg másik tartalom a weboldalon, amikkel foglalkozhattok.

Ezután a keresőmotorjaink a weboldalaink feltérképezését elkezdik, aminek a lényege, hogy a különféle tartalmainkra mutató linkeket próbálják meg követni az oldalunkon. A főoldalról mutat egy link az „A” bejegyzésre, akkor oda mennek, és feltérképezik azt. Igen ám, de erről a bejegyzésről mutat két link a „B”, és „C” bejegyzésünkre, tehát azokat is megnézik, és így tovább. Emiatt is fontos annyira az úgynevezett megfelelő belső link-struktúra, amely abban segít, hogy minden egyes oldalunkat „megtalálják”.

Azoknak az URL-eknek a tartalmát semmiképpen nem fogja megvizsgálni, amelyek ebben a fájlban meg vannak jelölve a megfelelő utasítással: habár ettől még az adott URL-re tévedhetnek a botok más linkekről.

Hogyan hozhatunk létre egy robots.txt fájlt?

Felmerülhet bennünk az a kérdés, hogy amennyiben nincs robots.txt jelenleg a weboldalunkon, hogyan hozhatnánk létre mi magunk is egyet. Természetesen a válasz erre függhet attól, hogy milyen motor alatt futó weboldalunk, esetleg CMS-ünk lenne. A legtöbbször elegendő lehet, ha a gyökérkönyvtárban létrehozunk egy robots.txt nevű fájlt, és ebbe írjuk majd a megfelelő utasításokat. 

Ezek után menjünk a /robots.txt URL-re, és nézzük meg a végeredményt. Amennyiben a fájl létezik, akkor elegendő volt a gyökérkönyvtárban létrehozni mindezt. Amennyiben ez nem lett volna hatásos, az jó eséllyel a CMS-ünk URL rendezési stratégiájának köszönhető, ebből adódóan érdemes lehet utánanéznünk, hogy az adott CMS-en belül milyen bővítmények állnak a rendelkezésünkre ilyen téren. 

Hogyan épül fel a robots.txt fájl?

A robots.txt egy-vagy több blokkból épül fel, melyek két sorosak: az első sor mindig egy User-agentet ad meg, ami a keresőrobot neve. Természetesen van lehetőség arra is, hogy mindegyiknek adjuk az adott utasítást, a legtöbbször ez szokott történni.

A második részt a blokkokban az úgynevezett direktíva adja. Ez lehet Disallow, és Allow, valamint egy meghatározott URL párosul mellé. Az Allow azt jelenti, hogy engedjük a keresőrobotnak az adott URL-t feltérképezni, a Disallow pedig azt, hogy nem. A Disallow, és Allow lehet kicsi-és nagybetűs egyaránt, ez csupán rajtunk múlik.

Az alábbi egy példa a robots.txt használatára. 

User-agent: *
Disallow: /

User-agent: *
Allow: /rolunk

User-agent: bingbot
Allow: /a-bing-terkepezzel-fel/

Az első blokkban minden egyes oldalunk térképezését blokkoljuk minden egyes keresőrobot által. A második blokkban engedélyezzük minden egyes keresőrobotnak, hogy a bemutatkozó oldalt, feltérképezzék, ami a /rolunk URL alatt található . A harmadik utasítás pedig a Bing botnak ad lehetőséget arra, hogy a /a-bing-terkepezze-fel/ URL-t feltérképezze.

Érdemes tisztában lennünk azzal, hogy egy adott elérést megadva minden almappa blokkolása kerül majd. Ilyen például a /Video, ekkor minden elem a Video mappában blokkolva lesz. Viszont, a /video mappára ez nem fog hatni, ugyanis itt van megkülönböztetés a kicsi-és nagybetűk között. Ez szintén blokkolja az olyan könyvtárakat, melyek tartalmazzák a Video kifejezést, például /Videokeszites.

User-agent: *
Disallow: /Video

Amennyiben szeretnénk, lenne lehetőség arra is, hogy reguláris kifejezéseket használjunk. Tételezzük fel, hogy minden egyes olyan URL-t blokkolni szeretnénk, amelynek a vége HTML-re végződik. Ekkor a helyes eljárási mód:

Disallow: /*.html 

Nagyon rossz hatása lehet annak, amennyiben lényegében ugyanaz az oldal többször is bekerül a keresőbe: ilyen például a mi weboldalunkon az edukáció menüpont: /edukacio/, /edukacio/1, /edukacio/2 és a többi. Az /edukacio URL-t fel szeretnénk térképeztetni, viszont a /edukacio/1, /edukacio/2, stb… URL-eket nem. Akkor ez így tehető meg:

Disallow: /*edukacio $

Az utasítások a robots.txt-ben mindig fentről lefelé vesztik a prioritásukat el. Tehát, a legfelső, mindent blokkoló utasításokat az alsók felül írják. 

Az User-Agent direktíva

Érdemes megemlíteni, hogy a legtöbb keresőmotornak több feltérképező botja (spider) is van. Azt például mindenki tudja, aki SEO-val foglalkozik, hogy a mobil oldalaink feltérképezésére külön botokat használnak. Van viszont külön robot a képek, videók, az AdWords számára is, ha a Googleról beszélünk. Mindez egy kisebb táblázatban így nézne ki:

Keresőmotor Típus

User-Agent neve

Google

Általános

Googlebot

Google

Képek

Googlebot-Image

Google

Mobile

Googlebot-Mobile

Bing

Általános

Bingbot

Bing

Képek és videók

Msnbot-media


Sitemap direktíva

Az oldaltérképeinket alapból a gyökérkönyvtárunkban helyezzük el, sitemap.xml néven. Ebből adódóan, a domainünkön a /sitemap.xml URL alatt kell lennie, ez az alapértelmezett beállítás.

Lehetséges, hogy más URL-re szeretnénk majd tenni az oldaltérképünket. Ezt megtehetjük úgy, hogy a robots.txt fájlunk tetejére írjuk az alábbiakat:

Sitemap: http://azendomainem.hu/valami/sitemap_egyeni.xml

Ekkor az oldaltérképünket a keresőrobotok automatikusan a /valami/sitemap_egyeni.xml alatt keresik majd.

Kommentelés a robots.txt-n belül

Lehetséges, hogy bizonyos szöveges tartalmakat létre szeretnénk hozni a robots.txt fájlunkon belül-melyeket nem a keresőmotoroknak írunk, hanem mondjuk saját magunknak, vagy emberek számára. 

Nem szokványos eset, de láttam már arra példát az egyik nagy marketing-guru weboldalán, mikor ránéztem annak a robots.txt fájljára, hogy abban egy érdekes, emberek számára írt komment volt elhelyezve: ha te ezt a tartalmat olvasod, akkor te egy kíváncsi SEO-s vagy, mi pedig keressük az ilyen szakembereket. 

Ha emberek számára szeretnénk üzenetet elhelyezni egy robots.txt fájlban, akkor azt a # jelekkel tehetjük meg soronként. 

# Ez egy emberek
# Számára írt
# három soros üzenet
User-agent: *
Disallow:

A robots.txt használatlának előnyei

Mint ahogy általában véve mindennek, ennek is vannak előnyei, és hátrányai. Mit mondhatunk ilyen téren? 

A feltérképezési büdzsénk időzítése

Mikor a weboldalunkra ér egy keresőmotor, akkor annak meg van szabva, hogy nagyjából mennyi időt, és energiát ölhet bele abba, hogy a tartalmainkat indexelje-ennek nyilván az az oka, hogy más weboldalakkal is foglalkoznia kell, véges a keresőmotorok erőforrása. Ez az idő természetesen függ az oldal méretétől, és erősségi besorolásától (egy hírportál nyilván több erőforrást kap).

Abban az esetben, ha egy utasítást adunk arra vonatkozóan, hogy milyen tartalmainkat indexelhetik, akkor a keresőmotor nyilván azokra a tartalmainkra fog összpontosítani, amelyeket meghagyunk számára-és jó eséllyel ezzel is ellesz egy darabig.

Lehetséges, hogy bizonyos oldalaink még nem optimalizáltak SEO szempontból, és nem lenne előnyös, ha azokat feltüntetnénk a keresőben.

Specifikus oldalaink eltávolítása

Lehetséges, hogy bizonyos oldalainkat csak szimplán nem akarjuk megmutattatni a keresőben. Ilyen lehet például a belső keresési oldalunk: nyilvánvaló, hogy ezt a találati listán megmutatni semmi értelme nem lenne, ezért ezt jó eséllyel-miután blokkoltuk-később sem fogjuk kivenni. 

Lehetséges, hogy lenne egy oldalunk, ahová a cikkeinket tesszük ki átolvasásra próba gyanánt, mielőtt azokat publikálnánk. Nagyon gyakori alkalmazás az, amikor a "köszönjük szépen" oldalt távolítjuk el a keresőből: amikor valaki elküld egy űrlapot, akkor egy köszönő oldalra kerül az illető, ennek alapvetően teljesen felesleges megjelennie a keresőben. 

Duplikált tartalmak kiszűrése

Nagyon sokszor előfordulhat, hogy duplikált jellegű tartalom lép fel egy weboldalunkon. Ez nem szerencsés SEO szempontból, ebből adódóan egy lehetséges megoldást jelenthet az egyik tartalmat a robots.txt-vel blokkolni, ugyanis ez esetben felesleges lenne valamire a keresőrobotok feltérképezési energiáját elpazarolni. 

Ennek az orvoslására lehetőséget jelenthet a canonical tag beállítása is, de egy lehetséges opció lehet mindemellett a robots.txt használata. 

Privát tartalmak blokkolása

Előfordulhat, hogy bizonyos fájlokat, mappákat csak szimplán nem akarunk megjeleníttetni a keresőben. Találkoztam már olyan ügyféllel, aki a kutatásaihoz PDF fájlokat tárolt a honlapján, melyeket később szeretett volna közre adni. Arra panaszkodott, hogy nem érti, hogy miért jelenik meg a Google keresőjében az adott tartalom.

Hátrányok

Ha rosszul használjuk, nem tűnik el a keresőből az oldal

A robots.txt arra való, hogy megadjuk a keresőmotornak, hogy melyik URL-eket ne térképezzék fel alapból, ezeknek az URL-eknek a tartalmát semmiképpen nem fogja megvizsgálni a robot-mint ahogy az oldalainkat általában értékelni szokta mesterséges intelligenciái révén, a tartalmainkat illetően. A blokkolásnak nem csupán az a célja, hogy a megfelelő oldalainkra fordítsák az energiájukat, hanem az is, hogy bizonyos oldalakat eltüntessünk a keresőből-ami nem mindig jár sikerrel, ha nem jól építjük fel a tartalmat.

Tegyük fel, hogy a /blokkolt-oldal nevű URL-t szeretnénk eltüntetni az indexből. Ekkor létrehozhatjuk az alábbi fájlt: 

User-agent: *
Disallow: /blokkolt-oldal

Amennyiben a más oldalunkról mutató linkek segítségével az adott oldalra talál, akkor az bekerülhet az indexbe-annak ellenére, hogy annak tartalmát nem nézi meg. Ez pedig egy ilyen eredményhez vezet majd:

Amennyiben ténylegesen ki akarjuk szedni az oldalt az indexből, akkor azt a noindex taggel tehetjük meg az adott oldal HTML tartalmában. Igen ám, de ha ezt tesszük, és az adott oldalt blokkoljuk is a robots.txt-vel (a biztonság kedvéért), akkor nem fogja látni az oldal a noindex jelzésünket az oldalra tévedve (hisz nem nézi meg a tartalmat). Ebből adódóan, a célunkat nem érjük el.

Egy másik lehetségs opció: Ne próbáljuk meg Disallow-val blokkolni az oldalt, helyette annak HTML tartalában használjunk noindex meta tag-et. Ez természetesen eredményre fog vezetni: nem fog az oldal az indexbe bekerülni. Ez nem a legjobb megoldás, ugyanis a keresőrobotok ugyan nem térképezik fel a tartalmat, de az oldal látogatásával "elvonják" a feltérképezési büdzséből a ránk jutó energiát.

User-agent: *
Disallow:
<meta name="robots" content="noindex">

A helyes kombó: használjunk noindex tag-et a robots.txt-ben, és Disallowot egyaránt. Ezzel érjük el bizonyosan, hogy az oldalunk nem kerül indexelésre, és a feltérképezési energia-forrás is a legjobban alakul majd.

User-agent: *
Disallow: /blokkolt-oldal
Noindex: /blokkolt-oldal

A linkerő nem fog érvényesülni

A linkjeinknek rangsoroló hatása van. A mi weboldalunkat is „hitelesebbnek” ítélheti meg a Google, amennyiben arról sok, kifelé mutató link mutat más oldalakra. Ezen felül, a mi oldalunkra mutató linkeknek is van rangsoroló hatása: ha sok oldalunkról mutat egy link egy adott helyre, azt a Google pozitívan fogja értékelni.

A robots.txt egyvalamit biztosan csinál: az adott oldal tartalmi elemzését ellehetetleníti a Google számára. Ebből adódóan az ott található linkek ereje elveszik majd.

A keresőmotorokat hátráltatjuk

Előfordulhat, hogy a különféle keresőmotorok munkáját hátráltatni fogja a rossz robots.txt. Lehetséges, hogy akár az egész weboldalunkat kizárjuk a  megfelelő feltérképezésből, de előfordulhat, hogy csupán hátrányt szenvedünk a belső link-struktúra elvesztése, és figyelmen kívül hagyása miatt. 

Előfordulhat, hogy a CSS, és JavaScript fájlokat blokkolja valaki a robots.txt-vel, ez esetben a keresőmotorok ezeket nem fogják átvizsgálni, márpedig ezek is tartalmazhatnak olyan elnevezéseket, melyek az oldalunk tartalmát segítenek jobban megérteni. Ezen felül, az oldalunk feltérképezésünk megalkotásakor nem fogják figyelembe venni őket, és így kevésbé értik majd meg az oldalunk lényegét. 

A legnagyobb hiba, amit elkövethetünk

Talán nem gondolnánk, de mindössze egyetlen karakternyi hiba ahhoz vezethet, hogy a weboldalunk minden egyes tartalmát blokkoljuk az összes keresőrobot számára. Nagyon sokszor az alábbi kinézettel bír egy robots.txt, amivel nincs is semmi gond:

User-agent: *
Disallow:

Amennyiben egy karaktert megváltoztatunk, az egész fájl jelentése az ellentettjére fordul.

User-agent: *
Disallow: /

A Robots.txt ellenőrzése

Felmerülhet bennünk a kérdés, hogy lenne-e valamilyen módja annak, hogy meggyőződjünk a robots.txt fájlunk helyességéről? Ez vonatkozhat annak szintaktikai helyességére is, vagy pedig a tartalmi felépítésre. Még egy kisebb fájl esetén is érdemes lehet ezt az ellenőrzést elvégezni, egy hosszabb esetén pedig a sok hibalehetőség miatt ajánlott nagyon. 

Nos, ahogy sok esetben ez a SEO-ban lenni szokott, erre a problémára is van egy kiváló eszköz, melyet maga a Google fejlesztett ki. A Search Console-n belül lenne lehetőségünk arra, hogy ennek a fájlnak a tartalmát a megfelelő módon ellenőrizni próbáljuk. 

A Search Console-t ettől függetlenül is érdemes lehet bekötni az oldalunkra, ugyanis a segítségével ellenőrizhetjük, hogy az oldalunk indexelése az idő előrehaladtával hogyan halad. Ha egy ideje már nem történik változás, és nem értjük mi lehet a probléma, érdemes lehet a robots.txt-re egy picit rápillantanunk, gyakori eset lehet, hogy itt van valamiféle probléma. 

Feltétlenül szükséges-e ennek a fájlnak a megléte?

Felmerülhet bennünk a kérdés, hogy vajon rangsorolási tényező-e ennek a fájlnak a megléte. A válasz az, hogy nem számít annak: a Google nem fog pusztán amiatt levonni pontot tőlünk, vagy az oldalainkat előrébb sorolni, mert nem rendelkezünk robots.txt-vel. 

Ennek ellenére, minden egyes normális SEO Auditnak része a robots.txt megfelelő beállítása. Ez nagyjából olyan, mintha azt mondaná valaki, hogy felesleges lenne egy üveg vizet vinni magunkkal a futóversenyre, hiszen nem fogunk több pontot kapni azért, mert van vizünk. Az eredmények eléréséhez fontos, hogy rendelkezzünk ilyennel.

Egy ki kiegészítés: a Nofollow jelentése

Nem a robots.txt-ben adtható meg, azonban a Nofollow is ebbe a témakörbe tartozik. Szintén meghatározhatjuk vele ugyanis a feltérképezési büdzsénket, ha egy picit ügyesek vagyunk. Ennek a fájlnak az a lényege, hogy amennyiben az adott oldal HTML részébe adjuk a robots meta tag-nek a nofollow értéket, a feltérképezés során az adott oldalról kifelé mutató linkeket nem fogja figyelembe venni a keresőrobot

Ennek eredményeképp szintén javulhat a feltérképezési büdzsé, de nagyon vigyázzunk ennek a helyes használatával. Amennyiben túl sok oldalunkon adjuk meg, lehetséges, hogy a linkeket követő keresőrobotok bizonyos tartalmainkat nem fogják megtalálni a weboldalunkon, ami sokkal rosszabb eredményre vezehet a végén. 

Ennek a meta tagnek a kinézete az alábbi a valóságban: 

<meta name="robots" content="nofollow">

Amennyiben szeretnénk, ezen a meta elemen belül definiálhatjuk akár a noindexet is, ekkor a két értéket vesszővel kell elválasztani. 

<meta name="robots" content="noindex,nofollow">

Összefoglalás

Elismerendő, hogy magán a SEO-n belül nem a legkönnyebb témakörnek számít ez. Hiszen, jóval nehezebb lehet jól használni ezt az eszközt, és nagyon érteni kell a különbséget a között, hogy mi az a feltérképezés, mi az az index, mi az nofollow, és így tovább. 

Ennek ellenére, egy nagyon jól használható technikai elem, és nyugodjunk meg a felől, hogy a legtöbb esetben nem lesz szükségünk kifejezetten bonyolult beállításokra ilyen téren. Ha megnézed a weben levő oldalak 98%-át, látni fogod te magad is, hogy a legtöbb esetben nincsenek komplex robots.txt fájlok az interneten.

Ez részben annak köszönhető, hogy sokszor nincs is szükség erre, és részben annak tudható be, hogy sokan nem tudják használni, amikor kellene. Tehát, ha mi megtanuljuk, akkor egy nagyon erős fegyver birtokosaivá válhatunk.

módosítva: 2020-05-19

Szeretnél árajánlatot kérni?

Nagy tapasztalattal rendelkezem weboldal készítés, webáruház készítés, keresőoptimalizálás és online marketing terén. Sok olyan munkám volt már, ami sikeres lett, és pénzt hozott az ügyfeleimnek.

Ajánlatkérés