Hur matchning i robots.txt fungerar
Standarden RFC 9309 definierar hur webbspindlar ska tolka filen robots.txt. Filen är uppbyggd i block av regler där varje block inleds med en eller flera User-agent-deklarationer. När en sökspindel läser filen identifierar den först vilket regelblock som gäller för just den spindeln.
En sökspindel väljer sin regelgrupp enligt en fast prioritetsordning: 1. Den letar efter en grupp med dess specifika produktnamn, exempelvis Googlebot eller GPTBot. 2. Om ingen exakt träff hittas söker spindeln efter ett överordnat namn via bindestreck. Exempelvis faller Googlebot-Image tillbaka på Googlebot. 3. Om inget specifikt block matchar använder spindeln standardgruppen markerad med User-agent: *. 4. Finns inte heller någon standardgrupp tolkas alla sökvägar på hela webbplatsen som öppna för genomsökning.
En viktig princip i RFC 9309 är att en specifik grupp ersätter standardgruppen helt. Om en robots.txt innehåller ett block för GPTBot kommer den spindeln enbart att läsa reglerna i sitt eget block och ignorera alla Disallow- eller Allow-direktiv under User-agent: *. Om samma User-agent förekommer på flera ställen i filen slås däremot reglerna från dessa grupper samman till en gemensam uppsättning direktiv.
Robots.txt-testare simulerar denna urvalsprocess och visar tydligt vilken grupp som tillämpas för den användaragent du valt att testa.
Regelhierarki och principen om längsta matchning
När rätt regelgrupp har identifierats utvärderas alla Allow- och Disallow-regler mot den testade webbadressen. Standarden föreskriver att regeln med det längsta matchande mönstret har företräde framför kortare mönster, oavsett i vilken ordning reglerna står i filen.
| Direktiv |
Sökvägsmönster |
Testad URL |
Resultat |
Disallow |
/katalog/ |
/katalog/artikel |
Blockerad |
Allow |
/katalog/artikel |
/katalog/artikel |
Tillåten (längre mönster vinner) |
Disallow |
/katalog/artikel |
/katalog/artikel |
Tillåten (lika längd ger fördel Allow) |
Disallow |
/*.pdf$ |
/dokument.pdf |
Blockerad (dollarankare matchar radslut) |
Om en Allow-regel och en Disallow-regel matchar samma webbadress med exakt samma antal tecken vinner alltid Allow. En tom regel i form av Disallow: tolkas enligt specifikationen som att inga sökvägar är blockerade.
Mönstermatchningen hanterar två vanliga specialtecken: - Asterisk * fungerar som jokertecken och matchar noll eller flera tecken i sökvägen. - Dollartecken $ fungerar som slutankare och kräver att sökvägen slutar precis där mönstret slutar.
Robots.txt-testare analyserar teckenlängden och specialtecknen rad för rad och anger det exakta radnumret i filen som styrde beslutet.
Testa regler för AI-spindlar och Content-Signal
Moderna AI-system använder automatiserade spindlar för att samla in webbmaterial till träningsdata och realtidssökningar. Exempel på sådana användaragenter är GPTBot, ClaudeBot, Google-Extended, PerplexityBot och CCBot.
Webbplatsägare kan styra åtkomsten för varje enskild AI-spindel genom separata grupper. Med en generator för AI-crawlers kan du skapa anpassade regeluppsättningar och därefter klistra in resultatet i Robots.txt-testare för att bekräfta att rätt sidor blockeras eller tillåts.
Ett framväxande direktiv i robots-filer är fältet Content-Signal. Detta direktiv låter utgivare deklarera hur deras innehåll får användas av AI-aktörer: - search: Innehållet får användas för indexering och traditionella sökresultat. - ai-input: Innehållet får användas som dynamisk kontext vid frågor till språkmodeller. - ai-train: Innehållet får ingå i datamängder för modellträning.
Robots.txt-testare identifierar och presenterar värdet på Content-Signal för den valda gruppen. Verktyget klargör att detta direktiv utgör en deklaration av användarvillkor snarare än ett tekniskt protokollhinder.
Vanliga misstag som verktyget upptäcker
Syntaxfel och missförstånd kring hur robots.txt tolkas kan leda till att viktiga sidor oavsiktligt blockeras från sökmotorer eller att privat innehåll genomsöks. Robots.txt-testare granskar filstrukturen och varnar för vanliga felaktigheter.
Följande situationer flaggas automatiskt som varningar: 1. Regler före första User-agent: Direktiv som Disallow: /privat/ högst upp i filen innan någon användaragent har deklarerats är ogiltiga enligt RFC 9309 och ignoreras av standardföljande spindlar. 2. Relativa sökvägar: Alla sökvägar under Allow och Disallow måste inledas med ett inledande snedstreck /. Mönster som Disallow: admin/ tolkas felaktigt. 3. Crawl-delay: Detta direktiv ingår inte i RFC 9309 och ignoreras av bland annat Googlebot, även om det stöds av vissa andra aktörer. 4. Proprietära direktiv: Fält som Host och Clean-param är leverantörsspecifika tillägg och markeras som varningar i analysen. 5. Noindex i robots.txt: Detta direktiv stöds inte officiellt i robots-filer och förhindrar inte indexering om externa länkar pekar mot adressen.
Det är viktigt att skilja på genomsökning och indexering. Att blockera en sökväg i robots.txt hindrar spindeln från att läsa sidan, men sidan kan fortfarande synas i sökresultat om den har inkommande länkar från andra webbplatser.
Begränsningar och lokal körning i webbläsaren
Robots.txt-testare körs uteslutande i din webbläsare med hjälp av JavaScript. Inga data, webbadresser eller filutkast skickas till externa servrar under testet.
Denna lokala bearbetning ger flera fördelar vid utveckling och revision: - Utkast kan verifieras säkert innan de laddas upp till produktionsmiljön. - Konfidentiella sökvägar för utvecklingsservrar eller interna system förblir lokala på din dator. - Ingen inloggning eller domänverifiering krävs för att köra testerna.
Verktyget har tydliga avgränsningar som är viktiga att beakta under arbetet: - Verktyget hämtar inte din aktiva robots.txt automatiskt från en webbserver utan analyserar den text du själv klistrar in. - Analysen begränsar sig till reglerna i filen och kontrollerar inte sidans HTTP-svarskoder, canonical-länkar eller meta-taggar för robotar. - För en komplett översikt över maskinläsbara direktiv kan robots-regler kombineras med en llms.txt-fil för språkmodeller samt nycklar för botverifiering för att bekräfta spindlarnas identitet på servernivå.
Genom att testa filen direkt i webbläsaren kan du identifiera felaktiga matchningar och justera dina mönster innan reglerna tas i drift.