我正在使用PHP开发一个网站,我想在其中一个会话中进行人工验证。对于开发,我最初在本地运行系统,当它准备好时,我将把它放在某个域中。

在reCAPTCHA网站上说插件只能在给定的域(和子域)上工作。

有没有办法在本地主机上使用reCAPTCHA插件?


当前回答

根据谷歌的reCAPTCHA文档

默认情况下不再支持本地主机域。如果你愿意 继续支持他们的发展,你可以将他们添加到列表中 您的站点密钥支持的域。转到管理控制台 更新受支持的域列表。我们建议使用单独的钥匙 用于开发和生产,并且不允许在您的 生产现场密钥

其他回答

请注意,从2016年起,reCAPTCHA不再支持本地主机。常见问题解答:

默认情况下不再支持本地主机域。如果你愿意 继续支持他们的发展,你可以将他们添加到列表中 您的站点密钥支持的域。转到管理控制台 更新受支持的域列表。我们建议使用单独的钥匙 用于开发和生产,并且不允许在您的 生产站点密钥。

只需将localhost添加到您的站点域名列表中,就可以了。

这可以帮助所有在本地主机上使用reCAPTCHA时遇到问题的用户。谷歌确实说“默认情况下,所有密钥都在'localhost'(或'127.0.0.1')上工作”,但实际上在localhost上使用reCAPTCHA可能会导致问题。在我的例子中,我使用安全令牌解决了这个问题。

我在这里发布了一个PHP的工作解决方案。

出于测试目的,如果您想在localhost上测试包含reCAPTCHA的web页面,则通过管理控制台2:https://www.google.com/recaptcha/admin将localhost添加到域列表中。*建议为localhost创建一个单独的站点密钥。

管理控制台截图

验证码输出

当您在谷歌reCAPTCHA中添加域时:

添加新域:

Localhost,不是Localhost

“L”是一个大写字母。

reCAPTCHA在localhost/上无效。

使用127.0.0.1/代替localhost/。