Gå direkte til indholdet

Cookieindstillinger

Vælg for hver type, hvilke cookies du tillader. Du kan altid ændre dit valg via Cookieindstillinger nederst på hver side. Privatlivspolitik

Nødvendige

Altid slået til

Nødvendige for at logge ind, gemme din kurv og huske dine valg. De er altid slået til.

Hvilke cookies?
  • weboke_sessie, weboke_klant, weboke_remember: din session og at forblive logget ind
  • weboke_basket: din kurv
  • wkBtwIncl: vise priser med eller uden moms
  • wok_cookies: dit cookievalg, 12 måneder

Måler, hvilken annonce der fører til et besøg eller en bestilling, så vi ikke betaler for annoncer, der ikke virker.

Hvilke cookies?
  • Google Ads via Google Tag Manager (_gcl_au, _gcl_aw), op til 90 dage
  • OpenAI Ads, annoncer i ChatGPT
  • wok_aff: hvilken partner der henviste dig til os (affiliateprogram), 60 dage

4,6

Land og sprog

Hvert land har sin egen side med landets priser og moms.

Se

robots.txt: hvad du blokerer, og hvad du ikke blokerer

Modul 3: Det tekniske grundlag for en side · Læsetid: 13 minutter

Læringsmål: Efter denne lektion kan du læse og skrive en robots.txt, selv regne ud om Googlebot må besøge en adresse, forklare hvad der sker, når filen mangler eller ikke kan nås, og du ved, hvorfor robots.txt hverken er sikkerhed eller noindex.

Nøglebegreber: robots.txt (RFC 9309), crawler, gruppe, User-agent, Disallow, Allow, længste match, samme længde (Allow vinder), * og $, Sitemap:, statuskode for robots.txt (4xx, 5xx), 500 KiB, 24 timers cache, ingen sikkerhed, ingen noindex, AI-crawlere (Google-Extended, GPTBot)

Et skilt ved hoveddøren

En robots.txt er en almindelig tekstfil i rodmappen på dit website, altid på samme adresse: https://www.example.com/robots.txt. En pæn crawler (lektion 1.2) henter først den fil og læser, hvilke dele af sitet den ikke må besøge. Det er et skilt ved hoveddøren, ikke en lås: Googlebot og Bingbot overholder det, men en ondsindet robot læser bare skiltet og går videre ind.

Siden 2022 har protokollen været en officiel internetstandard: RFC 9309. Google beskriver desuden præcis, hvordan Googlebot læser filen. Begge kilder bruger vi i denne lektion.

Et par faste aftaler:

  • Filen ligger i rodmappen på hosten. En robots.txt i /blog/robots.txt bliver ikke læst.
  • Den gælder kun for den host, den protokol og den port. https://www.example.com/robots.txt gælder ikke for https://shop.example.com/; den skal have sin egen fil.
  • Det er ren tekst i UTF-8.

Sådan er filen opbygget

User-agent: *
Disallow: /winkelmand/
Disallow: /zoeken
Allow: /zoeken/tips

User-agent: Googlebot
Disallow: /concepten/

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

Filen består af grupper. En gruppe begynder med en eller flere linjer User-agent: og derefter reglerne Disallow: (må ikke besøges) og Allow: (må besøges). Stien efter Disallow: er begyndelsen af en adresse: Disallow: /zoeken blokerer /zoeken, /zoeken?q=rozen og også /zoekenmachine, fordi de alle begynder med /zoeken.

Linjen Sitemap: hører ikke til nogen gruppe og fortæller, hvor dit sitemap ligger (lektion 3.4). Google kræver en fuld adresse med https:// og hostnavn.

En Disallow: uden sti blokerer ingenting. Disallow: / blokerer alt.

Hvilken gruppe gælder?

En crawler vælger én gruppe: den med det mest specifikke navn, der passer på den. Googlebot følger altså gruppen User-agent: Googlebot, hvis den findes, og ignorerer så gruppen * helt. I eksemplet ovenfor må Googlebot derfor gerne besøge /winkelmand/: den regel står kun i *-gruppen. Det er en af de mest almindelige fejl: Laver du en separat Googlebot-gruppe, skal du gentage alle regler, der også skal gælde for Google, i den gruppe.

