3. modulis · 3.3
robots.txt: ko bloķēt un ko nebloķēt
3. modulis: Lapas tehniskie pamati · Lasīšanas laiks: 13 minūtes
Mērķis: Pēc šīs nodarbības Jūs varēsiet izlasīt un uzrakstīt robots.txt, paši aprēķināt, vai Googlebot drīkst apmeklēt kādu adresi, izskaidrot, kas notiek, ja fails nav atrodams vai nav sasniedzams, un zināsiet, kāpēc robots.txt nav ne aizsardzība, ne noindex.
Pamatjēdzieni: robots.txt (RFC 9309), rāpuļprogramma, grupa, User-agent, Disallow, Allow, garākā atbilstība, vienāds garums (uzvar Allow), * un $, Sitemap:, robots.txt statusa kods (4xx, 5xx), 500 KiB, 24 stundu kešatmiņa, nav aizsardzība, nav noindex, MI rāpuļprogrammas (Google-Extended, GPTBot)
Zīme pie ārdurvīm
robots.txt ir parasts teksta fails Jūsu vietnes saknes mapē, vienmēr tajā pašā adresē: https://www.example.com/robots.txt. Pieklājīga rāpuļprogramma (nodarbība 1.2) vispirms pieprasa šo failu un izlasa, kuras vietnes daļas tā nedrīkst apmeklēt. Tā ir zīme pie ārdurvīm, nevis slēdzene: Googlebot un Bingbot to ievēro, bet ļaunprātīgs robots zīmi vienkārši izlasa un iet tālāk.
Kopš 2022. gada protokols ir oficiāls interneta standarts: RFC 9309. Turklāt Google precīzi apraksta, kā Googlebot lasa šo failu. Šajā nodarbībā izmantojam abus avotus.
Daži pastāvīgi noteikumi:
- Fails atrodas resursdatora saknes mapē. robots.txt mapē
/blog/robots.txtnetiek lasīts. - Tas attiecas tikai uz konkrēto resursdatoru, protokolu un portu.
https://www.example.com/robots.txtneattiecas uzhttps://shop.example.com/; tam vajadzīgs savs fails. - Tas ir vienkāršs teksts kodējumā UTF-8.
Kā fails ir veidots
User-agent: *
Disallow: /winkelmand/
Disallow: /zoeken
Allow: /zoeken/tips
User-agent: Googlebot
Disallow: /concepten/
Sitemap: https://www.example.com/sitemap.xmlFails sastāv no grupām. Grupa sākas ar vienu vai vairākām rindām User-agent:, un pēc tām seko noteikumi Disallow: (neapmeklēt) un Allow: (drīkst apmeklēt). Ceļš pēc Disallow: ir adreses sākums: Disallow: /zoeken bloķē /zoeken, /zoeken?q=rozen un arī /zoekenmachine, jo visas tās sākas ar /zoeken.
Rinda Sitemap: nepieder nevienai grupai un norāda, kur atrodas Jūsu vietnes karte (nodarbība 3.4). Google pieprasa pilnu adresi ar https:// un resursdatora nosaukumu.
Disallow: bez ceļa neko nebloķē. Disallow: / bloķē visu.
Kura grupa ir spēkā?
Rāpuļprogramma izvēlas vienu grupu: to, kurai ir visprecīzākais nosaukums, kas tai atbilst. Tātad Googlebot ievēro grupu User-agent: Googlebot, ja tāda ir, un tad pilnībā ignorē grupu *. Iepriekš redzamajā piemērā Googlebot tātad drīkst apmeklēt /winkelmand/: šis noteikums ir tikai * grupā. Tā ir viena no visbiežāk pieļautajām kļūdām: ja izveidojat atsevišķu Googlebot grupu, tajā jāatkārto visi noteikumi, kas attiecas arī uz Google.
Nosaukumā lielajiem un mazajiem burtiem nav nozīmes (googlebot = Googlebot). Ja vienai rāpuļprogrammai ir divas grupas, Google tās apvieno.
Kurš noteikums uzvar?
Grupas ietvaros vienai adresei var atbilst vairāki noteikumi. Tad ir spēkā:
- Uzvar garākais atbilstošais noteikums (visprecīzākais ceļš).
- Ja
AllowunDisallowir tieši vienāda garuma, uzvarAllow. Google to sauc par "vismazāk ierobežojošo noteikumu".
Divām rakstzīmēm ir īpaša nozīme:
| Rakstzīme | Nozīme | Piemērs | Attiecas uz | Neattiecas uz |
|---|---|---|---|---|
* | nulle vai vairāk jebkuru rakstzīmju | Disallow: /*?sessie= | /rozen?sessie=12 | /rozen?kleur=rood |
$ | adreses beigas | Disallow: /*.pdf$ | /folder.pdf | /folder.pdf?v=2 |
Aprēķina piemērs ar iepriekš redzamo grupu * rāpuļprogrammai Bingbot (kurai nav savas grupas):
| Adrese | Atbilstošie noteikumi | Rezultāts |
|---|---|---|
/winkelmand/ | Disallow: /winkelmand/ | nedrīkst |
/zoeken/tips | Disallow: /zoeken (7 rakstzīmes) un Allow: /zoeken/tips (12) | drīkst: uzvar garākais |
/zoeken?q=rozen | Disallow: /zoeken | nedrīkst |
/bruidsboeketten | nav | drīkst |
/robots.txt | (vienmēr) | drīkst: pats robots.txt vienmēr ir atļauts |
Ja faila nav vai serverim ir traucējumi
Tas, ko dara Google, ir atkarīgs no statusa koda, ar kuru Jūsu serveris atbild uz /robots.txt:
| Atbilde | Ko dara Google |
|---|---|
| 200 (atrasts) | Izlasa noteikumus |
| Pāradresācija (301, 302) | Seko vismaz piecām pāradresācijām; pēc tam Google to uztver kā 404 |
| 4xx, piemēram, 404 vai 403 (izņemot 429) | It kā robots.txt nebūtu: viss ir atļauts |
| 5xx vai nav savienojuma | Pirmās 12 stundas Google vietni nepārmeklē un mēģina vēlreiz; pēc tam līdz 30 dienām izmanto pēdējo labo versiju no kešatmiņas. Ja kļūda saglabājas arī pēc tam, bet pārējā vietne darbojas, Google rīkojas tā, it kā robots.txt nebūtu |
Tātad robots.txt neesamība nav problēma: tad viss ir atļauts. Turpretī robots.txt, kas atgriež servera kļūdu, gan ir problēma: tad Google uz laiku pārtrauc pārmeklēšanu. RFC 9309 šajā ziņā ir vēl stingrāks: ja fails nav sasniedzams, rāpuļprogrammai jāpieņem, ka viss ir aizliegts.
Turklāt:
- Google izlasa ne vairāk kā 500 KiB; tas, kas ir pēc tam, tiek ignorēts.
- Google parasti glabā robots.txt kešatmiņā līdz 24 stundām. Tātad izmaiņas nestājas spēkā uzreiz. Search Console sadaļā Iestatījumi atradīsiet robots.txt pārskatu: kuru versiju Google ielādēja pēdējo, ar kļūdām un brīdinājumiem, un pogu, lai to ielādētu atkārtoti.
- Google atpazīst tikai
User-agent,Allow,DisallowunSitemap. Tādus noteikumus kāCrawl-delayvaiNoindexGooglebot ignorē.
Ko robots.txt nedara
Tā nav aizsardzība
Jūsu robots.txt var izlasīt ikviens, arī tie, kam ir ļauni nodomi. Noteikums Disallow: /beheer-oud/ tieši norāda, kur atrodas kaut kas interesants. RFC 9309 to saka pats: noteikumi nav piekļuves aizsardzības veids. Patiesi aizsargāt var ar paroli vai liekot serverim atteikt piekļuvi, piemēram, ar .htaccess (skatiet sadaļu Vairāk lasīt).
Tā nav noindex
Šī ir svarīgākā mācība. robots.txt regulē pārmeklēšanu, nevis indeksēšanu (nodarbība 1.3). Google burtiski raksta, ka robots.txt nav veids, kā lapu noturēt ārpus Google. Ja citas vietnes saista uz bloķētu adresi, šī adrese tomēr var parādīties meklēšanas rezultātos, tikai bez apraksta.
Ja vēlaties, lai lapa neparādītos meklēšanas rezultātos, izmantojiet noindex (elementā <meta name="robots"> vai galvenes rindā X-Robots-Tag) vai aizsargājiet lapu ar paroli. Un uzmanieties no klasiskā slazda: ja lapu ar noindex robots.txt failā arī iestatāt kā Disallow, Google nevar apmeklēt lapu un tātad nekad neizlasīs noindex.
Nebloķējiet daļas, kas vajadzīgas Google
Nebloķējiet mapes ar stila lapām, skriptiem vai attēliem, kas Jūsu lapai vajadzīgi pareizai attēlošanai. Google aplūko Jūsu lapu tāpat kā pārlūkprogramma; bez šiem failiem Google lapu saprot sliktāk.
MI rāpuļprogrammas
Arvien vairāk uzņēmumu vāc tīmekļa lapas mākslīgajam intelektam. Dažas no tām varat uzrunāt ar robots.txt:
Google-Extendednav atsevišķs robots, bet nosaukums robots.txt failā, ar kuru norādāt, vai Google drīkst izmantot Jūsu saturu Gemini modeļu apmācībai un grounding. Google raksta, ka tas neietekmē Jūsu iekļaušanu vai pozīciju Google meklēšanā.GPTBotno OpenAI vāc lapas, kuras var izmantot modeļu apmācībai.OAI-SearchBotir paredzēts ChatGPT meklēšanas funkcijai: ja to bloķējat, Jūsu vietne neparādās ChatGPT meklēšanas atbildēs.
User-agent: GPTBot
Disallow: /Vai Jūs to vēlaties, ir izvēle, nevis tehniska nepieciešamība. Ja nejauši bloķējat meklēšanas robotu (Googlebot, Bingbot, OAI-SearchBot), Jūs tur tiksiet atrasti sliktāk.
Praksē: kur atrodas Jūsu robots.txt?
- WebOké AI Builder publicēšanas laikā pats izveido robots.txt ar
User-agent: *,Allow: /un rinduSitemap:. Ja vietnei iestatāt neindeksēšanu vai tā ir bezmaksas demo versija, tur irDisallow: /. - WordPress izveido virtuālu robots.txt ar norādi uz vietnes karti. Ja tīmekļa mapē ievietojat savu failu
robots.txt, tam ir prioritāte. - Sava vietne hostinga plānā: failu
robots.txtievietojiet tīmekļa mapē (DirectAdmin gadījumāpublic_html), izmantojot File Manager vai FTP.
Pie citiem pakalpojumu sniedzējiem tas darbojas līdzīgi: failam vienmēr jābūt sasniedzamam Jūsu resursdatora adresē /robots.txt.
Kopsavilkums
- robots.txt atrodas katra resursdatora adresē
/robots.txtun pieklājīgām rāpuļprogrammām norāda, ko tās nedrīkst apmeklēt. - Rāpuļprogramma ievēro vienu grupu (visprecīzāko nosaukumu, citādi
*). Grupas ietvaros uzvar garākais noteikums; ja garums ir vienāds, uzvarAllow. - 404 nozīmē "viss ir atļauts", servera kļūdas dēļ Google uz laiku pārtrauc pārmeklēšanu. Google izlasa 500 KiB un glabā kešatmiņā līdz 24 stundām.
- robots.txt nav ne aizsardzība, ne noindex. Nebloķējiet
noindexlapu robots.txt failā. - MI rāpuļprogrammas, piemēram,
GPTBot, un nosaukumuGoogle-Extendedvarat regulēt atsevišķi, neietekmējot Google meklēšanu.
Tests (quiz)
Uzdevums
Uzdevums A3.3: Jūsu robots.txt pārbaude. Ievadiet savu domēnu un vēl trīs savas vietnes adreses (piemēram, sākumlapu, produkta lapu un iepirkumu grozu vai meklēšanas lapu), katrai adresei norādot savu pieņēmumu: vai Googlebot to drīkst pārmeklēt, jā vai nē? Programma ielādē Jūsu robots.txt, pārbauda statusa kodu, izmēru, grupas un rindu Sitemap: un katrai adresei aprēķina, ko Googlebot drīkst saskaņā ar šīs nodarbības noteikumiem. Vai Jūsu pieņēmums ir pareizs? Jums nav savas vietnes? Izmantojiet www.wikipedia.org.
Vairāk lasīt
Šajos rakstos aprakstītie soļi attiecas uz WebOké paneļiem; pie citiem pakalpojumu sniedzējiem tas darbojas līdzīgi.
- DirectAdmin rokasgrāmata 11.1: File Manager atvēršana: pakotnes mapes
- Failu bloķēšana ar .htaccess, piemēram, plugin-googlemap2-proxy.php
- DirectAdmin rokasgrāmata 11.4: Slēptu failu, piemēram, .htaccess, parādīšana un rediģēšana
- Google Search Central, Kā Google interpretē robots.txt: https://developers.google.com/search/docs/crawling-indexing/robots/robots_txt
- Google Search Central, Ievads robots.txt: https://developers.google.com/search/docs/crawling-indexing/robots/intro
- RFC 9309, Robots Exclusion Protocol: https://www.rfc-editor.org/rfc/rfc9309.html
- Google, Rāpuļprogrammu pārskats (Google-Extended): https://developers.google.com/crawling/docs/crawlers-fetchers/google-common-crawlers
- OpenAI, Rāpuļprogrammu pārskats (GPTBot, OAI-SearchBot): https://developers.openai.com/api/docs/bots
