问题描述:本地测试系统运行环境为Windows操作系统,服务器系统为CentOS系统。注册功能中验证码在上线系统中出现乱码,需导入验证码相对应字体文件。
解决方式:
1、如服务器无字体库,需先添加字体库(通过fc-list命令查看)。
yum -y install fontconfig
命令执行成功后,在/usr/share目录下出现fonts、fontconfig目录。
2、添加字体文件
Windows系统中验证码字体格式为Arial格式,在控制面板 - 字体中找到Arial,复制文件放入arial文件夹中。通过Xftp将Arial文件夹放在/usr/share/fonts文件夹下。
3、修改arial目录权限
chmod -R 755 /usr/share/fonts/arial
4、安装执行ttmkfdir
安装:
yum -y install ttmkfdir
搜索目录中所有的字体信息,汇总生成fonts.scale文件:
ttmkfdir -e /usr/share/X11/fonts/encodings/encodings.dir
5、修改字体配置文件
打开/etc/fonts目录下字体配置文件:
vi /etc/fonts/fonts.conf
在Font directory list中添加arial字体文件路径:
<dir>/usr/local/share/fonts/arial</dir>
保存退出。
6、刷新字体缓存
刷新内存中字体缓存:
fc-cache
重新查询字体列表:
fc-list