A lista a seguir é organizada pela relativa facilidade de implementação, custo de manutenção e eficácia na prevenção de spam:
Desativar todo o conteúdo gerado pelo usuário
Essa é uma solução de terra arrasada que prejudica o crescimento de uma comunidade de usuários em seu site, no entanto, também é garantido a economia de tempo e esforço em lidar com spam ou prevenção de spam.
Além de desativar o conteúdo gerado pelo usuário, não há solução garantida para impedir que todo o spam (ou outro conteúdo indesejado) apareça; no entanto, uma solução que detenha a maioria dos spammers deve ser suficiente se você também fornecer aos visitantes do site a opção de sinalizar o conteúdo como spam.
Terceirizar o gerenciamento de conteúdo gerado pelo usuário
Serviços como o Disqus permitem que os webmasters terceirizem a triagem, o armazenamento e a publicação dos comentários gerados pelos usuários. (Observação: o uso de um serviço de terceiros requer configuração extra para garantir que os comentários sejam indexados pelos mecanismos de pesquisa)
CAPTCHA
De acordo com a Wikipedia , CAPTCHA significa "Teste de Turing público totalmente automatizado para diferenciar computadores e seres humanos". Qualquer teste automatizado projetado para impedir que um computador publique conteúdo é um CAPTCHA: isso inclui forçar os usuários a ler letras, números e palavras nas imagens, fazer quebra-cabeças simples ou perguntas de matemática ou "provar" que são pessoas.
A desvantagem do CAPTCHA é que
A maioria das formas de CAPTCHAs fornece um nível de aborrecimento para os usuários.
Eles não são 100% de proteção. Observe que muitos desses testes podem ser concluídos por computadores se um programador competente decidir investir tempo e esforço suficientes no problema
Perguntas e Respostas CAPTCHA
O CAPTCHA mais eficaz para sites pequenos é a pergunta e resposta CAPTCHA. Um CAPTCHA de perguntas e respostas é uma pergunta que um site solicita que o usuário responda. A pergunta é algo que qualquer pessoa que visite o site saberia, mas que um programa de computador não saberia. Um exemplo de pergunta para um site sobre SEO seria "O que significa SEO"? Essa pergunta seria fácil para o leitor médio do site responder, mas qualquer programa de computador não seria capaz de fazer isso.
NOTA: perguntas como "o que é 1 + 1" não funcionam bem, porque são usadas com frequência e as pessoas que constroem spambots as programam para responder a essas perguntas corretamente.
No entanto, se o seu site recebe muito tráfego, os spammers programam seus robôs para responder a essas perguntas automaticamente, e as perguntas e respostas do CAPTCHA não serão mais afetivas.
Campo oculto
Se você possui um formulário e não deseja que os remetentes de spam possam usá-lo, uma boa maneira de interrompê-los é usar um campo oculto. É muito simples de configurar: adicione um campo redundante ao seu formulário, oculte-o por meio de css (ou JavaScript) e interrompa qualquer coisa que tente inserir um valor nesse campo. Os usuários normais não poderão ver o campo e o ignorarão, porque ele está oculto, mas os programas de computador empregados pelos remetentes de spam tentarão inserir um valor nesse campo, porque eles não processam CSS ou javascript. Para vencer spambots que carregam CSS ou Javascript, você pode adicionar um campo adicional aos formulários com uma solicitação para deixá-lo vazio. Qualquer visitante humano o deixará vazio e você poderá bloquear facilmente os bots que adicionam dados ao campo. Não se esqueça do fato de que isso pode tornar o site pouco profissional.
Análise de tráfego e conteúdo
Os spammers têm um número limitado de redes e máquinas para postar (das quais eles normalmente usarão até que não funcionem mais). As soluções de análise de tráfego coletam dados de um grande número de hosts para determinar se uma postagem contém conteúdo de spam conhecido ou se é proveniente do host ou da rede de um spammer conhecido.
Há uma variedade de soluções CAPTCHA e de análise de tráfego de terceiros que são gratuitas (ou baratas) para uso e a maioria dos softwares de gerenciamento de conteúdo de código aberto inclui módulos integrados para uso de serviços como Akismet e reCAPTCHA .
Bloquear palavras normalmente contidas em spam
Se você perceber que o spam no seu site geralmente contém palavras que não são (ou não são) usadas por usuários legítimos (como "links gratuitos para o seu site"), impedir os usuários de postar essas palavras é uma solução afetiva. Se você estiver preocupado com os usuários que têm um uso legítimo dessas palavras em suas postagens com problemas para postar em seu site, você pode definir o filtro para que ele ignore postagens de usuários estabelecidos.
rel="nofollow"
Os spammers tendem a se concentrar em sites que lhes permitem publicar links que os mecanismos de pesquisa seguirão (melhorando assim a classificação de pesquisa do site que estão anunciando).
Você pode tornar seu site menos atraente para os spammers adicionando rel="nofollow"
a todos os links incluídos no conteúdo gerado pelo usuário; no entanto, essa abordagem pode não funcionar, pois a maioria dos spams é automatizada e os spammers não têm como saber se um site usa rel="nofollow"
links.
Moderação por usuários
O conteúdo pode ser postado por qualquer pessoa, no entanto, uma vez que o conteúdo é exibido no site, ele também pode ser sinalizado como spam e removido (essa opção só funciona na prática se os visitantes perceberem que o conteúdo de spam é relativamente incomum: se é permitido que o spam ultrapasse comentários úteis , a maioria dos visitantes não se incomodará em sinalizar spam).
Gamification
A gamificação é uma ótima maneira de motivar os usuários a denunciarem spam. Considere adicionar um recurso "peso da bandeira" ao seu site: quanto mais usuários de spam reportarem, mais pontos eles recebem. Isso tornará a busca de spam mais divertida e dará às pessoas que denunciam os direitos de se gabar. Por sua vez, isso incentivará os usuários a denunciarem spam.
Moderação por Administradores
Um humano deve revisar todos os itens de conteúdo publicados antes de serem publicados no site - embora isso não impeça a postagem de spam, impede a exibição de spam para os visitantes do site (reduzindo assim o valor do site para spammers humanos) .
Registro de Usuário
O registro do usuário é uma melhoria em relação ao CAPTCHA porque os usuários são obrigados a provar que são humanos apenas uma vez antes de poderem comentar conforme sua conveniência - essa tecnicamente não é uma forma diferente de prevenção de spam, embora faça a remoção do spam criado por um usuário específico ou grupo de usuários (conforme identificado por nome de usuário, email, endereço IP ou outro fator de identificação) mais fácil de impor.
Moderar novos usuários
Em vez de aprovar todas as postagens, um administrador pode revisar novos registros de usuários para determinar se deve ou não aprovar um usuário com base em se o registro do usuário é consistente ou não com spammers identificados ou spambots automatizados.
Limitar novos recursos de usuário
Os spammers humanos raramente se lembram de retornar às contas que criaram se não puderem enviar spam livremente em uma conta - exigem que novos usuários criem um número definido de postagens (se a comunidade tiver a capacidade de sinalizar spam) e / ou esperem um conjunto tempo antes das restrições de postagem de links ou várias postagens serem levantadas.
Cobrar usuários pela associação
Se você cobrar pela associação, mesmo que a taxa seja pequena, os spammers serão forçados a pesar o custo da associação com o valor da postagem de spam no seu site (e passar o site em favor de metas mais fáceis).
Somente convite
Se você permitir que apenas pessoas convidadas por outros usuários se registrem, isso reduzirá o spam de várias formas (normalmente, os humanos não convidam robôs).
O seguinte é do Projeto BOTCHA , Drupal.
Pote de mel
Implementação de honeypot-trap . A essência é que o campo é adicionado ao formulário com um determinado valor, que é modificado pelo JS. Spam é qualquer envio de formulário, cujo valor calculado não é o mesmo que precisamos.
HoneyPot2
O mesmo que acima, mas usando como fonte de cálculo não o valor de um campo específico, mas os dados do CSS.
ObscureUrl
Semelhante ao HoneyPot2: construído por JS é comparado à necessidade. A diferença é que o valor inicial é passado através do parâmetro GET.
Conclusão
A maioria dos webmasters descobrirá que uma combinação das soluções listadas acima (com exceção da proibição de conteúdo gerado pelo usuário) funciona melhor em seu site e pelo menos uma solução deve ser implementada para impedir que o spam automatizado sufoque as discussões dos visitantes.