Tartalomkészítés.hu

X-Robots-Tag: teljes útmutató

Technikai SEO

Az X-Robots-Tag egy HTTP-válaszfejléc, amellyel ugyanazokat az indexelési direktívákat adhatod meg, mint a meta robots címkével, csak nem a HTML-ben, hanem a szerver válaszában. Ezért nem HTML fájlokra is működik: PDF-re, képre, videóra, letölthető dokumentumra. Szerverszinten, szabályokkal is beállítható, így egyszerre sok fájlra vagy egy teljes könyvtárra alkalmazható.

Alapfogalmak

Amikor egy böngésző vagy robot lekér egy URL-t, a szerver nemcsak a tartalmat küldi vissza, hanem fejléceket is: a státuszkódot, a tartalom típusát, a gyorsítótárazás szabályait és sok más adatot. Az X-Robots-Tag egy ilyen fejléc, amelyet a keresők robotjai kifejezetten keresnek. Ha megtalálják, a benne lévő direktívákat ugyanúgy alkalmazzák, mintha a lap HTML-jében egy meta robots címkében álltak volna.

HTTP/1.1 200 OK
Content-Type: application/pdf
X-Robots-Tag: noindex, nofollow

A fenti válasz egy PDF fájlhoz tartozik. A PDF-be nem lehet meta címkét tenni, ezért ha azt szeretnéd, hogy ne jelenjen meg a találati listán, a fejléc az egyetlen lapszintű eszköz. Ez az X-Robots-Tag legfontosabb felhasználási területe.

A legfontosabb fogalmak

FogalomJelentésMegjegyzés
HTTP-válaszfejlécA szerver által a tartalom előtt küldött adatsorA látogató nem látja, a robot igen
DirektívaAz indexelésre vagy megjelenítésre vonatkozó utasításUgyanaz a készlet, mint a meta robotsnál
Robotspecifikus fejlécA direktíva elé írt robotnévCsak az adott robotra vonatkozik
SzerverszabályA szerver beállítása, amely a fejlécet hozzáadjaFájltípusra, könyvtárra, hostra is vonatkozhat

Mikor az X-Robots-Tag, mikor a meta robots

A két eszköz ugyanazt tudja, a különbség a helyükben van. A meta robots a HTML-ben él, így a tartalomkezelő rendszerből, lapról lapra vagy sablonból könnyen kezelhető. Az X-Robots-Tag a szerver válaszában él, így fájltípustól függetlenül működik, és szerverszabályokkal tömegesen is beállítható. HTML lapoknál általában a meta robots a kényelmesebb, minden másnál az X-Robots-Tag az egyetlen lehetőség.

  • PDF, Word, táblázat, egyéb letölthető dokumentum: X-Robots-Tag.
  • Képek, videók: X-Robots-Tag.
  • Egy teljes könyvtár vagy host, fájltípustól függetlenül: X-Robots-Tag szerverszabállyal.
  • Egyes HTML lapok, szerkesztői döntés alapján: meta robots.

Mi nem az X-Robots-Tag dolga

Az X-Robots-Tag az indexelést szabályozza, nem a feltérképezést, és nem is véd semmit. Ha egy fájl bizalmas, a fejléc nem akadályozza meg, hogy bárki letöltse, aki ismeri az URL-t. A feltérképezés tiltására a robots.txt való, a védelemre hozzáférés-kezelés.

Miért könnyű szem elől téveszteni

A meta robots címke a lap forráskódjában van, bárki megtalálhatja, aki megnyitja. Az X-Robots-Tag viszont a látogató elől rejtve marad: a böngésző nem jeleníti meg, a tartalomkezelő rendszer felületén jellemzően nem szerepel, és a szerkesztők többsége nem is tud a létezéséről. Ez előny, amikor tömeges, szerverszintű szabályra van szükség, és hátrány, amikor hibát kell keresni. Aki technikai átvilágítást végez, annak a HTML mellett mindig a válaszfejléceket is meg kell néznie.

Hogyan működik?

A robot lekéri az URL-t, és a válasz fejlécei között megkeresi az X-Robots-Tag sort. A benne talált direktívákat hozzáadja a HTML-ben esetleg talált meta robots direktívákhoz, és a teljes készlet alapján dönt. Ahogy a meta robotsnál, itt is igaz, hogy a jelzés csak akkor hat, ha a robot lekérheti az URL-t. Ha a robots.txt tiltja, a robot soha nem kapja meg a fejlécet.

Direktívák és formátum

A fejléc értéke vesszővel elválasztott direktívák listája. Ugyanazok a direktívák használhatók, mint a meta robotsnál: noindex, nofollow, none, nosnippet, max-snippet, max-image-preview, noimageindex, unavailable_after és a többi. Egy válaszban több X-Robots-Tag fejléc is szerepelhet, a robot ezeket együtt értelmezi.

X-Robots-Tag: noindex
X-Robots-Tag: googlebot: nofollow
X-Robots-Tag: max-image-preview:none

Ha a direktívák elé egy robot neve kerül kettősponttal, a sor csak arra a robotra vonatkozik. Robotnév nélkül a sor minden robotra érvényes.

Ütköző jelzések

Ha a HTML-ben és a fejlécben eltérő direktíva áll, a Google a korlátozóbbat követi. Ha a meta robots index-et mond, de a fejléc noindex-et, a lap nem kerül az indexbe. Ez veszélyes kombináció, mert a fejléc a böngészőben nem látszik, így aki csak a forráskódot nézi, nem találja meg az okot.

Ki állítja be a fejlécet

A fejlécet a webszerver, az alkalmazás vagy egy közbenső réteg (tartalomkézbesítő hálózat, fordított proxy) adhatja hozzá a válaszhoz. Ez egyben a legnagyobb nehézség is: ugyanazt a fejlécet több helyen is be lehet állítani, és ha a hiba oka egy CDN szabály vagy egy régi szerverbeállítás, a tartalomkezelő rendszerben hiába keresed. Ha egy URL-en váratlan X-Robots-Tag jelenik meg, végig kell nézni a teljes láncot a szervertől a látogatóig.

Képek és videók kezelése

Egy kép vagy videó indexelését kétféleképpen lehet korlátozni. Ha magára a képfájlra adsz X-Robots-Tag noindex fejlécet, a kép nem kerül a képkeresés indexébe, bármelyik lapon is szerepel. Ha egy HTML lapra noimageindex direktívát teszel, az csak arra vonatkozik, hogy a kereső az adott lap alapján ne indexelje a rajta lévő képeket, más lapokon keresztül a kép még bekerülhet. A fájlszintű fejléc tehát erősebb és pontosabb eszköz, ha egy adott képet vagy képkönyvtárat akarsz kizárni.

Mikor hat a változtatás

A fejléc módosítása ugyanúgy nem azonnal hat, mint a meta robots módosítása. A kereső akkor veszi észre, amikor az URL-t legközelebb lekéri. Ritkán frissülő fájloknál, például régi PDF-eknél, ez sokáig is eltarthat. Ha fontos, hogy a változás gyorsan érvényesüljön, a Search Console URL-vizsgálat eszközével kérheted az újbóli feltérképezést, sok URL esetén pedig segít, ha az érintett fájlok szerepelnek az oldaltérképben.

Fő módszerek

Az X-Robots-Tag beállítása mindig szerveroldali munka. A pontos szintaxis a webszervertől függ, a gondolkodási sorrend viszont mindenhol ugyanaz: mire vonatkozzon a szabály, milyen direktívát adjon, és hogyan ellenőrzöd, hogy csak oda került, ahová szántad.

1. Hatókör meghatározása

Döntsd el, mire vonatkozzon a szabály: egy fájltípusra (például minden PDF-re), egy könyvtárra (például a belső dokumentumokra), egy konkrét fájlra, vagy egy teljes hostra (például a tesztkörnyezetre). A hatókör legyen a lehető legszűkebb. Minél tágabb a szabály, annál nagyobb az esélye, hogy olyan URL-t is érint, amelyet nem akartál.

2. Szabály fájltípusra: Apache

Apache szerveren a fejléc a mod_headers modullal adható hozzá, például a konfigurációban vagy egy .htaccess fájlban. Az alábbi szabály minden PDF fájlra noindexet tesz.

<FilesMatch "\.pdf$">
  Header set X-Robots-Tag "noindex"
</FilesMatch>

3. Szabály fájltípusra: Nginx

Nginx szerveren az add_header utasítás adja hozzá a fejlécet. Két sajátosságára érdemes figyelni. Az egyik, hogy alapból csak bizonyos sikeres és átirányítási válaszokhoz adja hozzá a fejlécet, az always paraméterrel minden válaszhoz. A másik, hogy ha egy location blokkban van add_header, akkor az a felsőbb szinten megadott add_header utasításokat nem örökli, így egy új szabály véletlenül eltüntethet más fejléceket.

location ~* \.pdf$ {
  add_header X-Robots-Tag "noindex";
}

4. Szabály alkalmazásból

Ha a fájlokat nem közvetlenül a webszerver, hanem az alkalmazás szolgálja ki (például egy letöltéskezelő szkript), a fejlécet az alkalmazás kódja is beállíthatja. Ez rugalmasabb, mert a döntés adatbázis-mező alapján, fájlonként is meghozható. Ugyanakkor itt a legkönnyebb elfelejteni, mert a beállítás a kódban él, nem a szerver konfigurációjában.

5. Teljes host kizárása

Tesztkörnyezetnél, belső eszközöknél vagy tükörszervereknél előfordul, hogy egy teljes hostot ki kell zárni az indexből. Ilyenkor a szerverszintű, minden válaszra érvényes X-Robots-Tag noindex jól működik, mert a HTML-t nem kell hozzá módosítani, és a nem HTML fájlokra is vonatkozik. Kiegészítő eszköznek viszont tekintsd: a biztos kizárást a jelszavas védelem adja, mert az nem függ attól, hogy egy robot betartja-e a direktívát.

Döntési szabály

  • Nem HTML fájl, amely ne jelenjen meg a keresőben: X-Robots-Tag noindex.
  • HTML lap, szerkesztői döntés alapján: meta robots, nem fejléc.
  • Tesztkörnyezet: jelszavas védelem, kiegészítésként X-Robots-Tag noindex a teljes hostra.
  • PDF, amelynek HTML változata is van: canonical HTTP-fejlécben a HTML változatra, vagy noindex a PDF-re.

Kidolgozott példa: PDF katalógusok a találati listán

Egy gyártócég termékadatlapjai HTML lapként és letölthető PDF-ként is elérhetők voltak. A keresőben egyes termékekre a PDF jelent meg a HTML lap helyett. A látogató így egy letöltésre érkezett, navigáció és ajánlatkérő gomb nélkül.

Két megoldás jöhetett szóba. Az egyik, hogy a PDF-ek noindexet kapnak X-Robots-Tag fejlécben, így kiesnek az indexből, és a HTML lapok maradnak. A másik, hogy a PDF-ek HTTP-fejlécben canonical jelzést kapnak a megfelelő HTML lapra, így a kereső a jelzéseket a HTML-re viszi át. A cég a második mellett döntött, mert a PDF-ekre sok külső link mutatott, és ezek értékét a HTML lapokra akarták átvinni. Ahol egy PDF-nek nem volt HTML párja, ott nem történt változtatás.

Link: <https://example.hu/termekek/szelep-a/>; rel="canonical"

Gyakori hibák

Az X-Robots-Tag hibái nehezen észrevehetők, mert a fejléc a böngészőben nem látszik, és a legtöbb ember nem nézi a HTTP-válaszokat. A hibákat ezért gyakran csak a Search Console jelzi, vagy egy forgalomesés.

Tesztkörnyezet fejléce élesben

Sok csapat a tesztkörnyezetet szerverszinten, noindex fejléccel zárja ki. Ha a szerverbeállítás az élesítéskor átkerül, a teljes webhely noindexet kap, és a HTML-ben ennek semmi nyoma. Ez az egyik legnehezebben megtalálható súlyos hiba. Az élesítés ellenőrzőlistáján a fejlécek vizsgálatának is szerepelnie kell.

Túl tág szabály

Egy fájltípusra írt szabály, amelynek mintája rosszul van megadva, más fájlokat is érinthet. Egy könyvtárra írt szabály a benne lévő minden URL-re vonatkozik, a HTML lapokra is. Minden új szabály után ellenőrizd néhány olyan URL-en is, amelyet nem akartál érinteni.

Fejléc és robots.txt tiltás együtt

Ahogy a meta robotsnál, itt is igaz: ha a robots.txt tiltja az URL-t, a robot nem kapja meg a fejlécet. Egy letiltott, de noindex fejléccel ellátott PDF a linkek alapján az indexben maradhat.

CDN vagy proxy által felülírt fejléc

Egy tartalomkézbesítő hálózat vagy fordított proxy a saját szabályai szerint hozzáadhat, eltávolíthat vagy felülírhat fejléceket. Előfordul, hogy a szerveren helyes a beállítás, de a látogatóhoz és a robothoz egy módosított válasz érkezik. A mérést ezért mindig a nyilvános URL-en végezd, ne csak a szerveren belül.

Elírt fejlécnév vagy érték

A robot csak a pontos nevű fejlécet ismeri fel. Egy elírás, például a többes számú Robots helyett egyes számú Robot, vagy a direktívák elgépelése miatt a szabály csendben hatástalan marad. A szerver hibaüzenetet nem ad, hiszen számára ez csak egy ismeretlen fejléc. Az ellenőrzésnél ezért ne csak azt nézd, hogy van-e fejléc, hanem azt is, hogy betűre pontosan helyes-e.

Elveszett fejlécek egy új szabály után

Nginx szerveren gyakori, hogy valaki egy location blokkba új add_header sort tesz, és ezzel akaratlanul megszünteti a felsőbb szinten beállított fejlécek öröklését. Ha egy korábban működő X-Robots-Tag egy konfigurációs módosítás után eltűnik, érdemes ezt ellenőrizni.

Tévhit: az X-Robots-Tag csak nagy webhelyeknek kell

Már egy kis webhelyen is előfordulhat, hogy egy régi árlista vagy egy belső használatra szánt PDF megjelenik a találati listán. Ilyenkor az X-Robots-Tag a legegyszerűbb, célzott megoldás, és nem kell hozzá a teljes webhely szerkezetét megváltoztatni.

Mérés

Az X-Robots-Tag méréséhez a HTTP-válaszfejléceket kell megnézni. Ez nem bonyolult, de másfajta eszközt kíván, mint a HTML vizsgálata. A legfontosabb, hogy a nyilvános, élő URL-t vizsgáld, pontosan úgy, ahogy a robot is kéri.

Közzététel előtti ellenőrzés

  1. Parancssorból a curl -I https://example.hu/fajl.pdf parancs kiírja a válasz fejléceit. Keresd meg közöttük az X-Robots-Tag sort.
  2. Mivel egyes szerverek a csak fejlécet kérő (HEAD) és a teljes (GET) kérésre eltérően válaszolhatnak, kétes esetben teljes kéréssel is ellenőrizz.
  3. A böngésző fejlesztői eszközeiben a hálózati fülön egy kérésre kattintva szintén láthatók a válaszfejlécek.
  4. Egy feltérképező programmal végigfuttatva a webhelyet kiszűrheted az összes URL-t, amelynek fejlécében noindex áll, fájltípustól függetlenül.
  5. Ellenőrizz néhány olyan URL-t is, amelyre a szabály nem vonatkozhat, hogy lásd, nem túl tág-e.

Közzététel utáni mérés

A Google Search Console indexelési jelentése a noindex miatt kizárt URL-eket akkor is mutatja, ha a jelzés fejlécből jött. Az URL-vizsgálat eszköz egy konkrét URL-ről megmondja, hogy a Google engedélyezettnek látja-e az indexelést. Ha egy HTML lap forráskódjában nincs noindex, a Search Console mégis noindexet jelez, szinte biztos, hogy a fejlécben van az ok.

Második kidolgozott példa: a rejtélyes noindex

Egy webhely blogrovata költözés után kiesett az indexből. A cikkek forráskódjában nem volt noindex, a tartalomkezelő rendszer beállításai rendben voltak, a robots.txt nem tiltott semmit. A Search Console mégis noindexet jelzett. A fejlécek vizsgálata megmutatta az okot: a blog egy új könyvtárba került, és a szerver konfigurációjában erre a könyvtárra egy régi, tesztelésre szánt szabály noindex fejlécet tett. A szabály törlése után a cikkek újra indexelhetők lettek. A tanulság: ha a HTML tiszta, de a kereső noindexet lát, a fejlécekkel kell kezdeni.

Ellenőrzőlista

  • A nem HTML fájlok indexelését X-Robots-Tag szabályozza, ahol szükséges.
  • A fontos HTML lapok válaszfejlécében nincs noindex.
  • Minden szerverszabály hatóköre a lehető legszűkebb.
  • A fejlécben és a HTML-ben lévő direktívák nem mondanak ellent egymásnak.
  • A noindex fejlécű URL-ek a robots.txt szerint lekérhetők.
  • A mérés a nyilvános URL-en történik, CDN és proxy után.
  • Élesítés után a fejlécek is ellenőrizve vannak.

Kapcsolódó részletes útmutatók

Az X-Robots-Tag a meta robots testvére: ugyanazokat a direktívákat adja meg, más helyen. A feltérképezés tiltásáról a robots.txt útmutató, a változatok közti választásról a canonical útmutató, a HTTP-válaszok egészéről a státuszkódokról szóló útmutató ír.

Csináltassuk meg helyetted

Ha ez sok, mi elvégezzük. Egy munkanapon belül konkrét ajánlatot kapsz.

Ajánlatot kérek