Naar de inhoud

Kennisbank · Internet Marketing Begrippen

Comment spam.

16 min leestijd

Comment spam is de stroom ongewenste reacties op je site: prijzen die je hebt gewonnen, medicijnen, en vooral links naar sites waar je niet heen wilt.

Vrijwel elke WordPress-site krijgt het, ook een site die niemand kent. Het gaat geautomatiseerd en het gaat langs alles wat bereikbaar is. Bekendheid is geen voorwaarde; een reactieformulier is genoeg.

Waarom je site wordt volgespamd

Om links. Het idee erachter is oud: een verwijzing vanaf jouw site zou de vindbaarheid van de spammer helpen.

Dat werkt allang niet meer. In januari 2005 introduceerden Google, Yahoo en MSN samen de aanduiding nofollow, precies om deze plaag te stoppen. WordPress zette hem meteen op alle links in reacties. Sinds 2019 bestaat daarnaast de aanduiding ugc, bedoeld voor inhoud die door bezoekers is geplaatst, en die zet WordPress er tegenwoordig ook bij. Een link in een reactie telt dus niet als aanbeveling, en dat weten de spammers ook.

Ze zijn er toch nooit mee gestopt, want het kost ze vrijwel niets. Een programma dat een miljoen formulieren afgaat is goedkoop, en als één op de duizend sites het door laat, is dat winst. Wat er wél werkt aan verwijzingen staat in het artikel over linkbuilding.

Er zijn twee andere redenen. De eerste is bezoekers naar kwaadaardige sites lokken; een reactie is dan gewoon een advertentie met slechte bedoelingen. De tweede is aftasten: reageert je site op vreemde invoer, dan is dat informatie waard voor wie later probeert binnen te komen.

Hoe zo'n aanval technisch verloopt

Een spamprogramma bezoekt je pagina meestal niet. Het stuurt zijn gegevens rechtstreeks naar het bestand dat reacties verwerkt, wp-comments-post.php, dat op elke WordPress-installatie op dezelfde plek staat.

Dat verklaart waarom je site wordt geraakt terwijl je statistieken nauwelijks bezoek laten zien: zulke programma's tellen daar meestal niet in mee. En het verklaart waarom maatregelen die in de browser draaien niets uithalen. Er is geen browser.

Er is een tweede ingang: xmlrpc.php, het bestand waarmee externe programma's met WordPress praten. Ook daarmee kun je reacties plaatsen. Dat bestand is bovendien jarenlang misbruikt om via de pingbackfunctie andere sites plat te leggen. Veel hostingpartijen blokkeren het inmiddels standaard, en als jij geen externe koppeling gebruikt die het nodig heeft, kun je het gerust dicht laten zetten.

Hoe ze je vinden is niet spannend. Ze scannen adresreeksen af en herkennen WordPress aan vaste paden en aan de regel met de versie in de broncode. Elk contentmanagementsysteem met een groot marktaandeel krijgt deze behandeling, simpelweg omdat één script dan bij miljoenen sites past.

Wat het met je site doet

De schade is zelden dramatisch en bijna altijd sluipend.

Je database groeit. Reacties staan in de tabel wp_comments en de spamfilters schrijven per reactie extra regels weg in wp_commentmeta. Bij een site die jaren openstaat kan dat uitgroeien tot het grootste deel van je database. Dat maakt je back-ups groter, je verhuizingen trager en je beheerscherm langzamer.

Je postvak loopt vol. Standaard mailt WordPress je bij elke reactie die op goedkeuring wacht. Na een week zet je die meldingen uit, en daarna mis je de echte reacties ook.

Je server krijgt werk. Elke poging is een verzoek dat PHP en de database aan het werk zet. Bij een golf van duizenden pogingen per uur merk je dat aan je laadtijd, zeker op gedeelde hosting.

En er is een zoekmachinekant. Een pagina vol links naar dubieuze sites kan in Search Console leiden tot een handmatige maatregel wegens door gebruikers geplaatste spam. Dan raak je posities kwijt door rommel die je zelf hebt laten staan.

Wat het vooral kost is geloofwaardigheid. Een bezoeker die onder je artikel dertig reacties in het Russisch ziet staan, trekt zijn conclusie over de rest van je site.

De instellingen in WordPress die je meteen aanzet

Ga naar Instellingen, Reacties. Daar staat meer dan de meeste mensen ooit hebben bekeken.

Reactie moet handmatig goedgekeurd worden. Niets verschijnt voordat jij het goedkeurt. Voor je bezoekers is het probleem daarmee weg; voor jezelf niet, want je moet nog steeds door de lijst.

