reCaptcha显示“输入错误:无效引用”

时间:2012-08-17 03:02:52

标签: php recaptcha

我已在recaptcha.net上使用mydomain.com注册了一个帐户。

当我在我的localhost上进行开发时,它工作正常,但每当我尝试从本地网络中的另一台计算机打开该页面时,它会显示"input error: invalid referer"错误消息!

我没有使用recaptcha插件。

4 个答案:

答案 0 :(得分:28)

reCaptcha密钥绑定到某个域+ localhost(当你从他们那里获得私钥/公钥时)。您可以通过请求新的私钥/公钥或使用全局密钥在其他域上使用它。

来自website

  
      
  • 默认情况下,您的reCAPTCHA密钥仅限于指定的域,以及任何子域以获得额外的安全性。 foo.com的密钥适用于test.foo.com。

  •   
  • 如果您希望在大量域中使用密钥(例如,如果您是托管服务提供商,OEM等),请选择全局密钥选项。您可能想使用描述性域名,例如“global-key.mycompany.com”

  •   
  • 如果您拥有多个域名(foocars.com和footrucks.com),则可以注册多个密钥,或使用全局密钥。

  •   

答案 1 :(得分:3)

Google似乎已删除了reCaptcha的全局密钥,因为您可以看到here

在您的localhost中,它可以正常工作,因为您使用的是提供给域的密钥。但是当您将代码上传到生产服务器时,似乎您使用相同的密钥到多个域(即使localhost可能不被视为域)。所以你得到了那个错误。我修复了为我的另一个域创建新密钥并将它们添加到我的localhost脚本。对于生产脚本,我保留了该域的密钥。

答案 2 :(得分:1)

我有同样的问题,我解决了从recaptcha admin screen添加我的服务器ip地址;

点击标题Your reCAPTCHA sites下列出的域名,然后在Key Settings -> Domain添加您的IP,以解决问题。

答案 3 :(得分:0)

正如安德烈之前提到的那样 - 全局密钥已被删除以用于reCaptcha。但您可以使用secure token您将找到my solution for PHP here