Formulários de contato sem proteção são explorados por robôs para enviar spam em massa — prejudicando a reputação do seu e-mail e sobrecarregando o servidor.
O reCAPTCHA v3 é invisível para o usuário mas bloqueia robôs eficientemente.
Como configurar:
WordPress — plugin Contact Form 7:
[recaptcha] ao formulárioO honeypot é um campo invisível para humanos mas que robôs preenchem:
<!-- Campo honeypot - oculto com CSS -->
<input type="text" name="website" style="display:none" tabindex="-1" autocomplete="off">
No PHP verifique:
if (!empty($_POST['website'])) {
die('Spam detectado');
}
Nunca confie apenas na validação do frontend:
// Verifica se o e-mail é válido
if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
die('E-mail inválido');
}
// Limita o tamanho da mensagem
if (strlen($_POST['mensagem']) > 2000) {
die('Mensagem muito longa');
}
Limite o número de envios por IP em um período:
session_start();
$limite = 3;
$periodo = 3600; // 1 hora
if (!isset($_SESSION['form_count'])) {
$_SESSION['form_count'] = 0;
$_SESSION['form_time'] = time();
}
if (time() - $_SESSION['form_time'] > $periodo) {
$_SESSION['form_count'] = 0;
$_SESSION['form_time'] = time();
}
if ($_SESSION['form_count'] >= $limite) {
die('Muitas tentativas. Aguarde uma hora.');
}
$_SESSION['form_count']++;
O Akismet filtra spam automaticamente em comentários e formulários:
Abra um ticket em nossa área do cliente informando o domínio e a quantidade de spam recebida.