Miért kell gondoskodnunk a robots.txt fájlról a weboldalon?

SEO
Piotr SmargolPiotr Smargol
Közzétett: 22.07.2021
14 percek

Az észrevétlen robots.txt fájl lehetővé teszi a keresőrobotok hozzáférésének szabályozását a weboldalához. Emiatt döntő szerepet játszik a SEO-ban, és érdemes kellő figyelmet szentelni neki, különösen a fejlettebb SEO tevékenységek során. Ebben a cikkben arról lesz szó, hogy mi is az a robots.txt fájl, mire szolgál és miért fontos, majd példaszabályokkal és útmutatásokkal foglalkozunk, hogyan hozhatsz létre te magad is egy ilyen fájlt.

Mi az a robots.txt fájl és miért használják?

.
A robots.txt pontos nevű fájl egy egyszerű szöveges fájl – .txt formátumban mentve és közvetlenül a domain gyökérmappájába helyezve.

A fájlban irányelveket helyezünk el a weboldalunkat látogató robotok számára.

Ezekben az irányelvekben megadjuk, hogy a domain gyökeréből mely oldalakat látogathatják a robotok, és melyeket blokkoljuk a látogatás lehetőségét.

Érdemes megjegyezni, hogy a robotok megkerülhetik a robots.txt fájlban elhelyezett irányelveket, és így is lekérdezhetik az ott elhelyezett oldalakat vagy részeket.

Miért fontos a robots.txt fájl?

.
A robots.txt fájl fontosságát abból tudhatjuk meg, hogy a Google robotja hogyan vizsgálja az oldalakat.

Amikor a Google robotja egy másik, már az indexében lévő domainről linkelt webhelyre bukkan, azonnal ellenőrzi a robots.txt fájlt, hogy ellenőrizze, mely webhelyen lévő erőforrásokat látogathatja. Ezután rendszeresen meglátogatja ezt a fájlt, hogy ellenőrizze, nem változott-e valami az irányelvekben.

A webhelynaplókat elemezve láthatjuk, hogy a robots.txt fájlt még a kisebb webhelyek esetében is több tucatszor vagy tucatszor látogatják meg havonta.

A már említett lehetőségen túl, hogy a robotok hozzáférését a webhely bizonyos helyeihez blokkoljuk, a robots.txt fájlt használjuk a az XML-oldaltérkép URL-jének alárendelésére. Az oldaltérkép ide linkelése különösen fontos, ha nincs profilunk a Google Search Console-ban, és ha az oldaltérképünknek van egy out-of-the-box URL címe.

Érdemes azt is megjegyezni, hogy a Google milyen aprólékosan tölti fel a robots.txt fájlt, amely az URL https://www.google.com/robots.txt címen található.

Példaszabályok a robots.txt fájlban. Milyen csoportokból és irányelvekből áll egy ilyen fájl?

.
Minden robots.txt fájl csoportokból épül fel. A direktívák csoportja a következőket tartalmazza:

  • hivatkozás a bot nevére,
    Minden egyes alkalmazást vagy az oldalt látogató felhasználót a kliensneve, vagy más néven bot neve mutat be. Ez az a név, amit a fájlon belül a User-agent direktívában a direktívákban elhelyezünk.
  • információ arról, hogy a megadott bot mely erőforrásokat zárja ki vagy engedi meg a látogatást.
  • .

Az ilyen csoportok mindenekelőtt lehetővé teszik számunkra:

  1. Kiválaszthatjuk annak a botnak a nevét, amelyre direktívákat akarunk irányítani.
    User-agent: AdsBot-Google

    .

  2. Adjunk direktívákat, hogy blokkoljuk a hozzáférést bizonyos könyvtárakhoz vagy URL-ekhez.
    Disallow: /maps/api/js/

    .

  3. Adjunk direktívákat, hogy engedélyezzük a hozzáférést bizonyos könyvtárakhoz vagy URL-ekhez.
    Allow: /maps/api/js

    .

Minden további csoport tartalmazhat egy másik robot nevét és direktívákat egy másik robot számára, például:

User-agent: Twitterbot
Allow: /imgres

.
Összefoglalva, kapunk egy csoportkészletet:

User-agent: AdsBot-Google
Disallow: /maps/api/js/
Allow: /maps/api/js
Disallow: /maps/api/api/place/js/
Disallow: /maps/api/staticmap
Disallow: /maps/api/streetview

User-agent: Twitterbot
Allow: /imgres

