今日,本司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頁面,看爽了吧!