反馈 Ruby China 站点,不搭梯子,recaptcha 无法显示,无法注册了

canonpd · 2019年04月27日 · 最后由 huacnlee 回复于 2019年05月06日 · 5586 次阅读

我注意到 ruby china 为了防止攻击,将注册验证码换成 recaptcha 了。 但用这个有严重的问题,不开 vpn,就完全无法使用。

考虑国内用户,是否还是老办法,rucaptcha + 限制 ip 得了? 另外我注意到了,homeland 中限制 ip 的代码。

Rails.cache.write(cache_key, sign_up_count + 1)

设置的缓存,是否应该加个有效期更好一些。避免 redis,存在大量无用数据

Rails.cache.write(cache_key, sign_up_count + 1, :expires_in => 1.days)

@huacnlee

如果用滑动验证码 效果咋样?

暂时用一段时间,等风头过了还原回去

缓存我记得本身有设置基本的有效期的,所以没每个地方加

想不通这破站流量这么小,居然也有人下血本。。。。

换成 https://recaptcha.net/ 这个域名就可以了。

https://sharecuts.cn/signup

我们这个国内的站就用的就是 recaptcha

能抢注本站帐号,的确是本站的荣幸,估计是未来人干的,估计当时一号难求。
但他这么抢注其实已经产生了一个平行宇宙,只能回到这个宇宙的未来,才能拥有这么多帐号,但还要面对另一个自己。
这的确有点得不偿失!

@huacnlee 我参照 homeland 的源码,在自己项目集成 reCAPTCHA,一直提示

Oops, we failed to validate your reCAPTCHA response. Please try again.

无论线上还是本地,key 申请了两次,都一样错误。

然后我调试了下 homeland,无论直接用 setting.rb 里默认的 key,还是我自己的 key,也都是报这个错误了。请问下,你碰到过这个问题吗?是我哪里没处理好吗?

找到问题了,只配置这个没用。

config.api_server_url = "https://recaptcha.net/recaptcha/api.js"

配置后,不挂 vpn 能显示验证图片和信息,但是无法通过验证。挂 vpn 后才能通过。 这就不好玩了,国内的服务器,访问不上谷歌

greatghoul 回复

感谢你分享的信息,我已顺利解决了。

@huacnlee 提交了 PR 了,麻烦通过,https://github.com/ruby-china/homeland/pull/1109

canonpd 回复

更新了,你再试试呢

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册