I'm trying to manage spam entries into my websites' contact forms. Currently using the Drupal Captcha module for Drupal 6. http://drupal.org/project/captcha

Based on this report: http://3dg.me/web/drupal-caching-incompatible-with-captcha - I learned that page caching can interfere with the operation of the module. Is this still relevant? Does this apply to allow image captcha based modules?


Yes. The Captcha module is still incompatible with Drupal's caching. In fact once the captcha modules is enabled it gives you a nice warning on Drupal's performance settings page that says:

 The CAPTCHA module will disable the caching of pages that contain a CAPTCHA element. 

Most challenge/response modules like this will disable caching. Take a look at something like the honeypot module. It helps in deterring spam bots from completing forms on your Drupal site. It basically inserts a hidden form field to Drupal (or other) forms with a field name like 'homepage' (you can set it to whatever you want). End users don't see the field, so they don't fill it out. But spam bots (usually using prewritten scripts) do see the field (usually), and add something to it. The Honeypot module detects this and blocks the form submission if there's something in the field. It does this without disabling cache.

Note: The Honeypot provides two methods. The timestamp method does disable caching, so use the Honeypot method.


It depends on the challenge and the module version: If you are using the ReCaptcha module for providing the captcha you may use the current dev version which enables caching, see also issue Add support for cacheable captcha's (recaptcha).

enter image description here

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.