Installatiegids

Er moeten twee dingen live staan op uw site: de kennisgeving die uw bezoekers zien, en een klein openbaar bestand dat uw AI-gebruik verklaart (uwsite.com/.well-known/ai-disclosure.json). De snippettag wordt één keer geplakt, is op elke pagina identiek, en uw verklaring bepaalt welke kennisgevingen waar verschijnen. Kies hieronder uw platform; de meeste duren ongeveer tien minuten.

1 · Toon de kennisgevingen

Banner en AI-labels die uw bezoekers op de pagina zien.

2 · Publiceer uw verklaring

ai-disclosure.json, een openbaar bestand dat leesbaar is vanaf uw eigen domein.

U bent klaar wanneer

de checker Niveau 2 · Weergegeven toont.

Kies uw platform

WordPress

  1. Installeer de plugin

    In uw WordPress-beheer: Plugins → Nieuwe plugin toevoegen → Plugin uploaden, kies het bestand dat u hieronder hebt gedownload en klik op Activeren.

    Download de AIDisclose-plugin (.zip)

  2. Laat het beide taken doen

    De plugin toont de kennisgevingen en publiceert uw verklaringsbestand automatisch. Markeer AI-content op elk bericht of elke afbeelding met de schakelaar "AI-content". Geen codewijzigingen.

  3. Verifiëren

    Klaar wanneer de checker Niveau 2 · Weergegeven toont.

    Voer de checker uit

Verifiëren

Voer de checker uit. Hij bevestigt drie dingen: uw verklaringsbestand is geldig, de snippet draait, en de kennisgevingen verschijnen daadwerkelijk op de pagina. (Voor engineers: controles C1, C3 en C4 tot en met C6.)

Voer de checker uit

Als uw site onze checker (AIDiscloseBot) blokkeert

Scans en bewijsvastleggingen komen van AIDiscloseBot/1.0. Deze leest alleen openbare pagina's: hij logt nooit in, verstuurt nooit formulieren en respecteert robots.txt. Als uw robots.txt of botbeveiliging onbekende crawlers blokkeert, sta hem dan expliciet toe:

robots.txt
User-agent: AIDiscloseBot
Allow: /

Is toestaan een risico? Nee. Een toestemming in robots.txt verleent geen toegang. Het vertelt beleefde bots alleen dat ze pagina's mogen lezen die al openbaar zijn. Iedereen kan een User-Agent-string vervalsen, maar een vervalser krijgt niets wat uw openbare pagina's al niet prijsgeven.

Als u verkeer afschermt met een WAF of botmanager, gebruik dan nooit alleen de User-Agent voor uw toelatingslijst. Combineer het met bronverificatie. Wij publiceren de identiteit van onze crawler, en de uitgaande IP-reeksen zodra die worden toegewezen, op aidisclose.io/bot.json.

Voer de checker uit

Geavanceerd

Theming with CSS variables, custom copy, single-page-app setup, and the full option reference are in the snippet reference.

Zet het script vast op een exacte versie (SRI)

Een integriteitshash in de scripttag zorgt dat de browser weigert een gewijzigd bestand uit te voeren. Zet de versie-URL vast en genereer de hash uit het exacte bestand dat u implementeert:

shell
curl -sO https://cdn.aidisclose.io/v1/aidisclose.js
openssl dgst -sha384 -binary aidisclose.js | openssl base64 -A
Lever het bestand zelf (nginx / Apache)

Voor servers die u beheert, levert u de gedownloade ai-disclosure.json rechtstreeks:

nginx
location = /.well-known/ai-disclosure.json {
  alias /var/www/site/ai-disclosure.json;
  default_type application/json;
  add_header Cache-Control "max-age=3600";
}
Apache
Alias "/.well-known/ai-disclosure.json" "/var/www/site/ai-disclosure.json"
<Files "ai-disclosure.json">
  ForceType application/json
</Files>
Lever het door het dashboard gehoste bestand vanaf uw eigen domein

Uw server stuurt aanvragen voor dat ene adres door naar ons: u bewerkt het bestand in het dashboard, en het wordt nog steeds vanaf uw domein geleverd. Het dashboard toont deze vooraf ingevuld met uw sitesleutel.

nginx
location = /.well-known/ai-disclosure.json {
  proxy_pass https://cdn.aidisclose.io/v1/hosted-manifest/YOUR_SITE_KEY;
  proxy_set_header Host cdn.aidisclose.io;
  proxy_ssl_server_name on;
}
Cloudflare Worker
export default {
  async fetch(request) {
    const url = new URL(request.url);
    if (url.pathname === "/.well-known/ai-disclosure.json") {
      return fetch("https://cdn.aidisclose.io/v1/hosted-manifest/YOUR_SITE_KEY");
    }
    return fetch(request);
  }
};
Single-page apps en statische hosts

Frameworks die elke route naar index.html herschrijven, en sommige statische hosts, onderscheppen /.well-known/ai-disclosure.json en sturen de HTML van je app terug met statuscode 200. Het bestand lijkt vastgelegd, maar de checker leest HTML in plaats van het manifest. Twee oplossingen: sluit /.well-known/ uit van de catch-all-herschrijving zodat het statische bestand met het type application/json wordt geleverd, of voeg data-aidisclose="YOUR_SITE_KEY" toe aan de scripttag om het door AIDisclose gehoste manifest te laden en het bestand helemaal niet te leveren.

netlify.toml / vercel.json
# netlify.toml: serve the real file before the SPA fallback
[[redirects]]
  from = "/*"
  to = "/index.html"
  status = 200
  force = false   # a real file at the path wins over this fallback

# vercel.json: rewrite everything EXCEPT /.well-known to the app
{ "rewrites": [
  { "source": "/((?!\.well-known/).*)", "destination": "/index.html" }
] }