今日,本司zabbix 不知被谁作了什么鬼操做,页面中文字体所有乱码,在此为凶手送上一句**P。php
首先,找领导把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中找到web
将选好的字体包放到/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页面,看爽了吧!