Come bloccare lo spam nel modulo di contatto

Come bloccare lo spam nel modulo di contatto: honeypot, trappola temporale, CAPTCHA | We.Inc

Blocca lo spam nel modulo di contatto del tuo sito con un campo honeypot, una trappola temporale e un CAPTCHA gratuito come Turnstile, reCAPTCHA o hCaptcha, verificato sul tuo server. Demo dal vivo.

Come bloccare lo spam nel modulo di contatto

Metti i controlli economici prima di quelli fastidiosi. Aggiungi un campo honeypot nascosto che le persone non vedono mai ma che i bot compilano, rifiuta i moduli inviati più velocemente di quanto una persona possa scrivere e, se lo spam passa ancora, aggiungi un servizio CAPTCHA come Turnstile, reCAPTCHA o hCaptcha il cui token viene verificato dal tuo server.

Difese antispam a confronto

I bot di spam scandagliano il web alla ricerca di moduli e li inviano in automatico. Il tuo server non vede chi sta scrivendo, quindi ogni difesa funziona individuando un comportamento che una persona non avrebbe, oppure chiedendo a un servizio esterno di garantire per il visitatore. Prova le prime due difese nella demo, poi copia il controllo lato server che le accompagna.

Domande frequenti

Che cos'è un campo honeypot?

Un input presente nel codice del modulo ma nascosto alle persone. I visitatori lo lasciano vuoto perché non lo vedono mai; i bot che compilano ogni campo che trovano ci scrivono qualcosa, e così si tradiscono.

Esiste un'alternativa gratuita a reCAPTCHA?

Sì. Cloudflare Turnstile e hCaptcha offrono entrambi piani gratuiti con la stessa struttura: uno script e un widget nella pagina, poi una chiamata dal server a un indirizzo siteverify con la tua chiave segreta e il token del visitatore. Controlla la pagina dei piani aggiornata di ciascun fornitore per i limiti.

reCAPTCHA v3 mostra un rompicapo?

No. La documentazione di Google dice che v3 restituisce un punteggio in cui 1.0 indica un'interazione molto probabilmente legittima e 0.0 molto probabilmente un bot, e suggerisce di partire con una soglia di 0.5. Sei tu a decidere cosa fare con i punteggi bassi.

Il widget da solo può bloccare lo spam?

No. La documentazione di Cloudflare afferma chiaramente che il widget lato client da solo non protegge i tuoi moduli. Un bot può inviare direttamente all'indirizzo del modulo, quindi il server deve verificare il token.

Perché ricevo ancora spam con un honeypot?

Alcuni bot usano un browser vero e compilano solo i campi visibili, e parte dello spam è scritto da persone. Aggiungi la trappola temporale, poi un CAPTCHA. Rifiuta anche i messaggi pieni di link se il tuo modulo non ne ha mai bisogno.

Perché i controlli gratuiti vengono prima

Nascondi la trappola nel modo giusto

Verifica i token CAPTCHA sul server

Copia l'honeypot e la trappola temporale

L'HTML va nel tuo modulo. Il controllo lato server è mostrato per Node con Express, ma la logica sta in tre righe in qualsiasi linguaggio.

Modulo con un campo honeypot

La classe .hp sposta la trappola fuori dallo schermo. Il campo started viene riempito con l'ora corrente dal piccolo script.

Controllo lato server (Node, Express)

I bot ricevono la stessa risposta delle persone, così non possono capire quale controllo li ha fermati.

Aggiungere Turnstile, reCAPTCHA o hCaptcha

Tutti e tre funzionano allo stesso modo. Questi dettagli vengono dalla documentazione ufficiale di ciascun fornitore.

Servizi CAPTCHA a confronto

Verificare un token Turnstile (Node 18 o successivo)

Il widget aggiunge al modulo un campo chiamato cf-turnstile-response. Tieni la chiave segreta in una variabile d'ambiente.

Demo dal vivo: honeypot più trappola temporale

Non viene inviato nulla. Premendo Invia si eseguono gli stessi controlli che farebbe un server, direttamente nel tuo browser.

Il tuo nome

Messaggio

Sito web (lascia vuoto)

Comportati da bot: compila il campo nascosto

Invia

Ricomincia

Compila il modulo e premi Invia per vedere cosa decide il controllo lato server.

Accettato: la trappola era vuota e sono passati {n} secondi. Un modulo vero ora invierebbe il messaggio.

Scartato: il campo nascosto aveva un valore, quindi sembra un bot. Il visitatore vedrebbe comunque un messaggio di ringraziamento.

Scartato: inviato dopo {n} secondi, più velocemente del minimo di {m} secondi.

Il campo nascosto qui è visibile, con un bordo, così puoi vedere quello che vedono i bot.

Inizia gratis · Nessuna carta di credito richiesta

Correlati: Guide

Prodotto

Per chi è

Funzionalità

Risorse

Azienda

Mappa del sito