Figyeljük meg azonban, hogy a csoporton belüli sorokat felülről lefelé haladva dolgozzuk fel, és a felhasználói ügyfél (jelen esetben: a robot neve) csak egy szabálycsoportra, pontosabban a rá vonatkozó első, legerősebben megadott szabályra illeszkedik.

Önmagában a csoportok sorrendje a fájlban nem számít. Az is figyelemre méltó, hogy a robotok esetében a nagy- és kisbetűket megkülönböztetjük. Például a szabály:

Disallow: /file.asp

a http://www.example.com/file.asp aloldalra vonatkozik, de a http://www.example.com/FILE.asp aloldalra – már nem.

Ez azonban nem okozhat problémát, ha helyesen hozzuk létre az URL-eket a tartományunkban.

Végül, ha egy robothoz több csoport is tartozik, a duplikált csoportok direktívái egy csoportba olvadnak össze.

Belépőügynök

.
A robots.txt fájlban elhelyezett csoportok közül csak az egyiket illesztjük az egyes robotok nevéhez, a többit figyelmen kívül hagyjuk. Ezért egy Senuto nevű robot, látva a szabályokat a robots.txt fájlban a domain:

User-agent: *
disallow: /search/

User-agent: Senuto
allow: /search/

az alábbi szabályt fogja kiválasztani (a példában), és a /search/ könyvtárhoz fog hozzáférni, mivel pontosan arra irányul.

Disallow

.
A disallow direktíva meghatározza, hogy a kiválasztott robotok mely könyvtárakhoz, elérési utakhoz vagy URL-ekhez nem férhetnek hozzá.

disallow: [path]

.

disallow: [address-URL]

.
Az utasítás figyelmen kívül marad, ha nincs megadva elérési út vagy könyvtár.

disallow:

.
Példa az irányelv használatára:

disallow: /search

A fenti direktíva letiltja az URL-ekhez való hozzáférést:

  • https://www.domena.pl/search/
  • .

  • https://www.domena.pl/search/test-site/
  • https://www.domena.pl/searches/

Érdemes megjegyezni, hogy az itt tárgyalt példa csak egyetlen szabály alkalmazására vonatkozik egyetlen kijelölt robotra.

Megengedni

.
Az engedélyezési irányelv meghatározza, hogy a kijelölt robotok mely könyvtárakhoz, elérési utakhoz vagy URL-címekhez férhetnek hozzá.

allow: [path]

.

allow: [cím-URL]

Az utasítás figyelmen kívül hagyásra kerül, ha nincs megadva elérési út vagy könyvtár.

allow:

.
Példa a direktíva használatára:

allow: /images

A fenti direktíva engedélyezi az URL-ek elérését:

  • https://www.domena.pl/images/
  • .

  • https://www.domena.pl/images/test-site/
  • https://www.domena.pl/images-send/

Érdemes megjegyezni, hogy az itt tárgyalt példa csak egyetlen szabály alkalmazására vonatkozik egyetlen jelzett robotra.

Szitemap

.
A robots.txt fájlban a webhelyünk térképére mutató linket is elhelyezhetünk XML formátumban. Mivel a robots.txt oldalt rendszeresen látogatja a Google robotja, és az egyik első oldal a webhelyen, amelyet elér, határozottan érdemes a webhelytérképre mutató linket is elhelyezni.

sitemap: [unlabeled-address-URL]

.
A Google irányelvei szerint a sitemap URL-jének abszolútnak kell lennie (teljes, megfelelő URL), tehát például:

sitemap: https://www.domena.pl/sitemap.xml

Más irányelvek

.
A robots.txt fájlokban egyéb direktívákat is találhatunk, nevezetesen:

  • host – a host direktíva arra szolgál, hogy az interneten elérhető számos másolat közül a preferált tartományt jelezze.
  • .

  • crawl delay – a robottól függően ezt az irányelvet különbözőképpen használhatjuk. A Bing keresőrobot esetében a crawl delay-ben megadott idő a webhely egy aloldalának első és második feltérképezése közötti minimális idő lesz. A Yandex viszont úgy fogja értelmezni ezt az irányelvet, mint azt az időt, amit a robotnak várnia kell, mielőtt lekérdezné a domain minden egyes következő oldalát.

Mindkét direktívát a Google figyelmen kívül hagyja, és nem veszi figyelembe a webhely átvizsgálásakor.

Használhatunk reguláris kifejezéseket a szabályokban?

