What causes this problem?

You will see the Blocked loading mixed active content error when accessing your website over https (ssl) but calling Google's recaptcha using http (no ssl). Your browser is blocking the insecure content which is trying to load over http (no ssl).

Solution

The solution to this problem is to use SSL when calling the recaptcha_get_html function to create your recaptcha form.

If you look at around line 106 of recaptcha-php-1.11/recaptchalib.php, you'll see the function has an optional ssl parameter: