• Chi sono
  • Contattami
  • Feed RSS
  • FlipBoard

Karibusana

  • MacOs
  • WordPress
  • iPhone
  • Jailbreak
  • Marketing
  • SEO
Ti trovi qui: Home / WordPress / Proteggere WordPress dallo Spam

Proteggere WordPress dallo Spam

Aggiornato da Vincenzo Vecchio il 21 Marzo, 2015 Lascia un commento

commenti-spam-wordpress

I commenti di spam costituiscono spesso un grande problema per i blogger e per chi utilizza WordPress. Di recente su Karibusana ho osservato un aumento nel numero di commenti posizionati in coda di spam e rilevati dall’ottimo plugin Akismet. Dopo un’attenta ricerca sul web per migliorare la mia conoscenza e capire quali ulteriori misure mettere in atto per ridurre il problema, ho deciso di pubblicare questo articolo cercando di descrivere il problema per capire come arginarlo e quindi combatterlo con le tecniche disponibili.

Partendo dal presupposto che non è possibile trovare un metodo “definitivo” e permanente per controllare lo SPAM l’unica arma è tenersi informati e aggiornarsi su quali sono e come si evolvono le tecniche utilizzate dagli spammers. Nonostante i commenti di spam non vengano pubblicati ma solo archiviati nella coda di moderazione questi occupano spazio nel database appesantendolo influenzando anche il tempo di caricamento del vostro sito web.

Cosa sono gli Spambots e come lavorano

Uno spambot è semplicemente un computer che invia in automatico commenti di spam. Nel caso di un blog creato in WordPress questi software sono in grado di compilare automaticamente i moduli dei commenti o di registrazione e inviarli al destinatario.

Combattere lo spam con .htacces e il modulo per la riscrittura delle URL (mod_rewrite)

Prima di iniziare dobbiamo tenere presente che la maggior parte degli spambot operano da reti di computer zombie e pertanto utilizzano degli IP random, questo significa che bloccando definitivamente questi IP potrebbe anche causare problemi agli utenti normali. Una tecnica utilizzata dagli spambot è quella di sfruttare il file di WordPress wp-comments-post.php riuscendo così ad inviare commenti anche se questa funzione è stata disabilitata nelle impostazioni generali d WordPress.

Come funziona questo sistema? Quando un lettore posta un commento il loro browser interroga WordPress indicandogli su quale pagina si vuole lasciare un commento, tutto questo avviene grazie alla possibilità del browser di accedere al file wp-comments-post.php

Quando un utente (non uno spambot) decide di lasciare un commento, compila il modulo dei commenti attraverso il file comments.php e nel momento in cui preme il pulsante “invia” viene iniziato lo script PHP all’interno del file wp-comments-post.php il quale permette di postare il commento. I software di spam di solito agiscono direttamente sul file wp-comments-post.php bypassando il file comments.php, questo causa delle richieste HTTP che però non derivano dal vostro dominio e pertanto riuscendo a bloccarle è possibile ridurre drasticamente la quantità di spam. Per fare questo è necessario modificare il file .htaccess aggiungendo la seguente stringa (Ricordatevi sempre di fare un backup del file prima di modificarlo).

            
            

RewriteEngine On RewriteCond %{REQUEST_METHOD} POST RewriteCond %{REQUEST_URI} .wp-comments-post\.php* RewriteCond %{HTTP_REFERER} !.*yourdomain.com.* [OR] RewriteCond %{HTTP_USER_AGENT} ^$ RewriteRule (.*) http://%{REMOTE_ADDR}/$ [R=301,L]

Questo codice verrà attivato quando la funzione POST è richiamata, e indirizza il commento di SPAM all’indirizzo IP che lo ha generato.

NOTA BENE: nella quarta linea dovrete modificare yourdomain.com con il nome del vostro dominio senza utilizzare www o qualsiasi altro prefisso.

Utilizzando queste semplici tecniche sono riusciti ad ottenere ottimi risultati passando da più di 27000 messaggi di spam, individuati da Askismet nel mese di giugno, a 4000 messaggi nel mese di luglio. Come potete vedere nella seguente immagine.

update-statistiche-askismet

Eliminare migliaia di commenti di SPAM

Un grande problema spesso collegato allo spam è la numerosa quantità di commenti da rimuovere, questi infatti oltre ad appesantire il database, occupano spazio inutile. La funzione “svuota spam” di WordPress non riesce a gestire una così grande mole di commenti perché richiede un’allevata quantità di memoria PHP che spesso su un server condiviso non è disponibile. Pertanto, qualora vi troviate in questa situazione dovete manualmente ripulire il database MySql di tutti i commenti indesiderati, per fare questo vi basta eseguire la seguente Query SQL.

DELETE FROM wp_comments
WHERE comment_approved = 'spam'
DELETE FROM wp_commentmeta
WHERE comment_id NOT IN (SELECT comment_id FROM wp_comments)

Sperando che il plugin Akismet migliorerà con il tempo la sua capacità di gestire lo SPAM, vi consiglio di utilizzare altre tecniche e di tenervi sempre aggiornati.

Altri articoli che potrebbero interessarti

wordpress updates
Disattivare aggiornamenti automatici in WordPress 3.7
sito per amministratori di condominio
Creare un sito per l’amministrazione condominiale
Come creare contenuti privati per utenti

Vincenzo Vecchio

Appassionato di tecnologia. Da molti anni mi occupo della realizzazione di siti web utilizzando i più comuni CMS. In particolare WordPress e Joomla. Di recente mi sono anche avvicinato al modo Apple e a tutti i suoi prodotti.

Seguimi su : FacebookGoogle+Twitter

Lascia un commento Annulla risposta

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.

Articoli Recenti

  • Come creare contenuti privati per utenti
  • Come disabilitare la GPU AMD Radeon su MacBook Pro
  • Come creare area riservata WordPress senza plugins
  • GDPR e WordPress la guida definitiva per il tuo sito
  • Come ottimizzare i CSS per avere 100/100 su Google PageSpeed
  • Integrare Gravity Forms con MyCred

Commenti Recenti

  • Vincenzo su Area riservata su WordPress con WP Customer Area
  • Franco P. su Area riservata su WordPress con WP Customer Area
  • Vincenzo su Area riservata su WordPress con WP Customer Area
  • Fabio su Area riservata su WordPress con WP Customer Area

Archivi

  • Febbraio 2020 (1)
  • Dicembre 2019 (1)
  • Agosto 2018 (1)
  • Aprile 2018 (1)
  • Marzo 2018 (1)

© 2025 · Cookie Policy · Privacy Policy