.
A Google keresőrobotjai (de nem csak) az elérési utakban támogatják a speciális tulajdonságokkal rendelkező egyes karaktereket. Ilyen karakterek többek között:

  • Soros karakter * – bármely karakter nulla vagy több előfordulását jelzi,
  • .

  • dollárjel $ – az URL végét jelöli.
  • .

Ez nem esik tökéletesen egybe azzal, amit a szabályos kifejezésekből https://pl.wikipedia.org/wiki/Wyrażenie_regularne ismerünk. Érdemes azt is megjegyezni, hogy a * és $ karaktertulajdonságok nem szerepelnek a robotkizárási szabványban https://en.wikipedia.org/wiki/Robots_exclusion_standard.

E karakterek nofollow használatára példa lenne a szabály:

disallow: *keresések*

.
Az idézett szabály megegyezik a szabállyal:

disallow: searches

és a * karaktereket egyszerűen figyelmen kívül hagyja.

Ezek a karakterek például akkor találnak felhasználásra, ha olyan oldalak elérését akarjuk letiltani, ahol az URL-ben két mappa között más mappák is lehetnek, akár egyesével, akár többszörösen.

Egy olyan szabály, amely blokkolja a hozzáférést olyan oldalakhoz, amelyeknek a cím URL mappájában van egy /search/ mappa, az oldal szerkezetében mélyebben pedig egy /on-demand/ mappa, így nézne ki:

