1 modulis · 1.2
Tikrinimas (crawling): kaip paieškos sistema randa Jūsų svetainę
1 modulis: Kaip veikia paieškos sistemos · Skaitymo laikas: 11 min.
Mokymosi tikslas: Po šios pamokos galėsite apibūdinti, kaip tikrintuvas (crawler) randa naujus puslapius, kokius būsenos kodus jis gauna ir ką jie reiškia, bei kas tikrintuvui trukdo.
Pagrindinės sąvokos: tikrintuvas (Googlebot, Bingbot), nuorodų sekimas, svetainės schema (sitemap), HTTP būsenos kodas (200, 301, 302, 404, 410, 429, 5xx), nukreipimas, tikrinimo biudžetas (crawl budget), JavaScript ir atvaizdavimas (rendering), našlaitinis puslapis (orphan page), robots.txt
Kas yra tikrintuvas
Tikrintuvas (crawler, dar vadinamas spider arba bot) yra programa, kuri gauna tinklalapius taip pat, kaip tai daro Jūsų naršyklė, tik automatiškai ir milžininiu mastu. Google turi Googlebot, Bing turi Bingbot. Jie užklausia adresą, gauna HTML, perskaito, kokios nuorodos jame yra, ir tuos naujus adresus įrašo į savo sąrašą, kad vėliau juos aplankytų.
Google teigia, kad Googlebot svetainėje vidutiniškai lankosi ne dažniau kaip kartą per kelias sekundes ir kad dauguma užklausų ateina iš Googlebot išmaniojo telefono versijos. Taigi Google Jūsų svetainę daugiausia mato taip, kaip ją mato telefonas. Prie to grįšime 4.2 pamokoje.
Tikrintuvas gali ir apsimesti Googlebot: pavadinimą (user-agent) lengva suklastoti. Google rekomenduoja įtartiną apsilankymą patikrinti atvirkštine IP adreso DNS užklausa. Tai naudinga, jei serverio žurnale matote „Googlebot“, kuris elgiasi keistai.
Kaip tikrintuvas randa naujus puslapius
Google nurodo tris būdus:
- Pakartotinai aplanko jau žinomus puslapius. Juose jis pastebi pakeitimus ir naujas nuorodas.
- Seka nuorodas. Nuoroda iš Google jau žinomo puslapio į naują puslapį yra svarbiausias būdas būti rastam. Tai galioja nuorodoms Jūsų pačių svetainėje (meniu, nuoroda tekste) ir nuorodoms iš kitų svetainių.
- Jūsų pateiktas sąrašas: svetainės schema (sitemap). Svetainės schema yra failas su Jūsų puslapių adresais. Ją galite pateikti Search Console arba nurodyti robots.txt faile (3.4 pamoka). Pasak Google, svetainės schema nėra privaloma, bet naudinga, ypač naujoms svetainėms, į kurias dar mažai nuorodų, didelėms svetainėms ir puslapiams, esantiems giliai svetainės struktūroje.
Nuorodos turi būti tikros nuorodos
Google gali sekti nuorodą tik tada, kai tai įprastas <a> elementas su href:
<a href="/bruidsboeketten">Bruidsboeketten</a> <!-- gerai -->
<span onclick="ga('/bruidsboeketten')">Bruidsboeketten</span> <!-- Google tai ne nuoroda -->Mygtukas, kuris į kitą puslapį pereina tik naudojant JavaScript, tikrintuvui nėra nuoroda. Puslapis, į kurį niekur nėra nuorodos, vadinamas našlaitiniu puslapiu (orphan page). Tikrintuvas jį randa tik per svetainės schemą, o ir lankytojams jį rasti sunku. Todėl į naują puslapį visada turėtų būti nuoroda Jūsų meniu arba tekste.
JavaScript: pirmiausia gauti, vėliau vykdyti
Daug šiuolaikinių svetainių puslapį sukuria naršyklėje naudodamos JavaScript. Google tai sugeba: jis vykdo JavaScript naudodamas naujausią Chromium versiją, Chrome naršyklės pagrindą. Tai vadinama atvaizdavimu (rendering). Google tokiems puslapiams aprašo tris etapus: tikrinimą, atvaizdavimą ir indeksavimą. Puslapiai su būsena 200 patenka į eilę atvaizduoti.
Dvi pasekmės:
- Tai, kas puslapyje atsiranda tik po JavaScript, Google mato vėliau nei tai, kas iškart yra HTML.
- Ne kiekvienas tikrintuvas vykdo JavaScript. Tai pripažįsta ir pati Google. Tekstas, pavadinimai ir nuorodos, esantys tiesiai HTML, yra saugiausi visoms paieškos sistemoms. Google serveryje sukurtą HTML vadina „vis dar gera mintimi“.
Automatinės šio kurso patikros skaito HTML tokį, kokį jį siunčia serveris, be JavaScript. Tai, ką matote savo naršyklėje, gali nuo to skirtis.
Būsenos kodai: ką atsako serveris
Su kiekvienu puslapiu serveris siunčia būsenos kodą. Ekrane jo nematote, bet tikrintuvas jį perskaito pirmiausia:
| Kodas | Reikšmė | Ką su juo daro Google |
|---|---|---|
| 200 | Gerai, štai puslapis | Turinys perduodamas indeksuoti (įtraukimas negarantuojamas) |
| 301 / 308 | Visam laikui perkeltas kitu adresu | Stiprus signalas, kad teisingas yra naujas adresas |
| 302 / 307 | Laikinai kitur | Silpnas signalas; senas adresas dažnai lieka pagrindiniu |
| 404 / 410 | Neegzistuoja (nebeegzistuoja) | Anksčiau įtrauktas adresas pašalinamas iš indekso; Google jį lanko vis rečiau |
| 429 | Per daug užklausų | Google laikinai tikrina lėčiau |
| 5xx | Serverio klaida | Google laikinai tikrina lėčiau; jei adresas nuolat grąžina serverio klaidą, ilgainiui jis iškrenta iš indekso |
Atkreipkite dėmesį į soft 404: puslapis, kuris rodo „nerasta“, bet grąžina būseną 200. Tikrintuvui jis atrodo kaip tikras puslapis, lankytojui ne. Search Console tokius puslapius nurodo atskirai. Todėl pašalintas puslapis turėtų grąžinti tikrą 404 arba 410, arba 301 nukreipimu vesti į pakaitinį puslapį.
Nukreipimų grandinę (iš http į https, į www, į naują puslapį) Google seka iki maždaug dešimties žingsnių, bet kiekvienas žingsnis užima laiko. 4.1 pamokoje parodoma, kaip tai padaryti vienu žingsniu.
Kas trukdo tikrintuvui
Kaip priežastis, kodėl puslapis netikrinamas, Google nurodo serverio problemas, tinklo problemas ir robots.txt taisykles, draudžiančias Googlebot prieigą. Praktikoje dar pasitaiko:
- svetainė vis dar veikia „priežiūros režimu“ arba yra apsaugota slaptažodžiu;
- WordPress pažymėtas langelis „Prašyti paieškos sistemų neindeksuoti šios svetainės“, kuris nustato noindex (tai 2 etapas, bet poveikis tas pats: svetainės nerasti);
- apsauga arba ugniasienė, kuri nežinomus botus atmeta su 403 arba 429;
- svetainė, kurioje naršyti galima tik JavaScript mygtukais.
robots.txt skirta atskira pamoka (3.3). Kol kas pakanka žinoti: tai tekstinis failas adresu https://www.example.com/robots.txt, nurodantis, kurių Jūsų svetainės dalių tikrintuvas negali gauti.
Tikrinimo biudžetas: daugumai svetainių tai ne problema
Internete daug rašoma apie tikrinimo biudžetą (crawl budget): kiek puslapių Google nori ir gali gauti iš Jūsų svetainės. Google teigia, kad jo vadovas šia tema skirtas didelėms svetainėms, apytiksliai turinčioms daugiau nei milijoną puslapių arba daugiau nei dešimt tūkstančių kasdien besikeičiančių puslapių. Jei Jūsų nauji puslapiai gaunami jau paskelbimo dieną, šiuo klausimu rūpintis nereikia. Tokiai svetainei kaip Bloemenatelier Lotte su trisdešimčia puslapių tai visai ne tema. Pakanka atnaujintos svetainės schemos ir retkarčiais peržiūrėtos indeksavimo ataskaitos.
Praktikoje: Jūsų serverio žurnalas
DirectAdmin ir panašiuose valdymo skyduose galite peržiūrėti savo svetainės prieigos žurnalą. Ieškokite „Googlebot“ arba „bingbot“ ir pamatysite, kokių puslapių jie užklausė ir kokį būsenos kodą gavo. Jei ten matote daug 404 arba 5xx klaidų, žinote, nuo ko pradėti. Kitų paslaugų teikėjų klientų skyduose žurnalai paprastai būna panašiu pavadinimu.
Santrauka
- Tikrintuvas gauna puslapius ir naujus adresus randa per nuorodas ir Jūsų svetainės schemą.
- Sekamos tik tikros
<a href>nuorodos; puslapis, į kurį nėra nuorodų, yra našlaitis. - Google vykdo JavaScript, bet vėliau; kiti tikrintuvai dažnai ne. Svarbus turinys turi būti HTML.
- Būsenos kodas lemia, ką daro tikrintuvas: 200 apdoroja, 301 perkelia, 404/410 pašalina, 5xx ir 429 tikrina lėčiau.
- Tikrinimo biudžetas svarbus tik labai didelėms arba labai greitai besikeičiančioms svetainėms.
Testas (quiz)
Užduotis
Užduotis A1.2: Ką tikrintuvas (crawler) mato Jūsų pagrindiniame puslapyje? Įveskite savo svetainės adresą (arba www.wikipedia.org, jei neturite savo svetainės). Tada įrašykite, ko tikitės: galutinio puslapio būsenos kodą, adresą, į kurį patenkate po nukreipimo, ir ar puslapyje nustatytas noindex. Programa gauna pagrindinį puslapį kaip tikrintuvas, be JavaScript, ir parodo nukreipimų grandinę, būsenos kodą, tikrų nuorodų į Jūsų pačių svetainę skaičių HTML ir ar puslapio tekstą galima perskaityti be JavaScript.
Skaitykite daugiau
Šiuose straipsniuose aprašyti veiksmai galioja WebOké valdymo skydams; kitų paslaugų teikėjų skyduose viskas veikia panašiai.
- DirectAdmin vadovas 4.7: Puslapių peradresavimai: domeno ar puslapio peradresavimas
- DirectAdmin vadovas 17.2: Svetainės apžvalga ir išrašai: klaidų žurnalas ir prieigos žurnalas
- Priverstinai nukreipti lankytojus į https
- Google, kaip HTTP būsenos kodai ir tinklo klaidos veikia Google paiešką: https://developers.google.com/search/docs/crawling-indexing/http-network-errors
- Google, JavaScript SEO pagrindai: https://developers.google.com/search/docs/crawling-indexing/javascript/javascript-seo-basics
- Google, tikrinimo biudžetas didelėms svetainėms: https://developers.google.com/crawling/docs/crawl-budget