Reactieauteur moet een eerder goedgekeurde reactie hebben. Een prettige tussenvorm. De eerste reactie van iemand komt in de wachtrij, daarna gaat hij door. Het koppelt op naam en e-mailadres, dus het is te omzeilen, maar niet door de gemiddelde robot.

Houd een reactie vast bij twee of meer links. Dit veld staat standaard op twee en dat is verstandig. Vrijwel alle spam bevat links, vrijwel geen enkele echte reactie bevat er meer dan één.

Sluit reacties op berichten ouder dan zoveel dagen. Oude artikelen zijn favoriet bij spammers, en de discussie is daar toch voorbij. Dertig dagen is een redelijke keuze. Let op: dit sluit ook de reacties op artikelen waar nog wel iets loopt, dus kijk of dat je uitkomt.

Naam en e-mailadres verplicht. Houdt de allersimpelste programma's tegen en kost een echte bezoeker niets.

Gebruikers moeten ingelogd zijn. Dit werkt zonder meer, en het kost je vrijwel alle echte reacties. Niemand maakt een account aan om iets te zeggen. Alleen zinvol op een site waar mensen toch al inloggen.

Niet toegestane reactiesleutels en de moderatielijst

Onderin dezelfde pagina staan twee tekstvakken die op elkaar lijken en verschillend werken.

Het eerste houdt reacties vast voor moderatie als er een woord in staat dat jij opgeeft. Het tweede, Niet toegestane reactiesleutels, gooit ze meteen in de spammap. Dat tweede vak heette tot WordPress 5.5 in de zomer van 2020 nog de zwarte lijst; alleen de naam is veranderd, de werking niet.

Beide velden kijken naar de inhoud, de naam, het e-mailadres, de website, het IP-adres en de browserkenmerken. Eén term per regel.

De valkuil: er wordt ook op een deel van een woord gecontroleerd. Zet je "press" op de lijst, dan verdwijnt elke reactie waarin WordPress voorkomt. Zet je een landcode of een veelvoorkomende domeinnaam op de lijst, dan raak je meer kwijt dan je bedoelt. Gebruik deze vakken dus voor specifieke termen die in jouw spam telkens terugkomen, niet als hoofdverdediging.

Pingbacks en trackbacks kun je uitzetten

Bovenaan diezelfde instellingenpagina staat de optie om meldingen van andere blogs toe te staan. Dat is een functie uit de tijd dat blogs elkaar automatisch lieten weten dat ze naar elkaar linkten.

In de praktijk komt daar tegenwoordig vrijwel alleen spam uit. Zet hem uit. Je verliest er niets mee, want vrijwel niemand gebruikt het nog en de melding was toch al niet betrouwbaar.

Ook hier geldt dat de instelling alleen voor nieuwe berichten werkt. Bestaande artikelen pas je aan via Berichten, alles selecteren, Bulkbewerkingen, Bewerken, en dan bij Pings de optie Niet toestaan.

Akismet

Akismet is de spamfilter die standaard bij WordPress wordt meegeleverd, gemaakt door Automattic, het bedrijf achter WordPress.com. Hij staat er wel bij maar staat niet aan; je moet hem inschakelen en een sleutel ophalen.

Hij werkt door elke reactie voor te leggen aan een centrale dienst die miljoenen sites tegelijk bedient. Wat op de ene site als spam wordt herkend, wordt daarmee op de volgende site meteen tegengehouden. Daardoor werkt hij zo goed: hij ziet meer dan jij ooit kunt zien.

De keerzijde is dat de inhoud van de reactie, de naam, het e-mailadres, het IP-adres en de browserkenmerken naar een Amerikaans bedrijf gaan. Dat is een verwerking waar de AVG iets van vindt. Je hebt een verwerkersovereenkomst nodig en je moet het in je privacyverklaring noemen. Voor de doorgifte naar de Verenigde Staten geldt sinds het adequaatheidsbesluit van 10 juli 2023 het EU-US Data Privacy Framework, mits de ontvangende partij daaronder is gecertificeerd. Controleer dat, want zo'n certificering kan wijzigen.

Het is gratis voor persoonlijke sites zonder commercieel doel. Een bedrijfssite valt daar niet onder en hoort een betaald abonnement te nemen. Dat is geen groot bedrag en het is wel een keuze die je bewust maakt.

Akismet slaat per reactie geschiedenis op in je database, dus ruim je spammap regelmatig leeg. En hij haalt af en toe een echte reactie weg, meestal van iemand die een link meestuurde. Kijk er dus in voordat je hem leeggooit.

Antispam Bee en andere filters

