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.
Hogyan működik a robots.txt fájl?
A robots.txt alapvető felépítése
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.xmlNé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 crawlerHa 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élyezettA * 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élyezettAz 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.xmlEz 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öttA 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.xmlFontos megjegyzések:
- Az
/wp-admin/admin-ajax.phpengedé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.xmlMié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örnyezetEz 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.xmlFontos, 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.xmlGyakori 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.txtURL 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étert6. 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örnyezetPro 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 URLA 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:
- Nyisd meg a fájlt böngészőben:
https://example.com/robots.txt - Ellenőrizd a szintaxist validátorral
- Használd a Google Search Console Robots.txt Tester eszközt
- 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:
- Ellenőrizd a jelenlegi robots.txt fájlodat (ha van)
- Használd a Robots.txt Validator eszközt az ellenőrzéshez
- Teszteld a Google Search Console-ban
- Nézd meg az XML Sitemap útmutatót
- Olvasd el a Crawl Budget optimalizálás cikket
- Tanuld meg a Meta Robots Tag használatát
Források
- Google Search Central: Robots.txt Introduction
- Moz: The Beginner’s Guide to Robots.txt
- Ahrefs: Robots.txt Guide
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.