IndexNow förklarat – meddela sökmotorer när du publicerar

Skicka Push URL-uppdateringar till sökmotorer efter deploy.

Sidinnehåll

Statiska webbplatser och bloggar ändras när du deployar. Sökmotorer som stöder IndexNow kan få veta om dessa förändringar utan att vänta på nästa blind krypning.

Denna sida täcker varför det är viktigt, vad protokollet gör och hur du kopplar in det i en riktig arbetsflöde, inklusive mönster du kan återanvända i din egen automatisering eller ett litet Go-cli-verktyg.

Webb- och infrastrukturövervakning

Varför använda IndexNow på en statisk eller Hugo-sajt

Om du deployar Hugo till S3 eller liknande levererar du redan HTML och en sitemap.xml. Krypningar kommer så småningom att läsa sitemapet, men tidsaspekten är inte under din kontroll. Efter en migration eller en batch med nya inlägg bryr du dig mer om färsk indexering än “någon gång nästa vecka”.

IndexNow är en push-kanal. Du POSTar en lista över kanoniska URL:er du bryr dig om. Deltagande motorer (inklusive Microsoft Bing och andra listade på indexnow.org) kan prioritera hämtning av dessa URL:er. Det ersätter inte bra URL-omdirigeringar eller intern länkning, men det stänger loopen mellan git push och sökmotorers medvetenhet.

Vad IndexNow gör

På en hög nivå är varje inlämning ett HTTPS-POST med JSON som detta konceptuellt:

  • host - din webbplatsvärdshostnamn (till exempel www.example.com)
  • key - din förgenererade hemliga sträng
  • keyLocation (valfritt) - full URL till verifieringsfilen om den inte finns på standardvägen
  • urlList - en eller flera absoluta URL:er på den värdshosten du vill signalera

Motorer avvisar felaktiga nycklar, fel värdshostar eller felaktiga payloads. Framgång är vanligtvis HTTP 200 eller 202 beroende på ändpunkten.

Du kan läsa alla regler och partnerlistan på den officiella webbplatsen. Den viktiga mentala modellen är dominägarebevis via en textfil plus explicit URL-lista, inte nyckelord eller sidinnehåll.

Hur du förbereder din webbplats

Nyckelfil och värdshostnamn

  1. Välj en nyckel - en lång slumpmässig sträng (behandla den som en hemlighet).
  2. Publicera https://din-domän/<nyckel>.txt med endast nyckeln som innehåll (en rad).
  3. Använd samma nyckel i ditt CLI eller automatisering när du POSTar.
  4. Skicka bara URL:er på den värdshosten som du vill återkrypas (nya inlägg, uppdaterade sidor eller omredirigeringsmål).

När du flyttar många URL:er samtidigt kan du vilja batch-avisera vägar. IndexNow accepterar flera URL:er i en begäran, beroende på varje motors gränser.

Sätt att skicka in URL:er

  • Manuell POST - bra för felsökning, använd curl med JSON.
  • Plugins - vissa CMS och värdpaneler inkluderar IndexNow-växlar.
  • Ditt deploy-script - efter hugo och uppladdning, anropa ett litet binärt verktyg med listan över ändrade URL:er eller din sitemap-URL.

För ett Hugo-arbetsflöde är de naturliga utlösarna “efter build” eller “efter sync till bucket”. Skicka fullständiga HTTPS-URL:er som matchar din levande webbplats, inklusive www mot apex om det är vad du serverar.

Ett litet Go-cli-verktyg (valfritt)

Funktioner du kan implementera

Ett minimalt Go-kommandotolksverktyg passar IndexNow väl eftersom payloaden är en liten JSON-POST och du kan koppla in det i deploy-scripts. En typisk design inkluderar:

  • En eller flera URL:er som positionella argument
  • --sitemap för att hämta en sitemap.xml och skicka in varje <loc> (med valfritt --limit)
  • Flera motorer parallellt via --engines (till exempel indexnow för den globala aggregatorn, eller per-utvärdare ändpunkter)
  • Flaggor eller miljövariabler som INDEXNOW_KEY, INDEXNOW_WEBSITE_URL och INDEXNOW_ENGINES
  • Verbos utdata med -v för felsökning av 403- eller 422-svar

Kompilerar med go build eller go install, installera binärfilen på din PATH och anropa den efter publicering:

indexnow --key DIN_NYCKEL --website https://www.example.com https://www.example.com/nytt-inlag/

För en full webbplatsuppdatering efter deploy kan du skicka --sitemap med din publika sitemap-URL. Dokumentera svars-koder och motorlistor i din egen README och håll ett publicera-sedan-indexera-shell-snutt intill vad som utlöser din statiska deploy.

Inlägget Bästa LLM:er för OpenCode - testat lokalt använde “implementera en IndexNow-notifier i Go” som en kodningsbenchmark - användbart om du vill se hur olika modeller hanterar samma specifikation och strukturerade uppgifter.

Praktiska tips

  • Föredra indexnow-motorn när du vill att en inlämning ska spridas genom den delade infrastrukturen (se searchengines.json och spegla den listan i din egen klient om du stöder flera ändpunkter).
  • 429 betyder att du ska sakta ner. 403 betyder vanligtvis nyckel- eller värdshostmismatch. Åtgärda nyckelfilens plats eller värdshostnamn först.
  • IndexNow ersätter inte 301-omdirigeringar när du byter namn på vägar. Avisa efter att omdirigeringarna är live.

Se även