Robots.txt je tekstualna datoteka u korijenu sajta u kojoj stoje upute robotima pretraživača: koje dijelove smiju obilaziti, a koje da preskoče. Otvara se na adresi vasadomena.ba/robots.txt i može je pročitati bilo ko, uključujući vašu konkurenciju.
To je prva stvar koju Googleov robot zatraži kad dođe na sajt. Datoteka je mala, često ima manje od deset redova, a jedan pogrešan red u njoj može ukloniti cijeli sajt iz pretrage. Odnos rizika i dužine je najlošiji u cijelom SEO poslu.
Šta ova datoteka zaista radi
Robots.txt upravlja crawlingom, dakle obilaskom i čitanjem stranica. Ne upravlja indeksacijom, koliko god to ime sugerisalo.
Razlika nije akademska. Ako zabranite pristup stranici, robot je neće pročitati, ali ako na nju vodi link s nekog drugog sajta, Google zna da adresa postoji i može je prikazati u rezultatima. Prikazaće je bez opisa, s napomenom da sadržaj nije dostupan, što izgleda gore nego da je stranica normalno indeksirana.
Zato pravilo glasi ovako. Kada želite da stranica ne bude u pretrazi, koristite noindex oznaku i pustite robota da je pročita. Kada želite da robot ne troši vrijeme na dijelove sajta koji nemaju šta tražiti u pretrazi, koristite robots.txt.
Kako datoteka izgleda iznutra
Sintaksa je jednostavna. Grupa pravila počinje redom User-agent, u kojem se navodi na kojeg robota se pravila odnose, a zvjezdica znači sve. Ispod idu redovi Disallow i Allow s putanjama.
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /korpa/
Disallow: /pretraga
Sitemap: https://vasadomena.ba/sitemap_index.xml
Putanja se čita s lijeva na desno, od korijena. Disallow: /korpa/ zabranjuje sve što počinje tim nizom. Prazan Disallow ne zabranjuje ništa, a Disallow s kosom crtom zabranjuje sve.
Kod sukoba pravila pobjeđuje ono preciznije, a ne ono koje stoji niže. Zato Allow za jednu datoteku unutar zabranjenog direktorija radi kako se očekuje.
Red Sitemap stoji sam za sebe i ne pripada nijednoj grupi. Tu ide puna adresa sitemapa, s protokolom i domenom.
Šta ima smisla zabraniti
- Administrativni dio sistema za upravljanje sadržajem, jer u pretrazi nema šta tražiti.
- Rezultate interne pretrage, koji stvaraju beskonačan broj gotovo praznih stranica.
- Korpu, blagajnu i stranice računa kupca u web trgovini.
- Adrese s parametrima za filtriranje i sortiranje kod trgovina s velikim katalogom, gdje jedna kategorija zna proizvesti hiljade kombinacija.
- Datoteke za internu upotrebu, izvoze i privremene direktorije.
I šta nema smisla zabraniti. CSS i JavaScript datoteke se nikad ne zabranjuju, jer Google stranicu iscrtava kao pregledač i bez njih vidi razbijen raspored. Ne zabranjuju se ni slike ako želite promet iz pretrage slika, a kod smještaja i restorana taj promet zna biti ozbiljan.
Ne zabranjuje se ni stranica koju ste označili s noindex, jer robot tu oznaku mora pročitati da bi je poslušao.
Kada je ova datoteka zaista bitna
Kod male prezentacijske stranice s petnaest podstranica robots.txt je higijena. Google će ionako obići sve za nekoliko minuta i nema šta uštedjeti.
Postaje ozbiljan alat kad sajt naraste. Web trgovina s pet hiljada proizvoda, filterima po veličini, boji i cijeni, lako proizvede stotine hiljada adresa koje niko nikad neće tražiti. Robot na njima troši vrijeme koje bi mogao potrošiti na nove proizvode, pa se dešava da nova ponuda uđe u pretragu tek za dvije sedmice.
Isto vrijedi za portale s velikom arhivom i za sajtove sa stranicama koje se generišu iz upita. Tu robots.txt direktno određuje koliko brzo se novo pojavi u pretrazi.
Kako se datoteka testira
Prije nego što bilo šta promijenite, otvorite postojeću datoteku u pregledaču i sačuvajte njen sadržaj. To je vaša tačka povratka i traje deset sekundi.
Google Search Console ima provjeru u kojoj zalijepite adresu stranice i vidite blokira li je vaša datoteka. Ako je odgovor blokirana, pored stoji i tačan red koji je za to odgovoran, pa se ispravka svodi na brisanje jedne linije.
Isti alat koristite i u drugom smjeru. Uzmite pet adresa koje sigurno ne želite u pretrazi, recimo korpu i stranicu zahvale, pa provjerite jesu li zaista pokrivene. Kod pravila s kosim crtama i zvjezdicama se lako pogriješi, a greška se ne vidi dok neko ne primijeti stranicu zahvale u rezultatima.
Nakon izmjene sačekajte da Google ponovo pročita datoteku. To obično traje do dan, a u Search Consoleu se vidi kada se desilo. Do tada stara pravila i dalje važe.
Ko je zapravo mijenja
Kod WordPressa datoteku najčešće generiše SEO dodatak, pa se mijenja kroz njegove postavke, a ne prenošenjem datoteke na server. Ako datoteku napišete ručno a dodatak nastavi generisati svoju, dobićete dvije verzije i nepredvidiv rezultat.
Kod Shopifyja je datoteka do nedavno bila potpuno zaključana, a danas se mijenja kroz posebnu datoteku u temi. Kod sajtova rađenih po mjeri stoji na serveru i mijenja je onaj ko sajt održava.
U svakom slučaju vrijedi znati ko je zadnji dirao i zašto. Jedan red u ovoj datoteci može ukloniti sajt iz pretrage, pa je promjena bez traga rizik koji se ne isplati.
Greške koje najčešće viđamo
Prva i najskuplja je zabrana cijelog sajta koja preživi lansiranje. Razvojna verzija ima Disallow: / da bi ostala izvan pretrage, sajt se objavi, datoteka se prenese kakva jest. Promet ne pada odmah, nego kroz nekoliko sedmica, pa uzrok niko ne poveže s danom objave. Prva provjera poslije svakog lansiranja treba biti upravo ova datoteka.
Druga je zabrana CSS i JavaScript datoteka, obično iz uvjerenja da se tako štedi vrijeme robota. Google stranicu onda vidi razbijenu i ne može procijeniti je li prilagođena telefonu, što se odmah vidi na pozicijama.
Treća je pokušaj da se robots.txt koristi kao zaštita. Datoteku može otvoriti svako, pa spisak zabranjenih direktorija radi kao mapa za onoga ko traži gdje vam je administracija. Ono što ne smije biti javno štiti se lozinkom na serveru.
Četvrta je zabrana stranice koja ima noindex oznaku. Dvije upute se poništavaju: robot ne smije ući, pa oznaku nikad ne pročita, pa stranica ostaje u indeksu. Rješenje je ukloniti zabranu i pustiti robota da pročita oznaku.
Peta je kopiranje tuđe datoteke. Robots.txt velikog portala odražava strukturu tog portala. Prenesen na trgovinu s WooCommerceom zna zabraniti dijelove koji su vam potrebni, a propustiti one koji troše vrijeme.
Šesta je datoteka koja vraća grešku. Ako server na adresu robots.txt vrati grešku 500 umjesto teksta ili prazne stranice, Google to shvata kao privremeni problem i zna privremeno usporiti obilazak cijelog sajta.
Lista za provjeru
- Otvara li se vaš robots.txt na adresi vasadomena.ba/robots.txt kao običan tekst?
- Stoji li u njemu ijedan Disallow koji pogađa stranice koje želite u pretrazi?
- Ima li reda koji blokira CSS ili JavaScript datoteke?
- Je li adresa sitemapa navedena, s punom adresom i ispravnim protokolom?
- Je li ijedna stranica s noindex oznakom istovremeno zabranjena ovdje?
- Poklapa li se datoteka na produkciji s onom na testnoj verziji sajta, ili je zabrana iz razvoja preživjela?
- Prijavljuje li Search Console ijednu blokiranu adresu među stranicama koje želite indeksirane?
Pojmovi koje ćete čuti uz robots.txt
- Crawling: obilazak i čitanje stranica, dio kojim ova datoteka upravlja.
- Noindex: oznaka u kodu stranice koja traži da se stranica ne prikazuje u rezultatima.
- Crawl budžet: količina vremena koju Google odvoji za vaš sajt; postaje bitan tek kod velikih sajtova.
- User-agent: ime robota, kojim se u datoteci određuje na koga se pravila odnose.
- Sitemap: spisak stranica koje želite da pretraživači pronađu, obično naveden na kraju ove datoteke.
- Canonical: oznaka koja govori koja je verzija stranice glavna kad ih ima više.
Česta pitanja
Još o pojmu robots.txt
Šta je robots.txt?
Sprječava li robots.txt da se stranica pojavi u Googleu?
Gdje se robots.txt nalazi?
Treba li mala prezentacijska stranica robots.txt?
Kako da provjerim šta moj robots.txt zabranjuje?
Šta znači Disallow: /
Mogu li zabraniti pristup lošim robotima?
Treba li u robots.txt navesti sitemap?
Povezani pojmovi
Crawling
Proces kojim Googleovi botovi pregledavaju web stranice kako bi otkrili i pročitali sadržaj. Prvi korak prije indeksacije i rangiranja.
Sitemap
XML datoteka koja pretraživačima daje spisak svih važnih stranica vašeg sajta i pomaže Googleu da sadržaj brže i potpunije indeksira.
Noindex
Oznaka u kodu stranice kojom tražite od Googlea da stranicu pročita, ali je ne prikazuje u rezultatima pretrage.
Canonical tag
HTML oznaka koja Googleu govori koja je glavna verzija stranice kad postoji više sličnih ili dupliranih URL-ova, pa čuva SEO snagu na jednom mjestu.