Fails robots.txt ir vienkāršs teksta fails, kas atrodas mājas lapas saknes direktorijā (piemēram, https://jusu-lapa.lv/robots.txt). Tas dod norādījumus meklētājprogrammu robotiem (crawlers), kuras lapas un sadaļas tie drīkst vai nedrīkst apmeklēt un indeksēt.

Robots.txt ir daļa no Robots Exclusion Protocol — standarta, ko ievēro visi lielākie meklētājprogrammu roboti, tostarp Googlebot, Bingbot un citi. Lai gan robots.txt ir tikai ieteikums (nevis strikts aizliegums), labi pazīstamie roboti to ciena un ievēro.

Kā darbojas robots.txt?

Kad meklētājprogrammas robots pirmo reizi apmeklē mājas lapu, tas vispirms meklē failu /robots.txt servera saknes direktorijā. Ja fails eksistē, robots izlasa tajā esošos noteikumus un ievēro tos turpmākajā indeksēšanā. Process notiek šādi:

  1. Robots apmeklē https://jusu-lapa.lv/robots.txt
  2. Izlasa noteikumus un atrod sev atbilstošo User-agent sadaļu
  3. Ievēro Allow un Disallow direktīvas, apmeklējot atļautās lapas un izlaižot aizliegtās
  4. Ja robots.txt neeksistē vai ir tukšs, robots uzskata, ka drīkst apmeklēt visas lapas

Robots.txt sintakse

Robots.txt fails sastāv no vienas vai vairākām noteikumu grupām. Katra grupa sākas ar User-agent direktīvu un satur vienu vai vairākas Allow vai Disallow direktīvas.

Pamata struktūra

User-agent: [robota nosaukums vai *]
Disallow: [ceļš, ko nedrīkst apmeklēt]
Allow: [ceļš, ko drīkst apmeklēt]
Sitemap: [sitemap URL]

Galvenās direktīvas

Direktīva Apraksts Piemērs
User-agent Norāda, kuram robotam piemērot noteikumus. * nozīmē visus robotus User-agent: Googlebot
Disallow Aizliedz robotam apmeklēt norādīto ceļu Disallow: /admin/
Allow Atļauj piekļuvi norādītajam ceļam (bieži izmanto kopā ar Disallow) Allow: /admin/publiskais.html
Sitemap Norāda XML sitemap faila atrašanās vietu Sitemap: https://jusu-lapa.lv/sitemap.xml
Crawl-delay Norāda minimālo laiku (sekundēs) starp pieprasījumiem (atbalsta Bing, Yahoo) Crawl-delay: 10

Piezīme: Google neatbalsta Crawl-delay — ātruma ierobežošanai Google izmantojiet Google Search Console iestatījumus.

Praktiski piemēri

1. Atļaut visiem robotiem piekļūt visām lapām

Vienkāršākais robots.txt, kas neko neaizliedz:

User-agent: *
Allow: /

Šis ir ekvivalents tam, ka robots.txt faila vispār nav. Visi roboti var brīvi apmeklēt visas lapas.

2. Bloķēt visas lapas visiem robotiem

Ja nevēlaties, lai meklētājprogrammas indeksē jūsu lapu (piemēram, izstrādes serverī):

User-agent: *
Disallow: /

Uzmanību: šis noteikums bloķēs visu lapu no meklēšanas rezultātiem! Nekad neizmantojiet to produkcijas serverī, ja vēlaties, lai jūsu lapa ir atrodama Google.

3. Bloķēt konkrētas direktorijas

Standarta piemērs, kas aizliedz piekļuvi administrācijas panelim, privātām sadaļām un pagaidu failiem:

User-agent: *
Disallow: /admin/
Disallow: /privats/
Disallow: /tmp/
Disallow: /cgi-bin/

Sitemap: https://jusu-lapa.lv/sitemap.xml

4. Kombinēt Allow un Disallow

Varat aizliegt visu direktoriju, bet atļaut noteiktus failus tajā:

User-agent: *
Disallow: /katalogs/
Allow: /katalogs/publiskais/

Šajā piemērā robots neapmeklēs nevienu /katalogs/ lapu, izņemot tās, kas atrodas /katalogs/publiskais/ direktorijā.

5. Dažādi noteikumi dažādiem robotiem

Iespējams noteikt atšķirīgus noteikumus dažādiem robotiem:

User-agent: Googlebot
Disallow: /pagaidu/
Allow: /

User-agent: Bingbot
Disallow: /pagaidu/
Disallow: /tests/
Crawl-delay: 5

User-agent: *
Disallow: /admin/
Disallow: /pagaidu/
Disallow: /tests/

Sitemap: https://jusu-lapa.lv/sitemap.xml

6. Bloķēt konkrētu failu tipu

Izmantojot aizstājējzīmi *, var bloķēt noteikta tipa failus:

User-agent: *
Disallow: /*.pdf$
Disallow: /*.doc$

Šajā piemērā roboti nevarēs indeksēt PDF un DOC failus.

7. Tipisks WordPress robots.txt

Populārs robots.txt piemērs WordPress mājas lapām:

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /wp-includes/
Disallow: /wp-content/plugins/
Disallow: /wp-content/cache/
Disallow: /trackback/
Disallow: /feed/
Disallow: /comments/feed/
Disallow: /?s=
Disallow: /search/

Sitemap: https://jusu-lapa.lv/sitemap.xml

Šajā piemērā bloķētas WordPress sistēmas direktorijas, meklēšanas rezultātu lapas un komentāru plūsmas, bet atļauts admin-ajax.php, kas nepieciešams daudziem spraudņiem.

8. E-komercijas mājas lapas piemērs

User-agent: *
Disallow: /grozs/
Disallow: /kase/
Disallow: /mans-konts/
Disallow: /pasutijumi/
Disallow: /meklesana/?*
Disallow: /*?sort=
Disallow: /*?page=
Disallow: /*?filter=

Sitemap: https://jusu-veikals.lv/sitemap.xml

E-komercijas lapām svarīgi bloķēt lietotāju personīgās lapas, groza un kases lapas, kā arī filtrēšanas un kārtošanas parametrus, kas var radīt tūkstošiem dublētu lapu.

Aizstājējzīmes (wildcards)

Robots.txt atbalsta divas speciālas rakstzīmes ceļu norādīšanai:

Rakstzīme Nozīme Piemērs
* Atbilst jebkurai rakstzīmju virknei (ieskaitot tukšu) Disallow: /*?sort= — bloķē jebkuru URL ar parametru sort
$ Apzīmē URL beigas Disallow: /*.pdf$ — bloķē tikai failus, kas beidzas ar .pdf

Kur izvietot robots.txt?

Fails robots.txt vienmēr jānovieto mājas lapas saknes direktorijā (root directory). Tas nozīmē, ka failam jābūt pieejamam šādā adresē:

https://jusu-lapa.lv/robots.txt

Ja fails atrodas apakšdirektorijā (piemēram, https://jusu-lapa.lv/lapa/robots.txt), tas netiks atrasts un roboti to ignorēs.

  • Katram subdomēnam (blog.jusu-lapa.lv, veikals.jusu-lapa.lv) jābūt savam robots.txt failam
  • HTTP un HTTPS versijām izmanto vienu un to pašu robots.txt (ja ir pāradresēšana no HTTP uz HTTPS)

Robots.txt un SEO

Ko robots.txt var un ko nevar

Var Nevar
Bloķēt robotiem piekļuvi noteiktām lapām Garantēt, ka lapa netiks indeksēta (izmantojiet noindex)
Norādīt sitemap faila atrašanās vietu Noņemt jau indeksētu lapu no meklēšanas rezultātiem
Kontrolēt robotu satiksmi uz servera Bloķēt piekļuvi ļaunprātīgiem robotiem (tie ignorē robots.txt)
Novērst nevajadzīgu lapu indeksēšanu (filtrēšanas lapas, iekšējā meklēšana) Aizsargāt konfidenciālu saturu (izmantojiet autentifikāciju)

Biežākās kļūdas

  • CSS un JS failu bloķēšana — Google ir nepieciešami CSS un JavaScript faili, lai pareizi renderētu lapu. To bloķēšana var pasliktināt ranžēšanu
  • Svarīgu lapu nejauša bloķēšana — vienmēr pārbaudiet, vai neesat nejauši bloķējuši svarīgas lapas
  • Robots.txt izmantošana konfidenciālu datu aizsardzībai — robots.txt ir publiski pieejams fails, tāpēc ikviens var redzēt, kādas sadaļas esat bloķējuši
  • Robots.txt un noindex sajaukšana — ja vēlaties, lai lapa netiek rādīta meklēšanas rezultātos, izmantojiet meta tagu <meta name="robots" content="noindex">, nevis robots.txt

Robots.txt pārbaude

Pirms publicēšanas vienmēr pārbaudiet sava robots.txt faila pareizību:

Populāru mājas lapu robots.txt piemēri

Interesanti apskatīt, kā robots.txt izmanto lielas mājas lapas:

Google (google.com/robots.txt)

User-agent: *
Disallow: /search
Disallow: /sdch
Disallow: /groups
Disallow: /catalogs
Allow: /catalogs/about

Sitemap: https://www.google.com/sitemap.xml

Facebook (facebook.com/robots.txt)

User-agent: *
Disallow: /ajax/
Disallow: /album.php
Disallow: /checkpoint/
Disallow: /contact_importer/
Disallow: /dialog/
Disallow: /fbml/ajax/
Disallow: /feeds/
Disallow: /login.php

Lielas mājas lapas parasti bloķē simtiem vai pat tūkstošiem ceļu, lai kontrolētu, kuras sadaļas tiek indeksētas.

Rekomendētā robots.txt struktūra

Lielākajai daļai mājas lapu pietiekams robots.txt piemērs:

# Noteikumi visiem robotiem
User-agent: *
Allow: /
Disallow: /admin/
Disallow: /api/
Disallow: /tmp/
Disallow: /*?s=
Disallow: /*?search=

# Sitemap norāde
Sitemap: https://jusu-lapa.lv/sitemap.xml

Šis piemērs:

  • Atļauj visiem robotiem apmeklēt visas publiskās lapas
  • Bloķē administrēšanas, API un pagaidu failu direktorijas
  • Bloķē iekšējās meklēšanas rezultātu lapas (novēršot dublētu saturu)
  • Norāda sitemap faila atrašanās vietu ērtākai indeksēšanai

Kopsavilkums

Robots.txt ir vienkāršs, bet svarīgs SEO rīks, kas ļauj kontrolēt meklētājprogrammu robotu uzvedību jūsu mājas lapā. Atcerieties galvenos principus:

  1. Vienmēr novietojiet robots.txt saknes direktorijā — tam jābūt pieejamam pēc adreses /robots.txt
  2. Nebloķējiet CSS un JavaScript failus — Google tie ir nepieciešami lapas renderēšanai
  3. Neizmantojiet robots.txt konfidenciālu datu aizsardzībai — fails ir publiski pieejams
  4. Izmantojiet noindex, nevis robots.txt, ja vēlaties pilnībā izslēgt lapu no meklēšanas rezultātiem
  5. Norādiet sitemap — tas palīdz robotiem ātrāk atrast visas jūsu lapas
  6. Regulāri pārbaudiet — izmantojiet Google Search Console, lai pārliecinātos, ka svarīgas lapas nav nejauši bloķētas

Laboja mad, labots 1x