Reducir spam en WordPress usando .htaccess

¿Harto del spam y los spammer en tu blog? Aunque Akismet y otras soluciones antispam nos ayudan no siempre son suficiente, para eso puede usar el fichero .htaccess que te ayudará a reducir el volumen de los robots de spam que acceden de forma directa a tu fichero wp-comments-post.php para lanzar comentarios en tu blog.

Sencillamente tienes que añadir las siguientes líneas en tu .htacces. El fichero como sabes esta localizado en el raíz de tu WordPress. Recuerda realizar antes una copia de seguridad de tu .htaccess antes de editar por si necesitas restaurarla. Y por supuesto no te olvides de cambiar “nombrededominio” en la línea 5 por tu dominio real.

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

Una vez que guardes el fichero .htaccess editado los robots de spam no podrán acceder de forma directa a wp-comments-post.php. De esta forma se reducirá de forma significativa el volumen de spam en tu blog.

Y si además quieres complicarlo un poco más para los robots de spam también puedes bloquear directamente las llamadas de estos a través de .htaccess añadiendo algo así al fichero:

#Bloquear spambots
RewriteCond %{HTTP:User-Agent} (?:Alexibot|Art-Online|asterias|BackDoorbot|Black.Hole|BlackWidow|BlowFish|botALot|BuiltbotTough|Bullseye|BunnySlippers|Cegbfeieh|Cheesebot|CherryPicker|ChinaClaw|CopyRightCheck|cosmos|Crescent|Custo|DISCo|DittoSpyder|DownloadsDemon|\eCatch|EirGrabber|EmailCollector|EmailSiphon|EmailWolf|EroCrawler|ExpresssWebPictures|ExtractorPro|EyeNetIE|FlashGet|Foobot|FrontPage|GetRight|GetWeb!|Go-Ahead-Got-It|Go!Zilla|GrabNet|Grafula|Harvest|hloader|HMView|httplib|HTTrack|humanlinks|ImagesStripper|ImagesSucker|IndysLibrary|InfonaviRobot|InterGET|Internet\sNinja|Jennybot|JetCar|JOC\sWeb\sSpider|Kenjin.Spider|Keyword.Density|larbin|LeechFTP|Lexibot|libWeb/clsHTTP|LinkextractorPro|LinkScan/8.1a.Unix|LinkWalker|lwptrivial|Mass\sDownloader|Mata.Hari|Microsoft.URL|MIDown\stool|MIIxpc|Mister.PiX|Mister\sPiX|moget|Mozilla/3.Mozilla/2.01|Mozilla.*NEWT|Navroad|NearSite|NetAnts|NetMechanic|NetSpider|Net\sVampire|\NetZIP|NICErsPRO|NPbot|Octopus|Offline.Explorer|Offline\sExplorer|Offline\sNavigator|Openfind|Pagerabber|Papa\sFoto|pavuk|pcBrowser|Program\sShareware\s1|ProPowerbot/2.14|ProWebWalker|ProWebWalker|\psbot/0.1|QueryN.Metasearch|ReGet|RepoMonkey|RMA|SiteSnagger|SlySearch|SmartDownload|Spankbot|spanner|Superbot|SuperHTTP|Surfbot|suzuran|Szukacz/1.4|tAkeOut|Teleport|Teleport\sPro|Telesoft|The.Intraformant|TheNomad|TightTwatbot|Titan|toCrawl/UrlDispatcher|toCrawl/UrlDispatcher|True_Robot|turingos|Turnitinbot/1.5|URLy.Warning|VCI|VoidEYE|WebAuto|WebBandit|WebCopier|WebEMailExtrac.*|WebEnhancer|WebFetch|WebGo\sIS|Web.Image.Collector|Web\sImage\sCollector|WebLeacher|WebmasterWorldForumbot|WebReaper|WebSauger|Website\seXtractor|Website.Quester|Website\sQuester|Webster.Pro|WebStripper|Web\sSucker|WebWhacker|WebZip|Wget|Widow|[Ww]eb[Bb]andit|WWW-Collector-E|WWWOFFLE|Xaldon\sWebSpider|Xenu’s|Zeus) [NC]
RewriteRule .? – [F]

Gracias a las referencias de WPRecipes y Allguru.

  • Hola David,

    Muchas gracias por ayudarnos a combatir el spam.

    En la línea 5 que comentas, lo cambiamos por nuestro nombre de dominio pero sin la extensión o lo ponemos con la extensión?

    Por ejemplo:

    RewriteCond %{HTTP_REFERER} !.*midominio.* [OR]
    o
    RewriteCond %{HTTP_REFERER} !.*midominio.com.* [OR]

    Ya nos dices!

    Saludos