测试环境:Discuz! X3.2 + Ubuntu14.04
验证码是Discuz!防灌水机制的一部分,可设置在注册、登录、发帖等情况下启用验证码,以减少灌水行为或网络爬虫的恶意攻击。Discuz!中默认使用英文图片验证码,这种验证码已多有破解,而中文的破解难度相对大一些,因此使用中文验证码更为有效。本文简述如何在Discuz!中启用中文验证码。
首先,使用管理员用户登录管理中心,点击菜单【防灌水 ->验证设置】,在验证码设置一栏,将验证码类型设为“中文图片验证码”,然后点击提交。
i
图1 验证码设置
如果之前未设置中文字体,则会收到提示信息:验证码缺少显示所需的字体文件,请上传字体文件至 static/image/seccode/font/ch/ 目录。解决方法如下:
sudo apt-get install ttf-wqy-zenhei #1. 安装中文字体,此处安装的是文泉驿字体
cd /usr/share/fonts/truetype/wqy #2. 切换到字体目录
cp * /var/www/html/odoo/static/image/seccode/font/ch #3. 将字体拷贝至Discuz!对应的字体目录
这几条命令执行完毕后,中文验证码就生效了。这时登录,可以看到验证码已显示为中文。
图2 验证码显示