Modul 1 · 1.2
Feltérképezés: hogyan találja meg egy keresőmotor a webhelyét
Modul 1: Hogyan működnek a keresőmotorok · Olvasási idő: 11 perc
Tanulási cél: A lecke után el tudja magyarázni, hogyan fedez fel egy crawler új oldalakat, milyen állapotkódokkal találkozik és mit jelentenek ezek, valamint mi tartja vissza a crawlert.
Kulcsfogalmak: crawler (Googlebot, Bingbot), linkek követése, webhelytérkép (sitemap), HTTP-állapotkód (200, 301, 302, 404, 410, 429, 5xx), átirányítás, feltérképezési keret (crawl budget), JavaScript és renderelés, árva oldal, robots.txt
Mi az a crawler?
A crawler (más néven spider vagy bot) olyan program, amely weboldalakat tölt le, ugyanúgy, ahogy az Ön böngészője, csak automatikusan és hatalmas léptékben. A Google crawlere a Googlebot, a Bingé a Bingbot. Lekérnek egy címet, visszakapják a HTML-t, kiolvassák belőle a linkeket, és az új címeket felveszik a listájukra, hogy később letöltsék őket.
A Google szerint a Googlebot átlagosan legfeljebb néhány másodpercenként egyszer keres fel egy webhelyet, és a kérések többsége a Googlebot okostelefonos változatától érkezik. A Google tehát elsősorban úgy nézi a webhelyét, ahogyan egy telefon látja. Erre a 4.2. lecke tér vissza.
Egy crawler Googlebotnak is kiadhatja magát: a név (a user-agent) könnyen utánozható. A Google azt javasolja, hogy a gyanús látogatást az IP-cím fordított DNS-lekérdezésével ellenőrizze. Ez akkor hasznos, ha a szervernaplójában olyan „Googlebot” bukkan fel, amely furcsa dolgokat művel.
Hogyan talál új oldalakat egy crawler?
A Google három módot említ:
- A már ismert oldalak újbóli felkeresése. Itt veszi észre a változásokat és az új linkeket.
- Linkek követése. Egy link egy olyan oldalról, amelyet a Google már ismer, egy új oldalra: ez a legfontosabb módja annak, hogy egy oldalt megtaláljanak. Ez érvényes a saját webhelyén belüli linkekre (a menü, egy link a szövegben) és a más webhelyekről érkező linkekre is.
- Egy Ön által megadott lista: a webhelytérkép (sitemap). A webhelytérkép egy fájl, amely az oldalai címeit tartalmazza. Beküldheti a Search Console-ban, vagy megadhatja a robots.txt fájlban (3.4. lecke). A Google szerint a webhelytérkép nem kötelező, de hasznos, különösen új webhelyeknél, amelyekre még kevés link mutat, nagy webhelyeknél, és a webhely mélyén található oldalaknál.
A linkeknek valódi linkeknek kell lenniük
A Google csak akkor tud követni egy linket, ha az egy hagyományos <a> elem href attribútummal:
<a href="/bruidsboeketten">Bruidsboeketten</a> <!-- jó -->
<span onclick="ga('/bruidsboeketten')">Bruidsboeketten</span> <!-- a Google számára nem link -->Egy gomb, amely csak JavaScripttel ugrik egy másik oldalra, a crawler számára nem link. Az olyan oldalt, amelyre sehonnan nem mutat link, árva oldalnak (orphan page) nevezzük. Ezt a crawler csak a webhelytérképen keresztül találja meg, és a látogatók is nehezen jutnak el hozzá. Egy új oldalra ezért mindig mutasson link valahonnan, a menüből vagy egy szövegből.
JavaScript: előbb letöltés, később futtatás
Sok modern webhely JavaScripttel építi fel az oldalt a böngészőben. A Google ezt kezelni tudja: a JavaScriptet a Chromium, a Chrome böngésző alapjának egy friss verziójával futtatja. Ezt renderelésnek nevezzük. A Google az ilyen oldalak feldolgozását három szakaszként írja le: feltérképezés, renderelés és indexelés. A 200-as állapotkódú oldalak egy várólistára kerülnek, ahol a renderelésre várnak.
Ennek két következménye van:
- Amit csak a JavaScript tesz az oldalra, azt a Google később látja, mint ami közvetlenül a HTML-ben szerepel.
- Nem minden crawler futtat JavaScriptet. Ezt maga a Google is kimondja. A közvetlenül a HTML-ben szereplő szöveg, címek és linkek tehát minden keresőmotor számára a legbiztonságosabbak. A Google szerint a szerveroldalon előállított HTML „továbbra is jó ötlet”.
A tanfolyam automatikus ellenőrzései a HTML-t úgy olvassák, ahogyan a szerver elküldi, JavaScript nélkül. Amit Ön a böngészőjében lát, eltérhet ettől.
Állapotkódok: mit válaszol a szerver
A szerver minden oldalhoz egy állapotkódot is küld. Ez nem látható a képernyőn, de a crawler ezt olvassa el elsőként:
| Kód | Jelentés | Mit kezd vele a Google |
|---|---|---|
| 200 | OK, itt az oldal | A tartalom továbbkerül az indexelésre (a felvétel nem garantált) |
| 301 / 308 | Véglegesen áthelyezve egy másik címre | Erős jelzés arra, hogy az új cím a helyes |
| 302 / 307 | Ideiglenesen máshol található | Gyenge jelzés; gyakran a régi cím marad a fő cím |
| 404 / 410 | Nem létezik (már) | A korábban felvett cím kikerül az indexből; a Google egyre ritkábban látogatja |
| 429 | Túl sok kérés | A Google ideiglenesen lassítja a feltérképezést |
| 5xx | Hiba a szerveren | A Google ideiglenesen lassítja a feltérképezést; ha egy cím tartósan szerverhibát ad, végül kikerül az indexből |
Figyeljen a soft 404 hibára: ez olyan oldal, amely „nem található” üzenetet mutat, de 200-as állapotkódot ad. A crawler számára valódi oldalnak tűnik, a látogató számára nem. A Search Console az ilyen oldalakat külön jelzi. Egy törölt oldalnak ezért valódi 404-es vagy 410-es kódot kell adnia, vagy 301-gyel át kell irányítania egy helyettesítő oldalra.
Az átirányítási láncot (http, majd https, majd www, majd az új oldal) a Google követi, nagyjából tíz lépésig, de minden lépés időbe kerül. A 4.1. lecke megmutatja, hogyan oldhatja meg ezt egyetlen lépésben.
Mi tartja vissza a crawlert?
A Google a következőket nevezi meg annak okaként, hogy egy oldalt nem térképez fel: szerverproblémák, hálózati problémák, valamint a robots.txt olyan szabályai, amelyek megtiltják a hozzáférést a Googlebot számára. A gyakorlatban ezenkívül ezekkel találkozhat:
- a webhely még „karbantartási módban” van, vagy jelszó védi;
- a WordPressben bejelölt „Keresőmotorok eltanácsolása a honlap indexelésétől” jelölőnégyzet, amely noindexet állít be (ez már a 2. lépés, de a hatás ugyanaz: az oldal nem található meg);
- egy védelem vagy tűzfal, amely az ismeretlen botokat 403-as vagy 429-es kóddal elutasítja;
- a webhely csak JavaScript-gombokkal navigálható.
A robots.txt külön leckét kap (3.3). Egyelőre elég ennyi: ez egy szöveges fájl a https://www.example.com/robots.txt címen, amely megmondja, hogy a webhely mely részeit nem töltheti le a crawler.
Feltérképezési keret: a legtöbb webhelynek nem kell vele foglalkoznia
Az interneten sokat olvashat a feltérképezési keretről (crawl budget): arról, hogy a Google hány oldalt akar és tud letölteni az Ön webhelyéről. A Google szerint az erről szóló útmutató nagy webhelyeknek szól, durva becsléssel egymilliónál több oldallal, vagy tízezernél több, naponta változó oldallal. Ha az új oldalait már a közzététel napján letöltik, nem kell ezzel foglalkoznia. A Bloemenatelier Lotte harminc oldalas webhelyéhez hasonló webhelyeknél ez nem téma. Egy naprakész webhelytérkép és az indexelési jelentés (Page indexing) időnkénti átnézése elegendő.
A gyakorlatban: a szervernaplója
A DirectAdminban és a hasonló vezérlőpultokban megtekintheti webhelye hozzáférési naplóját. Keressen rá a „Googlebot” vagy a „bingbot” szóra, és látni fogja, mely oldalakat kérték le, és milyen állapotkódot kaptak. Ha sok 404-es vagy 5xx-es hibát lát, tudja, hol kell kezdenie. Más szolgáltatóknál a naplókat általában hasonló néven találja meg az ügyfélpanelen.
Összefoglalás
- A crawler letölti az oldalakat, és új címeket a linkeken és a webhelytérképen keresztül talál.
- Csak a valódi
<a href>linkeket követi; az az oldal, amelyre nem mutat link, árva oldal. - A Google futtatja a JavaScriptet, de később; más crawlerek gyakran nem. A fontos tartalom a HTML-be való.
- Az állapotkód határozza meg, mit tesz a crawler: 200 feldolgozás, 301 áthelyezés, 404/410 eltávolítás, 5xx és 429 lassabb feltérképezés.
- A feltérképezési keret csak nagyon nagy vagy nagyon gyorsan változó webhelyeknél számít.
Kvíz
Feladat
A1.2. feladat: Mit lát egy crawler a kezdőlapján? Adja meg webhelye címét (vagy a www.wikipedia.org címet, ha nincs saját webhelye). Ezután adja meg, mire számít: a végső oldal állapotkódját, azt a címet, ahová az átirányítások után jut, és azt, hogy van-e rajta noindex. A program crawlerként, JavaScript nélkül tölti le a kezdőlapot, és megmutatja az átirányítási láncot, az állapotkódot, a HTML-ben található, saját webhelyére mutató valódi linkek számát, valamint azt, hogy az oldal szövege JavaScript nélkül is olvasható-e.
További olvasnivaló
Az alábbi cikkekben szereplő lépések a WebOké vezérlőpultjaira vonatkoznak; más szolgáltatóknál hasonlóan működik.
- DirectAdmin útmutató 4.7: Weboldal átirányítások: egy domain vagy oldal továbbítása
- DirectAdmin útmutató 17.2: Oldal áttekintés és naplók: a hibanapló és a hozzáférési napló
- Látogatók kötelező átirányítása https-re
- Google, Hogyan befolyásolják a HTTP-állapotkódok és a hálózati hibák a Google Keresést: https://developers.google.com/search/docs/crawling-indexing/http-network-errors
- Google, A JavaScript-SEO alapjai: https://developers.google.com/search/docs/crawling-indexing/javascript/javascript-seo-basics
- Google, Feltérképezési keret nagy webhelyekhez: https://developers.google.com/crawling/docs/crawl-budget