Antispam Bee is het bekendste alternatief. Het is een gratis Duitse plugin die het werk op je eigen server doet in plaats van bij een externe dienst. In Europa is hij daarom populair bij mensen die de AVG serieus nemen.

Hij beoordeelt op een reeks kenmerken: hoe de reactie is verstuurd, of er BBCode-links in staan, of de taal past bij je site, en of de auteur eerder is goedgekeurd. Je kunt hem laten weigeren op basis van het land van herkomst van het IP-adres, en je kunt hem spam meteen laten weggooien in plaats van bewaren. Dat laatste houdt je database schoon.

Hij haalt niet alles wat Akismet haalt. Op een site met weinig verkeer merk je dat verschil nauwelijks; op een druk blog wel.

Daarnaast bestaan er betaalde diensten die op dezelfde manier werken als Akismet, met een eigen centrale database. Voor de meeste bedrijfssites is dat overdreven. Kies er één en zet er niet drie tegelijk aan, want dan weet je bij een verdwenen reactie niet meer welke hem heeft gepakt.

Honeypot, tijdcontrole en waarom ik een captcha zelden aanraad

Er zijn twee maatregelen die je bezoeker niets kosten en verrassend veel wegvangen.

De eerste is een honeypot: een extra veld in het formulier dat met stijlregels verborgen is. Een mens ziet het niet en vult het niet in. Een programma vult alles in wat het tegenkomt. Is het veld ingevuld, dan gooi je de reactie weg. Andersom werkt het ook: komt er een inzending binnen zonder dat verborgen veld, dan heeft de afzender het formulier nooit opgehaald.

De tweede is een tijdcontrole. Je zet het tijdstip waarop het formulier is geladen in een verborgen veld en vergelijkt dat met het moment van verzenden. Een reactie die binnen twee seconden binnenkomt, komt niet van iemand die eerst je artikel las.

Een captcha zou ik niet als eerste maatregel kiezen. Verkeersborden aanwijzen houdt een deel van de programma's tegen, kost je ook echte reacties, en is een probleem voor mensen die slecht zien of met een schermlezer werken. Sinds 28 juni 2025 gelden er via de Europese toegankelijkheidsrichtlijn bovendien harde eisen aan onder meer webwinkels en bankdiensten, en een test die alleen visueel op te lossen is past daar slecht bij.

Wil je er toch een, kies dan een onzichtbare variant die alleen bij twijfel ingrijpt. De variant van Google beoordeelt gedrag op de achtergrond en stuurt daarvoor gegevens naar Google, wat dezelfde AVG-vraag oproept als hierboven. Sinds 2022 bestaat er ook een alternatief van Cloudflare dat op vergelijkbare wijze werkt en minder gegevens verzamelt. Wat Cloudflare verder voor je site doet staat in het artikel over Cloudflare.

Reacties helemaal uitzetten

Voor de meeste bedrijfssites is dit wat ik zou doen.

Kwamen er in een jaar drie echte reacties binnen en driehonderd nepreacties, dan levert de functie je niets op behalve werk. Mensen die iets willen zeggen doen dat via je contactformulier, per e-mail, telefonisch of op social media. De reactiemogelijkheid onder artikelen stamt uit de tijd dat dat de enige plek was.

Uitzetten doe je in twee stappen, en de tweede wordt bijna altijd vergeten. Bij Instellingen, Reacties haal je het vinkje weg bij het toestaan van reacties op nieuwe berichten. Die instelling geldt alleen voor wat je daarna publiceert.

Voor alles wat er al staat gebruik je de bulkbewerking: Berichten, alle items selecteren, Bulkbewerkingen, Bewerken, en dan bij Reacties de optie Niet toestaan. Herhaal dat voor Pagina's. Heb je toegang tot de opdrachtregel, dan gaat het in één regel met WP-CLI, waarbij je alle berichten ophaalt en er de reactiestatus gesloten op zet.

Er zijn plugins die dit in één klik doen en die het reactieformulier ook uit de sjablonen halen. Dat laatste is handig als je thema het formulier blijft tonen. Controleer daarna één artikel in een privévenster, want een gesloten formulier dat door een cache nog wordt getoond is een klassieke misser.

Wat de AVG met je reactieformulier te maken heeft

Een reactieformulier verzamelt persoonsgegevens: naam, e-mailadres, eventueel een website, en standaard ook het IP-adres van de bezoeker. WordPress bewaart dat IP-adres bij de reactie, ook bij spam die je nooit publiceert.

