Robots.txt Konfiguráció

Mi az a robots.txt és miért fontos?

A robots.txt egy egyszerű szöveges fájl, amely a weboldal gyökérkönyvtárában található (például: https://example.com/robots.txt). Ez a fájl megmondja a keresőmotorok crawlereinek (más néven botjainak vagy spidereinek), hogy mely oldalakat crawlolhatják és indexelhetik, és melyeket kell kihagyniuk.

A robots.txt használata kritikus a technikai SEO szempontjából három fő okból:

Crawl budget optimalizálás: Ha a Google csak korlátozott számú oldalt tud naponta crawlolni az oldaladról, akkor a robots.txt segít megakadályozni, hogy értéktelen oldalakra pazarolja ezt az erőforrást. Ehelyett a fontos tartalmakra koncentrálhat.

Nem kívánt indexelés megelőzése: Vannak oldalak, amelyeket nem szeretnél a keresési találatok között látni: admin felületek, belső keresési eredmények, duplicate tartalom, vagy staging környezetek. A robots.txt segít ezek crawlolásának megakadályozásában.

Szerver terhelés csökkentése: Agresszív crawlerek túlterhelhetik a szervert. A robots.txt-tel korlátozhatod a crawl gyakoriságot és kizárhatod a problémás botokat.

A Google minden weboldal esetében először a robots.txt fájlt keresi meg, mielőtt elkezdi a crawlolást. Ha nem talál robots.txt fájlt, akkor az összes elérhető oldalt megpróbálja crawlolni.

Robots.txt működési folyamat: Googlebot ellenőrzi a robots.txt-t, Allow vagy Disallow döntés

Hogyan működik a robots.txt fájl?

A robots.txt alapvető felépítése

Robots.txt szintaxis gyorsreferencia: User-agent, Disallow, Allow, Sitemap

A robots.txt fájl egyszerű parancsokból áll, amelyek megmondják a crawlereknek, mit tehetnek és mit nem. Egy tipikus robots.txt így néz ki:

User-agent: *
Disallow: /admin/
Disallow: /private/
Allow: /public/

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

Nézzük meg, mit jelentenek ezek a sorok:

  • User-agent: * - Ez határozza meg, hogy melyik crawlerre vonatkozik a szabály. A * azt jelenti, hogy minden crawlerre.
  • Disallow: /admin/ - Ez a parancs tiltja az /admin/ mappa crawlolását.
  • Allow: /public/ - Ez kifejezetten engedélyezi a /public/ mappa crawlolását (hasznos, ha egy tiltott mappán belül van engedélyezett almappa).
  • Sitemap: - Megadja az XML sitemap helyét, így a crawlerek könnyebben megtalálják az összes fontos oldalt.

Parancsok részletesen

User-agent

A User-agent parancs megadja, hogy melyik crawlerre vonatkozik a szabály. Különböző keresőmotoroknak különböző szabályokat adhatsz meg:

User-agent: *           # Minden crawler
User-agent: Googlebot   # Csak Google
User-agent: Bingbot     # Csak Bing
User-agent: AhrefsBot   # Ahrefs SEO crawler

Ha több User-agent blokkot adsz meg, akkor azok egymástól függetlenül működnek. A crawlerek a rájuk vonatkozó első blokkot használják.

Disallow

A Disallow parancs megtilt egy útvonalat vagy fájlt a crawlolástól. Használhatsz wildcard karaktereket is:

Disallow: /admin/           # Teljes mappa tiltása
Disallow: /page.html        # Egy konkrét fájl tiltása
Disallow: /*.pdf$           # Minden PDF fájl tiltása (wildcard)
Disallow: /*?sort=          # URL paraméterek tiltása
Disallow:                   # Üres Disallow = minden engedélyezett

A * wildcard bármilyen karaktersorozatot helyettesít, a $ pedig az URL végét jelöli.

Allow

Az Allow parancs kifejezetten engedélyez egy útvonalat, még akkor is, ha egy szülő mappa tiltott. Ez hasznos részleges engedélyezéshez:

Disallow: /folder/
Allow: /folder/public/      # Ez viszont engedélyezett

Az Allow parancs felülírja a Disallow-t, ha ugyanarra az útvonalra vonatkoznak. Azonban fontos tudni, hogy nem minden keresőmotor támogatja az Allow direktívát teljes mértékben.

Sitemap

A Sitemap parancs megadja az XML sitemap fájl helyét. Több sitemap-et is megadhatsz:

Sitemap: https://example.com/sitemap.xml
Sitemap: https://example.com/sitemap-images.xml
Sitemap: https://example.com/sitemap-news.xml

Ez segíti a keresőmotorokat az összes fontos oldal megtalálásában, de nem helyettesíti a Google Search Console-ban történő sitemap beküldést.

Crawl-delay (nem standard)

Egyes keresőmotorok (például Bing) támogatják a Crawl-delay parancsot, amely megadja, hogy másodpercenként hány kérést küldhet a crawler:

User-agent: Bingbot
Crawl-delay: 10    # 10 másodperc várakozás minden kérés között

A Google nem támogatja ezt a parancsot, helyette a Google Search Console-ban állíthatod be a crawl sebességet.

Gyakori robots.txt példák különböző platformokra

WordPress alapértelmezett

A WordPress alapértelmezetten nem hoz létre robots.txt fájlt, de ha létrehoznál egyet, valami ilyesmi lenne ajánlott:

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /wp-includes/
Disallow: /wp-content/plugins/
Disallow: /wp-content/themes/
Disallow: /readme.html
Disallow: /license.txt

Sitemap: https://example.com/wp-sitemap.xml

Fontos megjegyzések:

  • Az /wp-admin/admin-ajax.php engedélyezése kritikus, mert sok funkció használja (például AJAX kérések).
  • A témák és pluginok mappáinak tiltása megakadályozza, hogy a keresőmotorok ezeket a fájlokat indexeljék, ami duplikált tartalom problémákat okozhat.

E-commerce webshop

Webshopok esetében különösen fontos a duplicate tartalom és az értéktelen oldalak kiszűrése:

User-agent: *
Disallow: /cart/
Disallow: /checkout/
Disallow: /my-account/
Disallow: /wp-admin/
Disallow: /*?orderby=
Disallow: /*?sort=
Disallow: /*?filter=
Disallow: /*add-to-cart=
Allow: /wp-content/uploads/

Sitemap: https://example.com/sitemap.xml
Sitemap: https://example.com/product-sitemap.xml

Miért tiltjuk ezeket?

  • /cart/, /checkout/, /my-account/ - Ezek privát, felhasználó-specifikus oldalak, nincs értelme indexelni őket.
  • URL paraméterek (?orderby=, ?filter=) - Ezek duplicate tartalmat hoznak létre ugyanarra a termékoldalra, különböző rendezéssel vagy szűréssel.

Staging vagy fejlesztői környezet

Staging oldalak esetében minden crawlolást le kell tiltani:

User-agent: *
Disallow: /

# Minden crawlolás tiltva - ez egy staging környezet

Ez a legegyszerűbb robots.txt, amely mindent tilt. Alternatívaként használhatsz password protection-t vagy noindex meta tag-et is.

Többnyelvű weboldal

Ha többnyelvű oldaladat különböző almappákban tárolod:

User-agent: *
Disallow: /admin/
Disallow: /private/

# Magyar verzió
Sitemap: https://example.com/hu/sitemap.xml

# Angol verzió  
Sitemap: https://example.com/en/sitemap.xml

# Német verzió
Sitemap: https://example.com/de/sitemap.xml

Fontos, hogy ne tiltsd le a nyelvi verziókat, csak add meg a megfelelő sitemap-eket.

Blog vagy tartalmi oldal

Blog esetében általában minimális tiltásra van szükség:

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /wp-includes/
Disallow: /*?replytocom=    # Komment válasz linkek

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

Gyakori robots.txt hibák és megoldásuk

1. Syntax hibák

A robots.txt fájl nagyon érzékeny a szintaktikai hibákra. Egy kis gépelési hiba miatt az egész fájl használhatatlanná válhat.

❌ Rossz (gyakori hibák):

User agent: *              # Szóköz a 'User' és 'agent' között
Disalow: /admin/           # Elgépelés: 'Disallow' helyett 'Disalow'
Disallow : /private/       # Felesleges szóköz a kettőspont előtt

✅ Helyes:

User-agent: *
Disallow: /admin/
Disallow: /private/

Megoldás: Használj robots.txt validátor eszközt (például a Google Search Console-ban), vagy a Robots.txt Validator eszközünket az ellenőrzéshez.

2. Fontos oldalak blokkolása

Az egyik leggyakoribb és legveszélyesebb hiba, amikor véletlenül fontos tartalmakat vagy erőforrásokat blokkol a robots.txt.

❌ Rossz:

Disallow: /css/
Disallow: /js/
Disallow: /images/

Miért rossz? A Google-nak szüksége van a CSS, JavaScript és kép fájlokra az oldal helyes rendereléshez. Ha ezeket blokkolod, a Google nem tudja helyesen értelmezni az oldaladat, ami ronthatja a rangsorolást.

✅ Helyes:

# NE tiltsd a CSS, JS és képeket!
Allow: /css/
Allow: /js/
Allow: /images/

3. Robots.txt mint biztonsági eszköz

Sokan tévesen úgy gondolják, hogy a robots.txt megvédi az érzékeny tartalmakat. Ez nem így van!

⚠️ FIGYELEM: A robots.txt NEM biztonsági megoldás!

Miért nem?

  • Bárki megtekintheti a robots.txt fájlt egyszerűen a https://example.com/robots.txt URL megnyitásával
  • Rosszindulatú crawlerek és hackerek figyelmen kívül hagyják a robots.txt szabályait
  • A robots.txt gyakran felfedi az érzékeny útvonalakat (például /admin/, /private/)

❌ Rossz gyakorlat:

Disallow: /admin/
Disallow: /secret-documents/
Disallow: /user-data/

Ez gyakorlatilag egy térkép a támadóknak, hogy hol találhatók érzékeny területek!

✅ Helyes megoldások:

  • Password protection (HTTP Basic Auth vagy .htaccess)
  • Szerver szintű hozzáférés korlátozás (IP alapú tiltás)
  • Noindex meta tag vagy X-Robots-Tag header (ezek nem jelennek meg a robots.txt-ben)
  • Login szükséges az érzékeny tartalomhoz

4. Konfliktus robots.txt és noindex között

Egy nagyon gyakori és veszélyes hiba, amikor ugyanazt az oldalt egyszerre blokkolod a robots.txt-tel ÉS noindex tag-et használsz rá.

❌ Rossz:

robots.txt:

Disallow: /old-page/

old-page/index.html:

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

Miért probléma? Ha a Google nem tudja crawlolni az oldalt a robots.txt miatt, akkor nem látja a noindex tag-et sem. Így az oldal maradhat az indexben, mert a Google nem tudja, hogy el kellene távolítania.

✅ Helyes megoldás:

Opció 1: Csak noindex használata (robots.txt engedélyezi a crawlolást)

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

Opció 2: Csak robots.txt használata (ha biztosan nem akarod, hogy crawlolják)

Disallow: /old-page/

Ne használd mindkettőt egyszerre!

5. Wildcard karakterek helytelen használata

A wildcard karakterek (* és $) használata nehéz lehet, és könnyen hibázhatunk.

❌ Rossz:

Disallow: /*.pdf         # Hiányzik a $ karakter, így nem minden PDF-et blokkol
Disallow: /admin*        # Hiányzik a / az admin után

✅ Helyes:

Disallow: /*.pdf$        # Minden .pdf végződésű fájl
Disallow: /admin/        # Az /admin/ mappa és minden almappája
Disallow: /*?sort=       # Minden URL, ami tartalmaz ?sort= paramétert

6. Túl sok vagy túl kevés tiltás

Túl sok tiltás:

Disallow: /page1.html
Disallow: /page2.html
Disallow: /page3.html
# ... 500 sor ...

Ha sok oldalt kell tiltanod, fontold meg a noindex tag használatát vagy egy teljes mappa tiltását.

Túl kevés tiltás:

User-agent: *
Disallow:

Ez gyakorlatilag egy üres robots.txt, ami minden crawlolást engedélyez. Ha tényleg minden engedélyezett, akkor egyszerűen ne hozz létre robots.txt fájlt.

Haladó robots.txt technikák

Több crawler kezelése különböző szabályokkal

Különböző crawlereknek különböző szabályokat adhatsz:

# Google számára
User-agent: Googlebot
Disallow: /private/
Allow: /public/

# Bing számára (engedékenyebb szabályok)
User-agent: Bingbot
Crawl-delay: 10
Disallow: /admin/

# SEO eszközök (Ahrefs, SEMrush) tiltása
User-agent: AhrefsBot
User-agent: SemrushBot
Disallow: /

# Minden más crawler alapértelmezett szabálya
User-agent: *
Disallow: /admin/
Disallow: /private/

Fontos: A crawlerek a rájuk vonatkozó első User-agent blokkot használják. Ha egy crawlert nem említesz külön, akkor a User-agent: * szabályokat követi.

Regex-szerű minták használata

Bár a robots.txt nem támogat teljes regex-et, használhatod a * és $ karaktereket összetett mintákhoz:

# Minden PDF tiltása
Disallow: /*.pdf$

# Minden URL paraméteres oldal tiltása
Disallow: /*?

# Minden session ID tartalmú URL tiltása
Disallow: /*sessionid=

# Minden privát almappa tiltása bármely szinten
Disallow: /*/private/

Faceted navigation kezelése e-commerce oldalakon

E-commerce oldalaknál gyakori probléma a faceted navigation (szűrők, rendezések), ami rengeteg duplicate oldalt generál:

# Faceted navigation paraméterek tiltása
Disallow: /*?*category=
Disallow: /*?*brand=
Disallow: /*?*price=
Disallow: /*?*color=
Disallow: /*?*size=
Disallow: /*?*sort=
Disallow: /*?*order=
Disallow: /*?*page=

# De engedélyezd a tiszta kategória URL-eket
Allow: /category/
Allow: /products/

Ez megakadályozza, hogy a Google ugyanazt a terméket több különböző szűrő kombinációval indexelje.

Development és production környezetek

Ha development és production környezeted van ugyanazon a domain-en (altartományok):

# Production (www.example.com/robots.txt)
User-agent: *
Disallow: /admin/
Allow: /

Sitemap: https://www.example.com/sitemap.xml
# Development (dev.example.com/robots.txt)
User-agent: *
Disallow: /

# Minden tiltva - ez egy dev környezet

Pro tipp: Használj különböző robots.txt fájlokat különböző környezetekhez, és deployment során automatikusan cseréld ki őket.

Robots.txt és SEO best practices

1. Ne tiltsd a fontos tartalmakat

A robots.txt célja NEM az, hogy eltávolítsd az oldalakat az indexből. Ha egy oldalt nem akarsz a keresési találatok között látni, használj noindex tag-et, ne robots.txt-et.

Szabály: Ha egy oldal már indexelve van, és eltávolítani akarod, NE add hozzá a robots.txt-hez. Használj noindex tag-et, amíg el nem tűnik az indexből.

2. Használj absolute URL-eket a Sitemap-nél

❌ Rossz:

Sitemap: /sitemap.xml    # Relatív URL

✅ Helyes:

Sitemap: https://example.com/sitemap.xml    # Absolute URL

A keresőmotorok jobban értelmezik az absolute URL-eket.

3. Egy robots.txt minden crawler számára

Ne hozz létre különböző robots.txt fájlokat különböző crawlerek számára. Egy fájlban kezeld az összes crawlert User-agent blokkok segítségével.

4. Tesztelés a módosítás után

Minden robots.txt módosítás után:

  1. Nyisd meg a fájlt böngészőben: https://example.com/robots.txt
  2. Ellenőrizd a szintaxist validátorral
  3. Használd a Google Search Console Robots.txt Tester eszközt
  4. Tesztelj konkrét URL-eket, hogy engedélyezettek-e vagy tiltottak

5. Kombináld más eszközökkel

A robots.txt csak egy része a technikai SEO-nak. Kombináld más eszközökkel:

  • Meta robots tag: Pontosabb kontroll oldal szinten
  • X-Robots-Tag HTTP header: Nem-HTML fájlok (PDF, kép) kezelésére
  • Canonical tag: Duplicate tartalom kezelésére
  • XML Sitemap: Fontos oldalak megjelölésére

6. Monitorozd a crawl statisztikákat

A Google Search Console Crawl Stats jelentésében monitorozd:

  • Hány oldalt crawlolnak naponta
  • Mennyi időt töltenek az oldalon
  • Van-e crawl hiba

Ha változást észlelsz a robots.txt módosítás után, akkor ellenőrizd, hogy nem blokkoltál-e véletlenül fontos tartalmakat.

Kapcsolódó Videók

Google Search Central: Robots.txt bemutatás

Gyakran Ismételt Kérdések

Mi az a robots.txt fájl?

A robots.txt egy egyszerű szöveges fájl, amely a weboldal gyökérkönyvtárában található (például: https://example.com/robots.txt). Ez a fájl megmondja a keresőmotorok crawlereinek, hogy mely oldalakat crawlolhatják és indexelhetik, és melyeket kell kihagyniuk. A robots.txt használata kritikus a technikai SEO szempontjából.

Hogyan készítsünk robots.txt fájlt?

Hozz létre egy robots.txt nevű szöveges fájlt egy egyszerű szövegszerkesztőben (Notepad, VS Code). Írd bele a megfelelő parancsokat (User-agent, Disallow, Allow), és töltsd fel a weboldal gyökérkönyvtárába, hogy elérhető legyen a https://example.com/robots.txt címen.

Kötelező a robots.txt használata?

Nem kötelező, de erősen ajánlott. Ha nincs robots.txt fájl, a keresőmotorok az összes elérhető oldalt crawlolják, ami pazarolhatja a crawl budget-et és nem kívánt oldalak indexelődését eredményezheti.

Mi a különbség a robots.txt és a noindex tag között?

A robots.txt megakadályozza a crawlolást, de nem garantálja, hogy az oldal kikerül az indexből. A noindex meta tag vagy X-Robots-Tag header kifejezetten eltávolítja az oldalt az indexből. Fontos: ne használd mindkettőt egyszerre ugyanarra az oldalra!

Hogyan tesztelhetem a robots.txt fájlomat?

Használd a Google Search Console Robots.txt Tester eszközét a robots.txt szintaxis ellenőrzésére és tesztelésére. Az eszköz megmutatja, hogy egy adott URL engedélyezett-e vagy tiltott a robots.txt alapján.

Biztonságos-e érzékeny tartalmat elrejteni robots.txt-tel?

Nem! A robots.txt nem biztonsági eszköz. Bárki megtekintheti a fájlt, és rosszindulatú crawlerek figyelmen kívül hagyják. Használj password protection-t, noindex tag-et vagy szerver szintű hozzáférés korlátozást érzékeny tartalmakhoz.

Következő lépések

Most, hogy megértetted a robots.txt működését és helyes használatát, itt vannak a következő lépések:

Források

Gyakran Ismételt Kérdések – robots.txt

Mi az a robots.txt fájl?

A robots.txt egy egyszerű szöveges fájl, amely a weboldal gyökérkönyvtárában található (például: https://example.com/robots.txt). Ez a fájl megmondja a keresőmotorok crawlereinek, hogy mely oldalakat crawlolhatják és indexelhetik, és melyeket kell kihagyniuk. A robots.txt használata kritikus a technikai SEO szempontjából.

Hogyan készítsünk robots.txt fájlt?

Hozz létre egy robots.txt nevű szöveges fájlt egy egyszerű szövegszerkesztőben (Notepad, VS Code). Írd bele a megfelelő parancsokat (User-agent, Disallow, Allow), és töltsd fel a weboldal gyökérkönyvtárába, hogy elérhető legyen a https://example.com/robots.txt címen.

Kötelező a robots.txt használata?

Nem kötelező, de erősen ajánlott. Ha nincs robots.txt fájl, a keresőmotorok az összes elérhető oldalt crawlolják, ami pazarolhatja a crawl budget-et és nem kívánt oldalak indexelődését eredményezheti.

Mi a különbség a robots.txt és a noindex tag között?

A robots.txt megakadályozza a crawlolást, de nem garantálja, hogy az oldal kikerül az indexből. A noindex meta tag vagy X-Robots-Tag header kifejezetten eltávolítja az oldalt az indexből. Fontos: ne használd mindkettőt egyszerre ugyanarra az oldalra!

Hogyan tesztelhetem a robots.txt fájlomat?

Használd a Google Search Console Robots.txt Tester eszközét a robots.txt szintaxis ellenőrzésére és tesztelésére. Az eszköz megmutatja, hogy egy adott URL engedélyezett-e vagy tiltott a robots.txt alapján.

Biztonságos-e érzékeny tartalmat elrejteni robots.txt-tel?

Nem! A robots.txt nem biztonsági eszköz. Bárki megtekintheti a fájlt, és rosszindulatú crawlerek figyelmen kívül hagyják. Használj password protection-t, noindex tag-et vagy szerver szintű hozzáférés korlátozást érzékeny tartalmakhoz.

Frissítve: