Bem-vindo: Sex, 1 de Novembro 2024, 0:55 Pesquisa avançada

Como eu consegui reduzir o SPAM para zero no Wordpress!

Esta secção é dirigida a todo o tipo de conversas que não se enquadrem nas secções acima. São proibidas conversas com teor racista, religioso, político, pornográfico, violento entre outros semelhantes.

Como eu consegui reduzir o SPAM para zero no Wordpress!

Mensagempor Claudio Novais » Dom, 16 de Dezembro 2012, 16:03

O Blog Ubuntued recebia centenas de comentários de SPAM diariamente. Felizmente com o Akismet, todos eles iam para a secção SPAM. O problema é que havia sempre uma probabilidade, talvez de 0.001%, de falsos-positivos, ou seja, que iam para o SPAM automaticamente e no meio de tantos comentários era quase humanamente impossível.

Ora, apesar da situação do Blog do UBuntued estar a funcionar muito bem, pois tudo o que era spam (havia um ou outro comentários que não era considerado com spam talvez de 2 em dois meses, ou que é algo soberbo!), eu não gostava de ver aquele número gigante de comentários definidos como spam.

Não gostava de ver tantos comentários por dois motivos:
  • Podia haver falsos-positivos que eu nunca os iria encontrar (e provavelmente os utilizadores não iam ficar satisfeitos por pensarem que foi culpa dos moderadores)
  • A base de dados fica bastante mais congestionada por causa dessa quantidade enorme de comentários
  • Diariamente o Wordpress tinha de apagar os comentários de SPAM que tinham mais de 30 dias de vida, ou seja, mais peso no servidor

Precisava portanto de uma solução mais eficaz ainda que o próprio akismet (que recomendo vivamente a utilizar!!). Pensei então em utilizar um sistema resultante de uma ideia muito inteligente que a maioria dos bots que produzem SPAM se enganavam: utilizar o plugin Invisible Defender. Basicamente este plugin punha mais uma entrada a ser preenchida aquando da escrita de comentários. Só que essa entrada estava oculta pelo CSS, fazendo com que numa situação normal nunca fosse preenchida, mas os bots, como são bots ao preencherem caíam na ratoeira. O problema é que isso teve consequências com o sistema de cache do UBuntued. Podem saber mais sobre a incompatibilidade do sistema de cache com o Invisible Defender aqui.

Como resolvi então este problema do excesso de SPAM? Veja a secção abaixo.

Como reduzir praticamente a zero o SPAM no Wordpress!



Como as soluções anteriores não estavam a ser suficientemente eficazes, lembrei-me de analisar o spam. Ora, a maioria do spam que o Ubuntued recebia tinha palavras chave muito comuns, nomeadamente palavras farmacêuticas (viagra é talvez o mais comum) e tags de foruns (por exemplo [url]).

Ora, ao ver tal coisa, sabia bem que devia arranjar uma maneira de simplesmente nem aceitar tais comentários com essas keywords. Essas palavras nunca serão ditas numa situação normal no Ubuntued e portanto eu podia simplesmente nem sequer saber dos comentários que tivessem tais conteúdos. Mas mesmo assim, eu devia avisar que o comentário não foi aceite pelo motivo real: utilização de palavras proibidas por serem usadas pelos bots.

Procurei na internet e encontrei um site que tinha precisamente a solução relativa a esse assunto:

Basicamente, este procedimento que expliquei acima resume-se a pôr o conteúdo seguinte no ficheiro functions.php da pasta do tema que estamos a utilizar no nosso blog do wordpress:
Código: Selecionar todos
function in_comment_post_like($string, $array) {
    foreach($array as $ref) { if(strstr($string, $ref)) { return true; } }
    return false;
}
function drop_bad_comments() {
    if (!empty($_POST['comment'])) {
        $post_comment_content = $_POST['comment'];
        $lower_case_comment = strtolower($_POST['comment']);

        // List of banned words in comments.
        // Comments with these words will be auto-deleted.
        $bad_comment_content = array(
            'viagra',
            'hydrocodone',
            '[url=http',
            '[link=http',
            'xanax',
            'tramadol',
            'lorazepam',
            'adderall',
            'dexadrine',
            'no prescription',
            'oxycontin',
            'without a prescription',
            'sex pics',
            'family incest',
            'online casinos',
            'online dating',
            'cialis',
            'amoxicillin'
        );

        if (in_comment_post_like($lower_case_comment, $bad_comment_content)) {
            wp_die( __('O seu comentário não foi aceite por utilizar palavras banidas.') );
        }
    }
}
add_action('init', 'drop_bad_comments');


