常年摸鱼,突然有了动力来搞事,于是就修改了评论系统ᕕ( ᐛ )ᕗ
2021-4-4 效果太差,改回去了,github太卡了
实现目的
改动目的是通过强制性的Github登录,从而减少使用虚假信息评论的出现(为什么是减少?因为这招只能防君子不防小人( ´_ゝ`)旦)
实现原理
通过Github的Oauth第三方登录服务获取授权,请求包括昵称(name)、邮箱(email)、博客地址(blog)在内的个人信息
在评论区点击登录后,会重定向至Github Oauth进行登录,登录之后会重定向回本站的redirect.php,然后返回文章页面的评论区,此时通过读取Oauth Token,向用户呈现已登录状态,并可进行评论
实现过程
本次共写入2个文件,改写1个文件
实现方式很简单,在Github申请个Oauth application,获取Client ID和 Client Secret
自己写一个login.php用于重定向至Github Oauth登录
登录后,会返回至写好的redirect.php,在这里将Oauth Token写入客户端Cookies,重定向回文章评论区
修改Wordpress主题中的comments.php,加入相关验证代码,通过Cookies中的Oauth Token请求Github api获取用户资料并自动填充相关value
这样就达到了实现目的(我相信看到这里,大家也应该看出来为什么这招防不住小人了( ´_ゝ`)旦,解决办法也不想了,因为要摸了)
别问我要示例,代码写的太差劲,连返回校验都没有,建议自己写一个( ´_ゝ`)
顺便记一个小插曲
我把wp-login.php改炸了,昨晚登不了,摸到了今天上午才解决,在这之前我一直面对着来自403页面的嘲讽( ´_ゝ`)
(什么是嘲讽,建议自己访问wp-login.php感受)
------------
这个算是跳过这个辣鸡验证机制的一个示例(