disallow: /search/*/on-demand

A fenti szabállyal blokkolni fogjuk a hozzáférést ezekhez az URL-ekhez:

  • https://www.domena.pl/search/wstawka-w-url/on-demand/wlasciwy-url/
  • https://www.domena.pl/search/a/on-demand/,
  • .

De nem fogjuk blokkolni a hozzáférést ezekhez:

  • https://www.domena.pl/search/on-demand/
  • https://www.domena.pl/on-demand/
  • https://www.domena.pl/search/adres-url/

Érdekes példa lenne, ha blokkolnánk a hozzáférést minden olyan .pdf kiterjesztésű fájlhoz (feltételezzük, hogy a tartományunkban minden ilyen kiterjesztésű fájl így kerül megszüntetésre), amely az URL-ben tartalmazza a /data-client/ mappát. Ehhez használjuk a direktívát:

disallow: /data-client/*.pdf$

A robots.txt fájlba foglalandó megfelelő szintaxisról és szabályokról bővebben az ABNF szintaxis specifikációban olvashat az URL: https://datatracker.ietf.org/doc/html/rfc5234 oldalon.

Mit kell tartalmaznia egy alapvető robots.txt fájlnak

.
Ahhoz, hogy egy robots.txt fájlt helyesen olvassanak, a következőkre kell törekednie:

  • egy UTF-8 kódolású szöveges fájl legyen,
  • .

  • a neve: robots.txt (minta URL https://www.domena.pl/robots.txt),
  • .

  • közvetlenül a domain gyökérmappájában legyen elhelyezve,
  • .

  • egyedi legyen a tartományon belül – nem lehet egynél több robots.txt fájl, mivel a megadottól eltérő URL-címen elhelyezett fájlokban lévő irányelvek nem lesznek elolvasva,
  • .

  • a fájlon belül legalább egy irányelvcsoportot tartalmazzon
  • .

Néha a # jelet is megtalálhatjuk a fájlban. Ez lehetővé teszi, hogy megjegyzéseket adjunk a fájlon belül, amelyeket a Google robot nem fog elolvasni. Ha egy # jelet teszünk egy sorba, akkor az azt követő karaktereket ugyanabban a sorban a Google nem fogja elolvasni.

disallow: /search/ #a "kerítés" utáni bármelyik karaktert nem olvassa be a Google robotja

.

Hogyan hozzon létre egy robots.txt fájlt

.
Ezen a ponton készen állunk arra, hogy mi magunk is létrehozzunk egy ilyen fájlt. Ehhez bármilyen szövegszerkesztőre szükségünk lesz: MS Word, Notepad stb. A szerkesztőben hozzunk létre egy üres szöveges dokumentumot, és egyszerűen nevezzük el robots.txt-nek.

A következő lépés az, hogy a szöveges dokumentumot kiegészítjük a megfelelő irányelvekkel. Mielőtt begépeljük őket, fel kell készülnünk:

  • a korlátozások által érintett robotok listája,
  • .

  • a korlátozások által nem érintett robotok listája,
  • .

  • listája azoknak az oldalaknak, amelyekhez a hozzáférést meg akarjuk tiltani,
  • .

  • listája azoknak az oldalaknak, amelyek hozzáférését nem tudjuk blokkolni,
  • .

  • az oldaltérkép URL címe,
  • .

A fenti adatok birtokában elkezdhetjük kézzel egymás alá gépelni a szabályokat a létrehozott szöveges dokumentumban. Példa robots.txt fájlra:

User-agent: *
disallow: /business-card #blokkolja a hozzáférést a business-card mappában található oldalakhoz.
disallow: /*.pdf$ #blokkolja a .pdf kiterjesztésű fájlok elérését.
disallow: sortby= #blokkolja az olyan fájlok elérését, amelyeknek az url-jében szerepel a rendezés.

User-agent: ownbotsc1
allow: *

sitemap: <https://www.domena.pl/sitemap_product.xml> #link az xml sitemap-ra
sitemap: <https://www.domena.pl/sitemap_category.xml&gt
sitemap: <https://www.domena.pl/sitemap_static.xml&gt
sitemap: <https://www.domena.pl/sitemap_blog.xml>

.
Az így létrehozott dokumentumot a domainünk gyökérmappájába kell elhelyeznünk azon az FTP-kiszolgálón, ahol a fájljai találhatók. Érdemes megjegyezni, hogy az olyan tartalomkezelő rendszerekben, mint például a WordPress, találunk olyan bővítményeket, amelyek lehetővé teszik számunkra az FTP-kiszolgálón található robots.txt fájl szerkesztését.

Hogyan tesztelhetjük, hogy a robots.txt fájlban található irányelvek helyesek-e?

.
Ahhoz, hogy alaposan tesztelhessük, hogy az általunk létrehozott robots.txt fájl helyesen működik-e, meg kell látogatnunk: https://www.google.com/webmasters/tools/robots-testing-tool.

Itt találunk egy tesztelőt, amely letölti a jelenleg a tartományon lévő robot.txt fájlt (a Google Search Console-ban ellenőrzött tulajdonosának kell lennünk), majd lehetővé teszi, hogy szerkesszük azt, és ellenőrizzük, hogy az általunk megadott aloldalakat blokkolják vagy átengedik-e a benne lévő direktívák.

Minden alkalommal, miután egy URL-t hozzáadtunk a teszthez (a grafika alján), kattintsunk a piros „TEST” gombra, és válaszként információt kapunk arról, hogy a megadott URL-t blokkolták-e, és ha igen, akkor a robots.txt fájl melyik sora blokkolta az URL-ünket.

Ha az URL nincs blokkolva, akkor kapunk egy üzenetet, amely a Google robot számára elérhetővé teszi az irányelv URL-jét – ahogy az alábbi ábrán látható:

Mire kell figyelni a robots.txt fájl létrehozásakor?

.
A robots.txt fájl létrehozásakor különösen ügyeljünk arra, hogy a Google robot hozzáférését az oldalhoz teljesen vagy részben blokkoljuk. Ezért minden változtatást ebben a fájlban szakemberrel kell egyeztetni, hogy ne okozzunk még nagyobb kárt az oldalunknak.

Érdemes azonban megjegyezni, hogy a robots.txt fájl nem akadályozza meg a robotokat az oldal indexelésében. A Google megengedi azt a lehetőséget, hogy ha robotja egy másik domainről eljutott valamelyik aloldalunkra, akkor amíg ezt az oldalt értékesnek ítéli, addig az indexre kerül.

Egy másik fontos megjegyzés, hogy a legtöbb nem Google robot nem követi a robots.txt fájlban szereplő irányelveket, és figyelmen kívül hagyja az abban szereplő parancsokat.

Összefoglaló

.
A robots.txt fájl mindenképpen fontos eleme a technikai SEO-nak. A rosszul kitöltése a SEO-ból származó forgalom korlátozását kockáztatja, míg a jól kitöltése segít az oldal indexelésének és crawl költségvetésének kezelésében. Minél nagyobb az oldal forgalma, minél több aloldal létezik az oldalunkon, annál jobb gondoskodni a robots.txt helyes kitöltéséről.

 

.

Oszd meg ezt a posztot:  
Piotr Smargol

Lubi nowe wyzwania i nie boi się zmian. Pracę w branży SEO zaczął w 2018 roku, a pół roku później trafił do Vestigio, gdzie dziś zajmuje się kluczowymi projektami jako Senior SEO Specialist.

Próbáld ki a Senuto Suite-ot 14 napig ingyen

Próbáld ki a Senuto Suite-ot 14 napig ingyen

1 órás INGYENES Senuto bemutató

Válassz időpontot és jelentkezz