Naar hoofdinhoud springen

Handleidingen / Monitoringbegrippen uitgelegd

Wat is noindex, en wanneer gebruikt u het

Een noindex-instructie vertelt zoekmachines een pagina buiten hun index te houden, ook al mogen ze hem nog steeds crawlen. Ze wordt ingesteld als een meta-tag in de <head> van de pagina of als een X-Robots-Tag-HTTP-responseheader, en het is het juiste middel voor pagina's die moeten bestaan maar niet in zoekresultaten mogen verschijnen.

De twee plekken waar noindex leeft

Er zijn precies twee ondersteunde manieren om het te zeggen, en ze betekenen hetzelfde:

<meta name="robots" content="noindex">
X-Robots-Tag: noindex

De meta-tag werkt alleen binnen de <head> van een HTML-document. De header werkt op alles wat de server stuurt, en dat is waarom hij de enige optie is voor een PDF, een afbeelding of een JSON-endpoint. U kunt ook één crawler bij naam aanspreken, dus <meta name="googlebot" content="noindex"> geldt voor Google en laat andere zoekmachines met rust.

De tweede waarde in content is een aparte beslissing. noindex, follow houdt de pagina buiten de index terwijl crawlers de links erop mogen gebruiken; noindex, nofollow stopt beide. Voor een gepagineerd archief of een gefilterde lijst is noindex, follow meestal wat u wilt, omdat de links op die pagina's zijn hoe diepere pagina's worden ontdekt.

Wanneer noindex de juiste keuze is

Gebruik het op pagina's die bereikbaar moeten zijn maar niets te zoeken hebben in de rankings: interne zoekresultaatpagina's, bedank- en orderbevestigingspagina's, printvriendelijke duplicaten, gebruikersaccountgebieden, tagarchieven met maar één bericht, en staging- of demo-omgevingen als geheel.

Gebruik het niet als oplossing voor dubbele content wanneer de twee pagina's werkelijk hetzelfde zijn. Daarvoor is rel=canonical: een canonical consolideert de signalen van beide URL's in één, terwijl noindex het duplicaat helemaal weggooit, links en al.

De regel die iedereen fout doet: crawlen komt eerst

Een crawler moet een pagina ophalen om de noindex erop te zien. Blokkeert u die URL in robots.txt, dan haalt de crawler hem nooit op, ziet hij de instructie nooit, en kan de URL nog steeds opduiken in resultaten via externe links, meestal zonder beschrijving.

De twee combineren is dus zelfondermijnend. Om een pagina uit zoeken te verwijderen, staat u crawlen toe en bedient u noindex. Is de pagina eenmaal opnieuw gecrawld en gevallen, dan kunt u hem in robots.txt blokkeren als u ook het crawlbudget wilt sparen. In de andere volgorde blijft de pagina onbeperkt in de index. noindex in robots.txt zetten werkt ook niet; Google stopte die niet-gedocumenteerde syntax te honoreren op 1 september 2019.

Hoe het van staging naar productie lekt

Vrijwel elk serieus noindex-incident begint als een bewuste, correcte noindex op een stagingsite. Dan gebeurt een van deze dingen:

  • Een databasekopie. De stagingdatabase wordt over productie hersteld, en draagt de CMS-vlag mee. In WordPress is dat het vakje "Zoekmachines ontmoedigen deze site te indexeren" onder Instellingen, opgeslagen als optierij.
  • Een configpromotie. De .env of nginx-snippet van staging die X-Robots-Tag: noindex aan elk antwoord toevoegt, wordt met de release meegedeployed.
  • Een thema- of templatemerge. Een hardgecodeerde meta-tag in een gedeeld layoutbestand overleeft een merge die niemand regel voor regel las.
  • Een CDN- of edge-regel geschreven om een previewhostnaam te beschermen, toegepast op een routepatroon dat ook op productie matcht.

De reden dat dit duur is, is dat niets breekt. De site geeft 200 terug, laadt normaal, en passeert elke uptimecheck. Verkeer takelt af over dagen naarmate pagina's opnieuw worden gecrawld en vallen, en tegen de tijd dat iemand de grafiek opmerkt, duurt het herstel ook dagen.

Hoe u een onbedoelde noindex opspoort

  1. Lees de header. curl -sI https://example.com/ | grep -i x-robots-tag geeft niets terug op een gezonde pagina. Alles wat hij afdrukt is de moeite van uitleggen waard.
  2. Lees de meta-tag in de uitgeleverde HTML, niet in uw editor: curl -s https://example.com/ | grep -i 'name="robots"'. Server-side logica en edge-workers kunnen tags injecteren die niet in uw repository staan.
  3. Controleer Search Console. URL-inspectie meldt "Uitgesloten door 'noindex'-tag" per URL, en het rapport Pagina's groepeert elke getroffen URL onder dezelfde reden.
  4. Crawl de hele site, want het lek zit zelden op de homepage die u testte. Een crawl markeert noindex per URL, dus een template die alleen productpagina's raakt, verschijnt als een blok gemarkeerde rijen in plaats van één verrassing.

Sitebrede noindex is het makkelijke geval. Het gangbare geval is één template of één route, wat precies is wat een steekproef op de homepage mist.

Controleer elke pagina, niet alleen degene die u zich herinnert

Voor één URL leest de gratis noindex-checker de robots-meta-tag en de X-Robots-Tag-header zoals de pagina bediend wordt en vertelt u welke van de twee de instructie instelde. Om te zien of het één pagina of een hele sectie is, loopt de gratis sitecrawltool de site door en markeert elke noindex-pagina die hij vindt, samen met ontbrekende canonicals en dubbele bodies. En omdat het lek meestal met een release meekomt, leest de optie Indexability op een HostTracker HTTP-monitor beide bij elke check en stuurt een melding op de dag dat een van beide verandert - SEO-monitoring legt uit hoe dat werkt.

Nu controleren

Voer de gratis check uit op je eigen site, zonder account.

Noindex checker

Dit permanent monitoren

Ontvang een melding zodra er iets misgaat: HostTracker controleert vanaf meer dan 300 locaties en waarschuwt je via e-mail, sms, Slack, Telegram en meer.

HostTracker-functies

Meer in dit onderdeel: Monitoringbegrippen uitgelegd