ReCaptcha - Could not open socket

2019-06-28 04:21发布

问题:

Before I ask this question, let me mention I know there are several of the exact same questions on the site but I am afraid they can't help me out.

Hi,

Yesterday my ReCaptcha was working fine but now it's not. I am using the library provided by Google and using the proper code. I did not change any code since yesterday so it should still work. However, when I try to submit the form now the page returns Could not open socket.

Edit: I just checked and fsockopen is enabled on my server.

回答1:

I came into same issue, but all the alternative host names I googled already don't work. A very good advice that helped me was from Recaptcha google group

Use:

define("RECAPTCHA_VERIFY_SERVER", gethostbyname("www.google.com"))

Works just fine for me.



回答2:

Changed the following:

define("RECAPTCHA_VERIFY_SERVER", "www.google.com");

to

define("RECAPTCHA_VERIFY_SERVER", "74.125.227.48");

Now it works. This is to be edited in the captcha lib php file recaptchalib.php.



回答3:

Open your cmd and type: ping www.google.com The google server replay: Replay from xxx.xxx.xx.xxx ... take the ip

Edit your recaptchalib.php

At the line

define("RECAPTCHA_VERIFY_SERVER", "www.google.com");

replace the www.google.com with the google IP address

define("RECAPTCHA_VERIFY_SERVER", xxx.xxx.xxx.xxx);