最近米扑博客开放了投稿功能,这个功能要求投稿者先注册,因此当然要开放注册权限。

但是问题来了,总是有一小撮坏人,利用机器人注册,每天都有几十封注册通知邮件,为了消除机器人注册,米扑博客果断采用 SI CAPTCHA Anti-Spam 验证码插件,需要使用的可以在wordpress后台插件安装中搜索该名字即可。

SI CAPTCHA Anti-Spam 是一个 WordPress 插件,它会在评论留言表单,注册表单,登录表单添加一个CAPTCHA 验证码,用来防止垃圾留言或者恶意注册。

安装并启用SI CAPTCHA Anti-Spam后,默认设置如下:

registered-wordpress-captcha-plugin-01

 

启用验证在登录页面: 是否在登录窗口显示验证码。

启用验证当用户注册时: 是否在注册窗口显示验证码(我就是启用这项防止机器人注册,建议勾选)。

CAPTCHA on the lost password form: 是否在找回密码页面显示验证码。

启用验证在评论页面: 是否在评论窗口显示验证码(如果要在留言表单出现时 CAPTCHA 验证码,那么在主题的的 comments.php 文件中含有 <?php do_action('comment_form', $post->ID); ?>,大部分主题都会有的,这个 hook 最好的位置是留言框的上方。)

隐藏验证当已注册用户为: 对一定权限已注册用户隐藏验证。

Change the display order of the CAPTCHA input field on the comment form:有时验证码出现在提交按钮后,勾选以交换位置。

Enable smaller size CAPTCHA image:采用更小的验证码图片。

Enable PHP sessions:如果验证码有错误,启用此项,需要服务器支持,不建议勾选。

Enable honeypot spambot trap:通过隐藏空字段防止机器人,不要勾选除非你有垃圾邮件问题。

启用aria-required对于阅读者:aria-required是一种输入WAI ARIA标记.屏幕阅读者可以使用它来确定哪些字段是必需的,启用这个选项是友好的,但是会造成W3C验证失败(没有属性"aria-required"). WAI ARIA attributes即将接受HTML验证,所以你可以放心地忽略引起的验证错误

另外 SI CAPTCHA 还可以让你设置 CAPTCHA div, CAPTCHA image, Audio image 和 Reresh image 的 CSS Styel。

 

错误: Unreadable CAPTCHA token file

原因分析:

根据错误提示,是“CAPTCHA token file”不可读导致,而CAPTCHA正是我安装的评论验证码插件SI CAPTCHA Anti-Spam。
所以问题出在SI CAPTCHA Anti-Spam插件上。

解决办法:

将SI CAPTCHA Anti-Spam插件的所有文件夹及文件权限设置为777权限:

1、如果是虚拟主机,可用FlashFXP等工具登录FTP。
然后找到wp-content/plugins下si-captcha-for-wordpress插件文件夹,
接下来把插件目录下captcha文件夹下的cache文件夹的权限为777。
如果不知道怎么做,也可以联系你的虚拟主机服务商帮助解决cache文件夹权限问题;

2、如果是独立主机或者VPS,可SSH登录后cd到WordPress插件目录(wp-content/plugins),通过下命令将插件权限放开:
# chmod -R 777 si-captcha-for-wordpress/captcha/cache
上面的方法亲测是可行的,但是因为对插件目录执行了777权限,有可能导致安全问题,请多加小心网站安全。

 

注册页面验证码示例:

registered-wordpress-captcha-plugin-02

 

找回密码验证码示例:

registered-wordpress-captcha-plugin-03

 

验证示例

米扑博客: https://blog.mimvp.com

 

 

参考推荐

WordPress评论、注册、登录验证码插件

WordPress评论/注册/登录等添加算术验证码 Math Captcha

WordPress无需插件添加新用户注册页面验证码(极验验证)详细教程