我已经按照例子中所示,实现了我的reCAPTCHA。
我把这个脚本放在head
标签中。
<script src="https://www.google.com/recaptcha/api.js"></script>
在我的HTML中的form
中,我有。
<div class="g-recaptcha" data-sitekey="my public sitekey here"></div>
但当我加载表格
时,我得到这个错误。
ERROR: Invalid domain for site key
我已经确认这是我的域名的正确密钥。
该代码目前在一个子域中,所以我想也许这就是问题所在,所以我也将该子域添加到谷歌reCAPTCHA管理中,但仍然得到错误。
完全相同的代码在不同的域中100%地工作(有一个特定于该域的密钥)。
这可能是什么问题?
不需要创建一个新的密钥,只需在浏览器上清除网站数据即可。
如果你改变了你的网站域名,那么就把这个域名添加到现有的密钥中(不需要创建新的密钥),并保存它。
https://www.google.com/recaptcha/admin#list
但是google recapture在浏览器上有一些数据。清除它们,然后它将与你的新域名一起工作。 ![在此输入图片描述][1] 。
我有同样的问题,我解决了。 我去了https://www.google.com/recaptcha/admin,点击了域名,然后去了底部的关键设置。
我在那里禁用了下面的选项 域名验证 验证reCAPTCHA解决方案的来源。
点击保存,验证码开始工作。
我认为这与服务器的设置方式有关。我在一个共享主机上,刚刚在没有通知的情况下从Liquidweb转到Deluxehosting(因为前者把他们的共享主机卖给了后者),一直有这样的问题,有很多问题。这里认为谷歌正在检查服务器,但它识别为共享服务器名称,而不是我的域名。 当我取消检查 "验证来源 "时,它开始工作。 希望这有助于暂时解决这个问题。
我尝试了将近4个小时,最后在这里的指导下终于弄明白了,我想我应该和你分享我的解决方案。
好吧,我的域名是一个附加域名。我也得到了 "网站所有者的错误:网站密钥的无效域",我已经检查了所有的东西都是正确的,对我来说是正确的,直到我想到它是一个桌面快捷方式。
解决方案:
因此,对于一个附加域,要确保父域也在域的列表中,即。 [Addon DOMAIN].[PARENT DOMAIN].com 。 附加组件的位置将是你在主机上设置的文件夹,所以当使用附加组件域名时,要确保用合理的东西来命名根目录。
希望这能帮助其他人,并感谢大家的建议。