0、前言
众所周知,国内访问Google困难,然而ReCaptcha又是验证码的一个免费、可靠的选择。目前来说ReCaptcha V3可以把大部分机器人拒之门外。
国内有类似的ReCaptcha镜像站:
ReCaptcha.net
因此国内服务器也可以使用该镜像站作为源站,搭建镜像站。自建镜像站的意义在于,把ReCaptcha调用的资源(位于Google的服务器上)换成自己的CDN(比如腾讯云),这样就能做到加快加载速度。
1、PHP反向代理
参考本站文章:
使用开源 PHP 项目反向代理网站
https://blog.tsinbei.com/archives/886/
源站可以选择www.google.com
或者recaptcha.net
。
推荐进行如下配置:
替换
1 | www.google.cn/intl/zh-CN/policies/privacy/ www.google.cn/intl/zh-CN/policies/terms/ www.gstatic.cn |
为
1 | blog.tsinbei.com/privacy.html blog.tsinbei.com/agreement.html cdn.tsinbei.com/gstatic |
即你的隐私政策页面、用户协议页面、反向代理gstatic.com
的地址。
如果没有的话可以不设置。
2、跨域设置
我的CDN地址和ReCaptcha镜像站域名不一样,因此需要在CDN的反向代理配置文件中加入:
此处内容需要评论回复(自动审核)或加入 QQ 技术交流群(立即获得内容)后方可阅读。赞助(二维码在文章下方)后联系作者可一次性解锁所有(包括之后的新文章)。
就这几行,是我看了几天文档,用Chrome的DevTools一个一个调出来的,可以保证解决跨域问题。
3、后端设置
接入ReCaptcha的服务器,需要保证可以访问ReCaptcha,而recaptcha.net
部分地区貌似解析不正确,因此可以使用全国Ping工具,选一个能用的IP,加到/etc/host
中。
4、自定义Logo
如果CDN部分是像我一样,拉取到云存储,可以手动替换Logo:
/recaptcha/api2/logo_48.png
例如我替换为了我的博客Logo:
目前没有找到有效的方法把reCAPTCHA字样替换为自己的名称,因为可能会误伤资源访问地址。
搭建Google ReCaptcha镜像站
评论