Modul 1 · 1.2
Pajkanje: kako iskalnik najde Vaše spletno mesto
Modul 1: Kako delujejo iskalniki · Čas branja: 11 min
Učni cilj: Po tej lekciji boste znali opisati, kako pajek odkrije nove strani, na katere statusne kode naleti in kaj pomenijo ter kaj pajka ustavi.
Ključni pojmi: pajek (Googlebot, Bingbot), sledenje povezavam, zemljevid spletnega mesta (sitemap), statusna koda HTTP (200, 301, 302, 404, 410, 429, 5xx), preusmeritev, proračun za pajkanje (crawl budget), JavaScript in upodabljanje (rendering), osirotela stran, robots.txt
Kaj je pajek
Pajek (angl. crawler, spider ali bot) je program, ki prenaša spletne strani, tako kot to počne Vaš brskalnik, le samodejno in v ogromnem obsegu. Google ima Googlebot, Bing ima Bingbot. Zahtevata naslov, dobita nazaj HTML, preberete, katere povezave so v njem, in nove naslove uvrstita na svoj seznam, da jih prenesete pozneje.
Google navaja, da Googlebot spletno mesto v povprečju ne obišče pogosteje kot enkrat na nekaj sekund in da večina zahtev prihaja od različice Googlebot za pametne telefone. Google si Vaše spletno mesto torej ogleduje predvsem tako, kot ga vidi telefon. K temu se vrnemo v lekciji 4.2.
Pajek se lahko tudi izdaja za Googlebot: ime (user-agent) je lahko ponarediti. Google priporoča, da sumljiv obisk preverite z obratnim iskanjem DNS za naslov IP. To je koristno, če v dnevniku strežnika vidite »Googlebot«, ki počne nenavadne stvari.
Kako pajek najde nove strani
Google navaja tri načine:
- Ponovni obiski strani, ki jih že pozna. Tam opazi spremembe in nove povezave.
- Sledenje povezavam. Povezava s strani, ki jo Google že pozna, na novo stran je najpomembnejši način, da Vas najde. To velja za povezave znotraj Vašega spletnega mesta (Vaš meni, povezava v besedilu) in za povezave z drugih spletnih mest.
- Seznam, ki ga posredujete Vi: zemljevid spletnega mesta (sitemap). Zemljevid spletnega mesta je datoteka z naslovi Vaših strani. Oddate ga v Search Console ali ga navedete v robots.txt (lekcija 3.4). Po Googlovih besedah zemljevid spletnega mesta ni obvezen, je pa koristen, predvsem za nova spletna mesta z malo povezavami, za velika spletna mesta in za strani, ki so globoko v strukturi.
Povezave morajo biti prave povezave
Google lahko povezavi sledi le, če gre za običajen element <a> z atributom href:
<a href="/bruidsboeketten">Bruidsboeketten</a> <!-- pravilno -->
<span onclick="ga('/bruidsboeketten')">Bruidsboeketten</span> <!-- za Google to ni povezava -->Gumb, ki na drugo stran skoči samo z JavaScriptom, za pajka ni povezava. Stran, na katero ne kaže nobena povezava, se imenuje osirotela stran (orphan page). Pajek jo najde samo prek zemljevida spletnega mesta, tudi obiskovalci jo težko najdejo. Na novo stran mora zato vedno kazati povezava v Vašem meniju ali v kakšnem besedilu.
JavaScript: najprej prenos, izvedba pozneje
Veliko sodobnih spletnih mest stran sestavi z JavaScriptom v brskalniku. Google to zmore: JavaScript izvede z novejšo različico Chromiuma, osnove brskalnika Chrome. Temu pravimo upodabljanje (rendering). Google za takšne strani opisuje tri faze: pajkanje, upodabljanje in indeksiranje. Strani s statusom 200 pridejo v čakalno vrsto za upodabljanje.
Dve posledici:
- Kar se na strani pojavi šele po izvedbi JavaScripta, Google vidi pozneje kot tisto, kar je neposredno v HTML.
- Vsak pajek ne izvaja JavaScripta. To pravi tudi Google sam. Besedilo, naslovi in povezave neposredno v HTML so zato najvarnejša izbira za vse iskalnike. Google HTML, ki nastane na strežniku, označuje kot »še vedno dobro zamisel«.
Samodejna preverjanja v tem tečaju berejo HTML tako, kot ga pošlje strežnik, brez JavaScripta. Kar vidite v brskalniku, se lahko od tega razlikuje.
Statusne kode: kaj odgovori strežnik
Strežnik pri vsaki strani pošlje tudi statusno kodo. Na zaslonu je ne vidite, pajek pa jo prebere najprej:
| Koda | Pomen | Kaj Google naredi z njo |
|---|---|---|
| 200 | V redu, tukaj je stran | Vsebina gre naprej v indeksiranje (vključitev ni zagotovljena) |
| 301 / 308 | Trajno preseljeno na drug naslov | Močan signal, da je novi naslov pravi |
| 302 / 307 | Začasno drugje | Šibek signal; stari naslov pogosto ostane glavni naslov |
| 404 / 410 | Ne obstaja (več) | Prej vključen naslov odstrani iz indeksa; Google ga obiskuje vse redkeje |
| 429 | Preveč zahtev | Google začasno upočasni pajkanje |
| 5xx | Napaka na strežniku | Google začasno upočasni pajkanje; če naslov kar naprej vrača napako strežnika, sčasoma izpade iz indeksa |
Bodite pozorni na soft 404: stran, ki prikazuje »ni najdeno«, vrne pa status 200. Za pajka je videti kot prava stran, za obiskovalca ne. Search Console takšne strani prikaže posebej. Odstranjena stran naj zato vrne pravo kodo 404 ali 410 ali pa naj s kodo 301 preusmeri na nadomestno stran.
Verigi preusmeritev (http na https na www na novo stran) Google sicer sledi, do približno deset korakov, vendar vsak korak vzame čas. Lekcija 4.1 pokaže, kako to naredite v enem koraku.
Kaj pajka ustavi
Google kot vzroke, da stran ni prepajkana, navaja: težave s strežnikom, težave z omrežjem in pravila v robots.txt, ki Googlebotu prepovedujejo dostop. V praksi pogosto vidite še:
- spletno mesto, ki je še v »načinu vzdrževanja« ali je zaščiteno z geslom;
- v WordPressu potrditveno polje, ki iskalnike odvrača od indeksiranja (v angleški različici »Discourage search engines from indexing this site«) in nastavi noindex (to je korak 2, učinek pa je enak: strani ni mogoče najti);
- zaščito ali požarni zid, ki neznane bote zavrne s kodo 403 ali 429;
- spletno mesto, po katerem se je mogoče premikati samo z gumbi v JavaScriptu.
robots.txt ima svojo lekcijo (3.3). Za zdaj zadošča: to je besedilna datoteka na https://www.example.com/robots.txt, ki določa, katerih delov Vašega spletnega mesta pajek ne sme prenašati.
Proračun za pajkanje: za večino spletnih mest ni skrbi
Na spletu boste veliko prebrali o proračunu za pajkanje (crawl budget): koliko strani na Vašem spletnem mestu Google želi in zmore prenesti. Google pravi, da so njegova navodila o tem namenjena velikim spletnim mestom, po grobi oceni z več kot milijonom strani ali z več kot deset tisoč stranmi, ki se spreminjajo vsak dan. Če Google Vaše nove strani prenese že na dan objave, se Vam s tem ni treba ukvarjati. Za spletno mesto, kot je tisto od Bloemenatelier Lotte s tridesetimi stranmi, to ni tema. Dovolj sta posodobljen zemljevid spletnega mesta in občasen pogled v poročilo o indeksiranju.
V praksi: dnevnik Vašega strežnika
V DirectAdminu in podobnih nadzornih ploščah si lahko ogledate dnevnik dostopov Vašega spletnega mesta. Poiščite »Googlebot« ali »bingbot« in videli boste, katere strani so zahtevali in katero statusno kodo so dobili. Če tam vidite veliko kod 404 ali napak 5xx, veste, kje začeti. Pri drugih ponudnikih dnevnike običajno najdete pod podobnim imenom v uporabniški nadzorni plošči.
Povzetek
- Pajek prenaša strani in nove naslove najde prek povezav in prek Vašega zemljevida spletnega mesta.
- Sledi samo pravim povezavam
<a href>; stran, na katero ne kaže nobena povezava, je osirotela. - Google JavaScript izvede, a pozneje; drugi pajki pogosto ne. Pomembna vsebina sodi v HTML.
- Statusna koda določa, kaj pajek naredi: 200 obdela, 301 preseli, 404/410 odstrani, pri 5xx in 429 upočasni pajkanje.
- Proračun za pajkanje je pomemben le pri zelo velikih ali zelo hitro spreminjajočih se spletnih mestih.
Kviz
Naloga
Naloga A1.2: Kaj vidi pajek na Vaši domači strani? Vnesite naslov svojega spletnega mesta (ali www.wikipedia.org, če lastnega spletnega mesta nimate). Nato vnesite, kaj pričakujete: statusno kodo končne strani, naslov, na katerem pristanete po preusmeritvah, in ali je na strani noindex. Program prenese domačo stran kot pajek, brez JavaScripta, in prikaže verigo preusmeritev, statusno kodo, število pravih povezav na Vaše lastno spletno mesto v HTML in ali je besedilo strani berljivo brez JavaScripta.
Za nadaljnje branje
Koraki v teh člankih veljajo za nadzorne plošče WebOké; pri drugih ponudnikih je postopek podoben.
- Priročnik DirectAdmin 4.7: Preusmeritve spletišč: preusmeritev domene ali strani
- Priročnik DirectAdmin 17.2: Povzetek in dnevniki spletnega mesta: dnevnik napak in dnevnik dostopa
- Obvezna preusmeritev obiskovalcev na https
- Google, Kako statusne kode HTTP ter napake omrežja in DNS vplivajo na Google Iskanje: https://developers.google.com/search/docs/crawling-indexing/http-network-errors
- Google, Osnove SEO za JavaScript: https://developers.google.com/search/docs/crawling-indexing/javascript/javascript-seo-basics
- Google, Proračun za pajkanje za velika spletna mesta: https://developers.google.com/crawling/docs/crawl-budget
