Has anyone tried anything like this?

My plan is to do something like this:

  • When a forum post is submitted, instead of immediately saving it to the database, send an e-mail to a reserved account.
  • The e-mail account is configured to use procmail and SpamAssassin to filter its mail
  • If the mail is flagged as spam, simply throw it away
  • If the mail is flagged as ham, post it back to the real submission URL, where it will be saved to the database for all users to see.

The reason I am considering SA rather than a dedicated forum spam filter is that I am familiar with it and pleased with its results. Some dedicated forum spam filters are clearly not as good (but feel free to mention a good one if you know it.)

Other than some features of SA not being applicable (which I can ignore) what problems am I likely to run into with this approach?


SpamAssassin is a spam filter for email. It is full of clever rules that look at email headers to see whether these are faked or contain clues for spammy senders.

Forum messages (even when emailed) don't behave like email. My guess is that SpamAssassin's performance in a setup like this will be worse than that of a decent forum spam filter.

| improve this answer | |
  • As I said not all functions will be useful, but some will. E.g. looking for the string "viagra" in the body of the message, auto-whitelisting of IPs, detecting attempts to use HTML tags to conceal part of the text (some bots don't check the target forum engine.) – finnw Jul 30 '09 at 10:23
  • What IPs? To SA, the IP will always look the same. It will be the IP of your webserver. – innaM Jul 30 '09 at 11:58
  • No, I would add the HTTP client IP address as a header. – finnw Jul 30 '09 at 13:27

Don't bother. Go with Akismet instead. This is what it was built for. Also, make your site require registration with a re-Captcha on the register page.

| improve this answer | |
  • Thanks for suggesting Akismet, but I really don't want to use a captcha. Lowering barriers to entry is a very high priority. – finnw Jul 30 '09 at 11:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.