block ip adress (General)

by BillB, Friday, October 23, 2009, 19:56 (1309 days ago) @ anakin

I am not very knowledgable about phpSQLiteCMS, but i think it is a great CMS and would like to see an active user community grow around it. So I am responding.

Question 1: How do you know the IP address of the spammer ? Monitoring tools can be inaccurate, especially on a shared host with a heavy workload. It sounds likes you are blocking your own IP address.

The big problem with blocking a spambot's IP address is that they move around so much that tomorrow they can be using a different IP address. IP blocking only works in the short run for individual spambots, it's probably not a good long term solution.

I have been working on integrating reCaptcha ( http://recaptcha.net ) into phpSqliteCMS. ReCaptcha challenges all posts with a distorted graphic image of letters and numbers that they have to reproduce before they can post a comment. It's very difficult for spambots to bypass it, although human spammers can do it. The good news is that it's not worth the time of human spammers, it's almost all spambots.

Question 2: How good is your PHP programming ? Recaptcha has a PHP plugin ( http://recaptcha.net/plugins/php/ ) that should not be too difficult to implement.

It looks like the code in comments.inc.tpl in the admin directory would need to have a subform for the reCaptcha challenge. Then, it would access validating code that interacts with the recaptchalib.php plugin. You'll see the section for 'akismet_key'. That's near to the right place in the template for the reCaptch challenge.

The include file spam_protection.inc.php is probably the right place for the validating code and PHP include for the recaptchalib.php plugin.

My guess is that it would take about 1/2 a day to write and debug a reCaptcha feature ... depending on your PHP knowledge. This could be a great opportunity for you to learn more about PHP. :-|

There is an very simple CMS called gpEasy ( http://www.gpeasy.com/ ) that implements reCaptcha, it could provide a concrete example of how to implement in phpSQLiteCMS.

I've been planning to get around to this ( and a dozen other things ) for the last few weeks. If I can find time to do it, I'll post the code or a link to the code.

- Bill


Complete thread:

 RSS Feed of thread

powered by my little forum