Dat heeft gevolgen. Je noemt het in je privacyverklaring, inclusief het spamfilter dat je gebruikt en waar die gegevens heen gaan. Je bewaart het niet eindeloos, dus je ruimt je spammap op. En je kunt eraan voldoen als iemand vraagt wat je van hem hebt: sinds mei 2018, vlak voor de AVG van kracht werd, zit er in WordPress een gereedschap onder Extra waarmee je persoonsgegevens per e-mailadres kunt uitvoeren of wissen, en reacties zitten daarin.

Het vinkje "Bewaar mijn naam en e-mailadres in deze browser" onder het formulier komt uit diezelfde periode. Zonder dat vinkje zet WordPress de cookie niet meer automatisch. Haal het niet weg.

Nog een detail dat vaak wordt gemist: de avatars naast reacties worden opgehaald bij een externe dienst, waarbij een versleutelde versie van het e-mailadres en het IP-adres van je bezoeker die kant op gaan. Wil je dat niet, dan zet je avatars uit op diezelfde instellingenpagina.

Als je de reacties wel openhoudt

Modereer dan echt. Een reactiesectie vol rommel die blijft staan is erger dan geen reactiesectie, en je bent verantwoordelijk voor wat er op jouw site staat. De aansprakelijkheidsregels voor tussenpersonen staan sinds de digitaledienstenverordening, die vanaf 17 februari 2024 volledig geldt, in Europese regelgeving, maar voor een gewone bedrijfssite is de praktische kant simpel: wat jij goedkeurt en laat staan, staat op jouw site. Bij een reactie die iemand beschadigt en die je na een melding laat staan, ben je zelf aan zet.

Reageer op echte reacties. Dat is de reden dat je ze openhoudt. Een vraag onder een artikel die je binnen een dag beantwoordt, is meer waard dan de tekst erboven.

Kijk periodiek in je spammap of er iets echts tussen zit, en gooi hem daarna leeg. Wat er niet in staat kan ook niet lekken.

Zet je meldingen zo dat je alleen bericht krijgt van wat op moderatie wacht, niet van alles. Anders leer je jezelf aan om ze te negeren.

Werk je met inhoud van bezoekers, dan valt dat onder user-generated content, met dezelfde afwegingen die spelen bij online reviews: het is waardevol, en je moet er wat mee.

Je formulieren krijgen dezelfde behandeling

Zet je de reacties uit, dan verschuift het probleem naar je contactformulier en je aanmeldformulieren. Daar komen dezelfde programma's op af, met dezelfde teksten.

De aanpak is hetzelfde: een verborgen veld, een tijdcontrole, en een filter dat op inhoud beoordeelt. De meeste formulierplugins hebben die opties ingebouwd, alleen staan ze niet altijd aan. Kijk ze na. Waar je verder op let bij zo'n formulier staat in het artikel over een goed contactformulier.

Twee dingen die specifiek voor formulieren gelden. Zet je eigen e-mailadres niet als afzender op formulierberichten, want dan gaan ze bij jezelf of bij je klant in de spammap belanden. En laat een formulier nooit ongefilterd doorsturen naar een adres dat automatisch iets aanmaakt, zoals een ticketsysteem, want dan zit je spam meteen in je administratie.

Loopt het echt uit de hand, dan ligt de oplossing een laag lager: snelheidsbeperking op het adres dat de inzendingen ontvangt, of een regel bij je hostingpartij. Hoe je de rest van je installatie dichthoudt staat in het artikel over het beveiligen van een WordPress-website.

Veelgestelde vragen over comment spam

Wat is comment spam precies?

Comment spam zijn geautomatiseerd geplaatste reacties op je website die niets met je artikel te maken hebben. Ze bevatten bijna altijd links, en het doel is verkeer naar andere sites of het aftasten van je installatie. Ze worden geplaatst door programma's, niet door mensen.

Waarom krijgt mijn nieuwe site al spam terwijl er nog geen bezoekers zijn?

Omdat de programma's die dit doen niet zoeken naar populaire sites, maar naar bereikbare formulieren. Ze scannen adresreeksen af en herkennen WordPress aan vaste bestandsnamen. Binnen enkele dagen na het live zetten van een site is het meestal raak, ongeacht of iemand hem heeft gevonden.

Schaadt comment spam mijn positie in Google?

Indirect wel. De links zelf tellen niet mee, want ze krijgen automatisch de aanduiding nofollow. Maar een pagina vol goedgekeurde spam kan een handmatige maatregel opleveren wegens door gebruikers geplaatste spam, en dan kost het je posities. Zolang je de rommel in de spammap houdt en niet publiceert, is er niets aan de hand.

Waar zet ik reacties uit in WordPress?

Onder Instellingen, Reacties zit een vinkje dat elk nieuw bericht standaard openzet. Haal dat weg en het werkt alleen vooruit. Wat er al gepubliceerd is verander je met de bulkbewerking in het berichtenoverzicht, waar je bij Reacties kiest voor Niet toestaan. Doe daarna hetzelfde bij je pagina's.

Is Akismet gratis?

Voor persoonlijke sites zonder commercieel doel wel. Voor een bedrijfssite hoort er een betaald abonnement bij. De plugin wordt met WordPress meegeleverd, maar staat niet aan en werkt pas als je een sleutel invult.

Wat is het verschil tussen Akismet en Antispam Bee?

Akismet legt elke reactie voor aan een centrale dienst in de Verenigde Staten die gegevens van miljoenen sites combineert. Antispam Bee doet het werk op je eigen server en stuurt niets door. Akismet vangt meer weg, Antispam Bee is eenvoudiger uit te leggen in je privacyverklaring en kost niets.

Mag ik Akismet gebruiken onder de AVG?

Ja, mits je het goed regelt. Je hebt een verwerkersovereenkomst nodig, je noemt de dienst in je privacyverklaring, en voor de doorgifte naar de Verenigde Staten leun je op het adequaatheidsbesluit van 10 juli 2023. Wil je dat vraagstuk vermijden, dan kies je een filter dat alles lokaal afhandelt.

Helpt een captcha tegen comment spam?

Deels. Een captcha houdt een deel van de programma's tegen en er zijn diensten die ze voor een paar cent laten oplossen. Tegelijk kost hij je echte reacties en werpt hij een drempel op voor mensen met een beperking. Een verborgen veld en een tijdcontrole halen vergelijkbare resultaten zonder die nadelen.

Wat is een honeypot in een reactieformulier?

Een verborgen invoerveld dat een bezoeker niet ziet en niet invult. Een spamprogramma vult alles in wat het tegenkomt, dus een ingevuld veld verraadt de afzender. Het kost je bezoeker niets en het werkt zonder dat er gegevens naar buiten gaan.

Moet ik oude spam verwijderen of kan die blijven staan?

Verwijderen. Spam in de spammap blijft in je database staan met naam, e-mailadres en IP-adres erbij, en dat zijn persoonsgegevens die je zonder reden bewaart. WordPress ruimt spam na dertig dagen automatisch op, maar controleer of die opruimtaak op jouw site echt draait, want geplande taken lopen op sommige installaties niet.

Waarom staan er nofollow-links in reacties?

Omdat WordPress die er automatisch bij zet. De aanduiding is in januari 2005 bedacht door de grote zoekmachines om reactiespam onaantrekkelijk te maken: de link werkt gewoon voor bezoekers, maar telt niet als aanbeveling. Sinds 2019 komt daar de aanduiding ugc bij, die aangeeft dat de inhoud door een bezoeker is geplaatst.

Kan ik reacties per artikel openhouden en de rest sluiten?

Ja. In het bewerkscherm van een bericht staat onder de instellingen een blok waarin je reacties per stuk aan of uit zet. Op die manier kun je één artikel waar een discussie loopt openhouden en de rest dichtzetten. Dat is voor de meeste sites de verstandigste opzet.

Wat doe ik als er ineens honderden reacties per uur binnenkomen?

Zet eerst de moderatie aan zodat er niets meer verschijnt, en zet reacties op oude berichten dicht. Loopt het door en merk je het aan je laadtijd, vraag je hostingpartij dan om het adres dat de reacties ontvangt af te schermen of te beperken. Zet daarna pas de rest van je maatregelen goed neer, want dan heb je weer rust.

Verlies ik zoekverkeer als ik reacties uitzet?

Nee. Reacties leveren wat extra tekst op een pagina en soms een vraag die anderen ook hebben, maar het is geen factor waar je positie op leunt. Een site met dichte reacties en goede artikelen doet het beter dan een site met open reacties vol rommel.

Dit artikel hoort bij Internet Marketing Begrippen. Daar vind je meer uitleg over hetzelfde onderwerp.

Een vraag over dit onderwerp?

Vertel waar je tegenaan loopt.

Maurits denkt met je mee en geeft je een praktisch antwoord.

reactie dezelfde werkdag
Maurits van Platform Pro

Vertel kort waar je aan denkt

Nu gesloten, ik reageer de volgende werkdag

Maurits leest je bericht en neemt persoonlijk contact met je op.

Dit veld is bedoeld voor validatiedoeleinden en moet niet worden gewijzigd.
Dit veld is verborgen bij het bekijken van het formulier