今日,本司zabbix 不知被谁做了什么鬼操作,页面中文字体全部乱码,在此为凶手送上一句**P。
首先,找领导把zabbix权限要过来,登陆后找一下fonts文件在哪(环境不一样,存放位置不同)
[root@zabbix ~]# find / -name fonts
/root/zabbix-2.2.11/frontends/php/fonts
/usr/share/fonts
/usr/include/X11/fonts
/var/www/zabbix/fonts
/etc/fonts
根据找到的结果去查看/var/www/zabbix/fonts目录下面的字体包
[root@zabbix ~]# cd /var/www/zabbix/fonts/
[root@zabbix fonts]# ls
DejaVuSans.ttf
通过上面发现zabbix显示字体的目录下面没有中文字体,那可以去网页上下载想要的字体文件或者直接在windows中找到
将选好的字体包放到/var/www/zabbix/fonts目录下
[root@zabbix ~]# cd /var/www/zabbix/fonts/
[root@zabbix fonts]# ls
DejaVuSans.ttf simfang.ttf
然后刷新zabbix 的web页面检查一下是否还有乱码。
还有乱码的话,检查一下defines.inc.php文件中的配置:
[root@zabbix fonts]# find / -name defines.inc.php
/root/zabbix-2.2.11/frontends/php/include/defines.inc.php
/var/www/zabbix/include/defines.inc.php
/home/otvcloud/zabbix-2.2.1/frontends/php/include/defines.inc.php
[root@zabbix fonts]# cat /var/www/zabbix/include/defines.inc.php |grep FONT
define('ZBX_FONTPATH', realpath('fonts')); // where to search for font (GD > 2.0.18)
define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans'); // font file name
define('ZBX_FONT_NAME', 'DejaVuSans');
define('ZBX_PREG_DEF_FONT_STRING', '/^[0-9\.:% ]+$/');
通过过滤出来的第二行内容可知,字体的配置为DejaVuSans(关于DejaVuSans可查看上文中附件图片)。
改defines.inc.php文件中的字体配置为自己想要显示的字体
[root@zabbix fonts]# vi /var/www/zabbix/include/defines.inc.php
末行模式执行
%s/DejaVuSans/simfang/g
刷新zabbix的web页面,看爽了吧!