Clamping down on comment spammers

by john on September 29, 2003

As I’ve written about before comment spamming is becoming a serious problem. After getting almost a dozen of them today I realized a couple of things:

# Movable Type needs a power editing mode for comments (already has one for entries).
# Time to automate removal of spam comments.

Coincidently I had recently been asked by Jay Allen for my opinion on his solution for addressing comment spam. In Killing Comment Spam Dead and Killing Comment Spam for Dummies Jay outlines a very inventive approach for resolving this problem – maintaining a blacklist of urls and modifying the Movable Type templates to filter out comments that reference a banned url. Comment still actually gets entered, but nobody would know but me.

Jay’s instructions are easy to follow and I was up and running within 30 minutes or so. I did have a problem initially until I realized that the MTIfNotMatches tag needs to be all on one line. Once I got that cleaned up it worked like a charm. Ran through each of Jay’s test cases and passed with flying colors. Additionally I went ahead and applied the code toward trackbacks as well, knowing full well that sort of spam is coming too.

I still think a central server to manage known spammer URLs is needed but in the meanwhile I’m happy to modify my blacklist as I read about spammers or see them on my site. The winner in the blog software race will be the company who best automates the problem of online spam.

Bring on the spam, spammers!

{ 2 comments }

David September 30, 2003 at 5:39 am

Now that is a very inventive approach, I am just sad that it has to come to this. My traffic is minor so I have not had any comment spamming yet.

So the race between spammers and bloggers is on. In my worst nightmare I see bloggers applying same spam content filtering (Bayesian filters, keywords, etc) as we are forced for our precious emails.

reinhard October 5, 2003 at 3:18 am

you can use something like http://ownDomain/redirect.php?input=http://www.x.y
in your template
and
in the script something like
header(“location: $eingabe”);

so they will not get PR from the link

{ 1 trackback }

Previous post:

Next post: