#Mastodon 最近后台收到不少垃圾注册申请,为避免 spam,给注册表单添加了一个验证码,可以有效阻止垃圾注册行为。有需要的请自行取用,我专门把代码整理到一个干净的分支上了,可以直接合并到官方的 master 分支上: feat: add captcha to registration form (#254)
可以用 git cherry-pick
合并这个 commit:
$ git remote add mashirozx https://github.com/mashirozx/mastodon.git
$ git fetch mashirozx
$ git cherry-pick fef2dd33eb4b97dd11b91a8771b007d925165042
合并后 .env.production
里面加上一条 CAPTCHA_ENABLED=true
。
验证码使用的是一个轻量的 rails gem rucaptcha,完全在本地生成验证码并完成验证,不调用任何第三方 API。
不选择 reCAPTCHA 和 hCAPTCHA 的原因:两者在国内的加载速度不理想,使用过程繁琐反人类;不选择极验的原因:免费使用次数有限制,且 SDK 不完善,官方示例的 config 甚至直接写在 controller 里面,告辞
Chinese 🇨🇳 / Dictatorial Admin / Mastodon Code Contributor / 摸鱼技术布道师
Steam: https://steamcommunity.com/id/MashiroBest
Epic: https://store.epicgames.com/en-US/u/d211c824cbd94aaeba898db6bb823ff7
原批交流群:966322309