在本地主机上使用reCAPTCHA

420

我正在使用PHP开发网站,想在其中一个会话中进行人类验证。在开发过程中,我最初在本地运行系统,当准备好之后,我将把它放在某个域名上。

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

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


1
如果事后添加了本地主机,请清除Cookie。 - Mike Flynn
26个回答

0

0

对我有效的方法是使用我的外部IP地址。

如果您不知道它是什么,只需在谷歌上搜索“我的IP地址”即可。

然后使用您的IP地址,并将其设置为验证码的域名,这样它就应该可以正常工作。


0
如果您正在使用Laravel,则应重新启动服务器并运行以下两个命令:
php artisan config:clear

php artisan cache:clear

-2

我在一个 Laravel 网站上遇到了与 reCAPTCHA 相关的错误。我通过使用一些命令和 env 文件解决了这个问题,之前的答案也会对此问题有所帮助。

首先,检查 env 文件(在您的情况下,即包含 Google reCAPTCHA 密钥的文件)中的 Google reCAPTCHA 密钥。

其次,运行以下命令:

  1. php artisan config:clear
  2. php artisan cache:clear
  3. composer dump-autoload
  4. php artisan view:clear
  5. php artisan route:clear

这将解决您的问题。


1
这不是关于reCaptcha问题、缓存问题,而是关于在开发环境(本地主机域)中使用它的问题。 - ROOT

-2

对我来说,删除我的实际配置并创建一个新的配置,像这样添加域名,它起作用:

enter image description here


1
这很危险。您不应该将本地地址和公共地址列入白名单。如果我访问您的网站,我可以轻松绕过您的验证码,因为我的计算机(以及任何计算机)都可以是127.0.0.1。如果您想知道谁会这样做,我在媒体行业工作,我可以告诉您,网络上有很多恶意机器人这样做。 - Jamie Marshall
当然可以,但我只是为了开发目的而这样做。在生产环境中,显然会进行更改。感谢您的建议! :) - Carlos Cruz
2
是的,但你在截图中列出了一个公共 IP。说真的,这是一个漏洞利用。如果你在某个地方托管集成或测试站点,请为其使用新的 reCAPTCHA 密钥。对于你的本地计算机,只使用 localhost 和 127.0.0.1。当我们谈论 reCAPTCHA 时,这不是最严重的漏洞,但它暗示了不够细心的安全实践。这只是一个人的观点。 - Jamie Marshall

-5

快速回答

Do get requests on Recaptcha in your backend rather than frontend

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接