Veel statische websites draaien op simpele bestandsstructuren: HTML, CSS en een paar assets. Maar hoe geef je aan AI-bots of ze je content mogen gebruiken voor training? Dat regel je met een llms.txt-bestand.
Bij llmstxt.nl zien we vaak dat ontwikkelaars het bestand vergeten of onjuist neerzetten — met als gevolg dat crawlers je voorkeuren niet vinden. In dit artikel leggen we stap voor stap uit hoe je llms.txt op een statische site instelt en controleert.
Belangrijk onderdeel 1
Locatie en formaat zijn cruciaal: plaats llms.txt op de root van je domein (https://example.com/llms.txt) en, voor compatibiliteit, ook onder /.well-known/llms.txt. Het bestand is simpel tekst (UTF-8) en moet met Content-Type: text/plain geserveerd worden.
Er is nog geen één universele, afdwingbare standaard; daarom adviseren wij duidelijke, makkelijk leesbare sleutel-waarde regels en een short change-log (datum/version). Houd het kort en eenduidig zodat crawlers en mensen snel begrijpen wat je bedoelt.
Praktische tip of verdieping
- Basisaanbevelingen voor velden (veelgebruikt en helder):
- Version: 1
- Contact: mailto:legal@jouwdomein.nl
- Policy: no-model-training / allow-embedding (korte, begrijpelijke term)
- License: CC-BY-4.0 of Copyright (duidelijkheid over hergebruik)
- Last-Updated: 2025-09-15
- Voorbeeld van een eenvoudig llms.txt (suggestie):
Version: 1 Contact: mailto:legal@voorbeeld.nl Policy: no-model-training License: Copyright 2025 Voorbeeld BV Last-Updated: 2025-09-15
- Serveer altijd exact dezelfde inhoud op /llms.txt en /.well-known/llms.txt. Gebruik redirects als je maar één locatie wilt beheren.
Belangrijk onderdeel 2
Hoe voeg je het bestand toe aan verschillende statische setups? De simpele regel is: zet het bestand in je “public” of “static” map zodat het tijdens build naar de root van je site gaat. Voor generators zoals Hugo en Jekyll: plaats llms.txt in de static/ (Hugo) of root (Jekyll) van je project.
Voor hosts zoals Netlify, Vercel en GitHub Pages volstaat meestal een simpel bestand in je repository. Let echter op headers en caching: sommige hosts zetten standaard caching die je tijdelijk wilt beperken voor snelle updates.
Praktische tip of verdieping
- Maak een bestand llms.txt in je project:
- Hugo: /static/llms.txt
- Jekyll: voeg llms.txt toe aan de repo root
- React/Vite: plaats in /public/llms.txt
- Optioneel: kopieer hetzelfde bestand naar /.well-known/llms.txt (soms automatisch door build; anders maak een redirect).
- Stel headers in (aanbeveling):
- Content-Type: text/plain; charset=utf-8
- Cache-Control: max-age=3600, must-revalidate — of lager tijdens updates
Voor Netlify voeg je bijvoorbeeld regels toe aan netlify.toml of _headers.
- Deploy en test met curl:
- curl -I https://jouwdomein.nl/llms.txt (controleer HTTP/1.1 200 en Content-Type)
- curl -s https://jouwdomein.nl/llms.txt (bekijk de inhoud)
Praktische check die je direct kunt doen: na deploy voer je twee commando’s uit — curl -I https://jouwdomein.nl/llms.txt en curl -I https://jouwdomein.nl/.well-known/llms.txt — beide moeten 200 retourneren en Content-Type: text/plain tonen. Pas headers of redirects aan als dat niet het geval is.