Depois disto, tive de limpar toda a cache do blog para que tivesse efeito imediato. Nos primeiros dias, fiquei assustado pois não via mesmo comentários nenhuns de SPAM. A pasta que outrora tinha sempre um valor na ordem dos milhares, agora estava constantemente no ZERO. Com o passar do tempo, vejo um ou o outro comentário de SPAM. Talvez um comentário a cada 4 dias. 8)
Avatar do usuário
Claudio Novais
Editor do Ubuntued
 
Mensagens: 16869
Registrado em: 25 Maio, 2011

Re: Como eu consegui reduzir o SPAM para zero no Wordpress!

Mensagempor abdo » Dom, 16 de Dezembro 2012, 17:59

Boas Claudio

Interessante este seu artigo, embora ele tenha chegado um pouquinho tarde para mim.
Eu tenho um pequeno blog onse pósto algumas coisa sobre o lugar em que moro, a Ilha do Governador, este blog estava na plataforma do blogspot com o dominio deles, (guiailha.blogspot.com) então resolvi manter o blog junto com o meu dominios (guiailhadogovernador.com) e criei o blog usando a plataforma do wordpress passando a usar o subdominio(blog.guiailhadogovernador.com).

Não fiquei sequer 2 meses com a plataforma do wordpress pois a quantidade de comentários de spam que recebia era enorme e acabei voltando para a plataforma do blogspot, e usando o subdominio apenas para redirecionar para o dominio mesmo do blogger.

Não sei como é a política do blogger, mas não recebo comentário de spams mesmo com o subdominio continuando ativo.

Fiquei chateado por ter de abandonar o wordpress, já que eu não tinha sequer ideia de como bloquear os spams, mas no pouco tempo que usei gostei demais da plataforma do wordpress.
/+/ Não digo que sou um Vascaíno doente, pois doente é quem não é Vascaíno /+/
Carlos Drummond de Andrade. Vascainos sempre em boa cia...
Club de Regatas Vasco da Gama

Imagem
Avatar do usuário
abdo
 
Mensagens: 696
Registrado em: 08 Abril, 2012
Localização: João Pessoa - PB- Brasil

Re: Como eu consegui reduzir o SPAM para zero no Wordpress!

Mensagempor Claudio Novais » Seg, 17 de Dezembro 2012, 11:58

Olá Abdo,

Eu não tinha qualquer problema grave relativo ao SPAM. Basicamente o spam estava a ser filtrado todo, tal como acontece no gmail por exemplo. E a taxa de sucesso é incrivelmente alta.

O meu problema era querer ter a certeza que mesmo com essa taxa super baixa os falsos positivos não fossem descartados, que são raríssimos, mas preocupei-me com eles. Outra questão muito importante era a base de dados, que estava sempre a ser bombardeada!

Mas ao nível de utilizador normal, o sistema wordpress funcionava perfeitamente, você só via a secção do spam (tal como no gmail) sempre com uma atividade constante, mas mais nada. Isso ocorre pois eu tinha instalado o Akismet, algo que qualquer utilizador tem de instalar em seja qual for o formulário online. Infelizmente esta é a realidade da Internet.

Se o blogspot precisa? Não sei se eles usam o seu próprio sistema ou se usam o Akismet, mas de certeza que o funcionamento é bastante semelhante a diferença é que já vem ativo por padrão.
Avatar do usuário
Claudio Novais
Editor do Ubuntued
 
Mensagens: 16869
Registrado em: 25 Maio, 2011


Voltar para Seja livre e converse! [OFF-TOPIC]

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 91 visitantes