Navnet skelner ikke mellem store og små bogstaver (googlebot = Googlebot). Er der to grupper for samme crawler, lægger Google dem sammen.

Hvilken regel vinder?

Inden for gruppen kan en adresse være omfattet af flere regler. Så gælder:

  1. Den længste matchende regel vinder (den mest specifikke sti).
  2. Er en Allow og en Disallow præcis lige lange, vinder Allow. Google kalder det "den mindst begrænsende regel".

To tegn har en særlig betydning:

TegnBetydningEksempelRammerRammer ikke
*nul eller flere vilkårlige tegnDisallow: /*?sessie=/rozen?sessie=12/rozen?kleur=rood
$slutningen af adressenDisallow: /*.pdf$/folder.pdf/folder.pdf?v=2

Regneeksempel med gruppen * ovenfor, for crawleren Bingbot (som ikke har sin egen gruppe):

AdresseMatchende reglerResultat
/winkelmand/Disallow: /winkelmand/ikke tilladt
/zoeken/tipsDisallow: /zoeken (7 tegn) og Allow: /zoeken/tips (12)tilladt: den længste vinder
/zoeken?q=rozenDisallow: /zoekenikke tilladt
/bruidsboeketteningentilladt
/robots.txt(altid)tilladt: robots.txt selv er altid tilladt

Hvis filen ikke findes, eller serveren driller

Hvad Google gør, afhænger af den statuskode, din server svarer med på /robots.txt:

SvarHvad Google gør
200 (fundet)Læser reglerne
Viderestilling (301, 302)Følger mindst fem trin; derefter behandler Google det som 404
4xx, fx 404 eller 403 (undtagen 429)Som om der ingen robots.txt er: alt er tilladt
5xx eller ingen forbindelseDe første 12 timer crawler Google ikke sitet og prøver igen; derefter i op til 30 dage den seneste gode version fra cachen. Fejler det stadig derefter, mens sitet ellers virker, gør Google, som om der ingen robots.txt er

En manglende robots.txt er altså ikke et problem: Så er alt tilladt. En robots.txt, der giver en serverfejl, er derimod et problem: Så stopper Google midlertidigt med at crawle. RFC 9309 er endnu strengere: Kan filen ikke nås, skal en crawler gå ud fra, at alt er forbudt.

Desuden:

  • Google læser højst 500 KiB; det, der står derefter, bliver ignoreret.
  • Google gemmer som regel robots.txt i cachen i op til 24 timer. En ændring virker altså ikke med det samme. I Search Console finder du under Indstillinger robots.txt-rapporten: hvilken version Google sidst har hentet, med fejl og advarsler, og en knap til at få den hentet igen.
  • Google kender kun User-agent, Allow, Disallow og Sitemap. Regler som Crawl-delay eller Noindex ignorerer Googlebot.

Hvad robots.txt ikke gør

Det er ikke sikkerhed

Alle kan læse din robots.txt, også folk med onde hensigter. En regel som Disallow: /beheer-oud/ peger netop på, hvor der ligger noget interessant. RFC 9309 siger det selv: Reglerne er ikke en form for adgangsbeskyttelse. Rigtig afskærmning laver du med en adgangskode, eller ved at lade serveren afvise adgang, fx med .htaccess (se Læs mere).

Det er ikke noindex

Det er den vigtigste pointe. robots.txt styrer crawling, ikke indeksering (lektion 1.3). Google skriver ordret, at robots.txt ikke er en måde at holde en side ude af Google på. Linker andre sites til en blokeret adresse, kan adressen alligevel dukke op i søgeresultaterne, bare uden beskrivelse.

Vil du holde en side ude af søgeresultaterne, så brug noindex (i et <meta name="robots"> eller HTTP-headeren X-Robots-Tag), eller læg siden bag en adgangskode. Og pas på den klassiske fælde: Sætter du en side med noindex på Disallow i robots.txt også, kan Google ikke besøge siden og derfor aldrig læse din noindex.

Bloker ikke dele, som Google har brug for

Bloker ikke mapper med stylesheets, scripts eller billeder, som din side skal bruge for at blive vist korrekt. Google ser din side, som en browser gør; uden de filer forstår Google siden dårligere.

AI-crawlere

Flere og flere virksomheder indsamler websider til kunstig intelligens. Nogle af dem kan du styre med robots.txt:

  • Google-Extended er ikke en separat robot, men et navn i robots.txt, som du bruger til at angive, om Google må bruge dit indhold til at træne Gemini-modeller og til grounding. Google skriver, at det ikke påvirker din optagelse eller placering i Google Søgning.
  • GPTBot fra OpenAI indsamler sider, der kan bruges til at træne modeller. OAI-SearchBot er til søgefunktionen i ChatGPT: Blokerer du den, vises dit site ikke i ChatGPT's søgesvar.
User-agent: GPTBot
Disallow: /

Om du vil det, er et valg, ikke en teknisk nødvendighed. Blokerer du ved en fejl en søgerobot (Googlebot, Bingbot, OAI-SearchBot), bliver du dårligere fundet dér.

I praksis: hvor ligger din robots.txt?

  • AI Builder fra WebOké laver selv en robots.txt, når du udgiver, med User-agent: *, Allow: / og en Sitemap:-linje. Sætter du sitet til ikke at blive indekseret, eller er det en gratis demo, står der Disallow: /.
  • WordPress laver en virtuel robots.txt med en henvisning til sitemappet. Lægger du selv en fil robots.txt i webmappen, har den forrang.
  • Et eget site på et hostingabonnement: Du lægger robots.txt i webmappen (i DirectAdmin public_html) via Filhåndtering eller FTP.

Hos andre udbydere fungerer det på lignende måde: Filen skal altid kunne nås på /robots.txt på din host.

Opsummering

  • robots.txt ligger på /robots.txt på hver host og fortæller pæne crawlere, hvad de ikke må besøge.
  • En crawler følger én gruppe (det mest specifikke navn, ellers *). Inden for gruppen vinder den længste regel; ved samme længde vinder Allow.
  • 404 betyder "alt er tilladt", en serverfejl får Google til midlertidigt at stoppe med at crawle. Google læser 500 KiB og cacher i op til 24 timer.
  • robots.txt er hverken sikkerhed eller noindex. Bloker ikke en noindex-side i robots.txt.
  • AI-crawlere som GPTBot og navnet Google-Extended kan du styre separat, uden følger for Google Søgning.

Quiz

1. I robots.txt er der en gruppe User-agent: * med Disallow: /winkelmand/ og en gruppe User-agent: Googlebot med kun Disallow: /concepten/. Må Googlebot crawle /winkelmand/?



2. I gruppen for Googlebot står Disallow: /folder og Allow: /folder. Er /folder/rozen.html tilladt?



3. Din robots.txt giver en 503-fejl i en hel uge. Hvad gør Google?



4. Du vil ikke have, at siden /bedankt vises i Google. Hvad er den bedste fremgangsmåde?



5. Hvad sker der i Google Søgning, hvis du tilføjer User-agent: Google-Extended med Disallow: /?



Opgave

Opgave A3.3: Din robots.txt gennemgået. Indtast dit domæne og desuden tre adresser fra dit eget site (fx forsiden, en produktside og din kurv eller søgeside), og skriv for hver adresse, hvad du forventer: Må Googlebot crawle den, ja eller nej? Programmet henter din robots.txt, ser på statuskoden, størrelsen, grupperne og Sitemap:-linjen og regner for hver adresse ud, hvad Googlebot må ifølge reglerne fra denne lektion. Passer din forventning? Intet eget site? Brug www.wikipedia.org.

Opgave A3.3: Din robots.txt gennemgået








Det, du udfylder, og hvad vi finder, gemmer vi ikke. Din browser husker dine svar, og om du har bestået opgaven. Er du logget ind, gemmer vi kun, at du (næsten) bestod opgaven, i Mine kurser; der kan du også slette det.

Læs mere

Trinene i disse artikler gælder for WebOké's paneler; hos andre udbydere fungerer det på lignende måde.

Et øjeblik…

Opsæt dine domæner

Angiv for hvert domæne navneserverne, tilknytningen til din hosting, og hvem der bliver ejer.

Indlæser dine domæner…