zabbix图表(图形/监控图)中文显示为方框/方块的解决办法

Zabbix 图表(图形/监控图)中文显示为方框/方块,是因为 Zabbix 默认使用的字体不支持中文,PHP-GD 绘图时无法渲染中文字符。解决方法是给 Zabbix Web 换上一个带简体中文字库的字体。

下面以 RHEL/CentOS 系列 YUM 安装的 Zabbix 5.x/6.x/7.x​ 为例说明,Debian/Ubuntu 思路完全一致只是路径略有差异。

方法一:直接替换字体文件

1、从Windows系统中拷贝字体文件,方法如下:进入系统的如下目录 C:\Windows\Fonts,复制如楷体 simkai.ttf、微软雅黑 msyh.ttf​ 或 宋体 simsun.ttc,用 scp/WinSCP 传到 Zabbix 服务器。

bash 复制代码
字体文件的存储位置如下:" /usr/share/zabbix/assets/fonts "
较老版本的字体文件存储文件位置如下:" /usr/share/zabbix/fonts "

2、备份原先的字体文件 graphfont.ttf

将上传的字体文件重命名为 graphfont.ttf

  1. 重启服务并清缓存

重启 Web 服务

命令如下:

bash 复制代码
systemctl restart httpd 
 或 systemctl restart nginx 

4、然后浏览器强制刷新(Ctrl+F5),图表中文就能正常显示了。

方法二:修改 defines.inc.php

1、上传文件到字体文件的存储位置,注意所上传文件的尾缀如果是ttc,需要将尾缀改成ttf,否则可能失效

bash 复制代码
字体文件的存储位置如下:" /usr/share/zabbix/assets/fonts "
较老版本的字体文件存储文件位置如下:" /usr/share/zabbix/fonts "
编辑配置文件vim /usr/share/zabbix/include/defines.inc.php

把这两行中的 DejaVuSans或 graphfont改成你上传的字体文件名(不含 .ttf 后缀):

bash 复制代码
define('ZBX_GRAPH_FONT_NAME', 'simkai');   // 字体文件名 simkai.ttf → 填 simkai
define('ZBX_FONT_NAME',        'simkai');

确保 /usr/share/zabbix/fonts/simkai.ttf存在且权限 644,保存后刷新页面即可。

相关推荐
广目软件5 天前
HA分布式架构采集节点变更操作手册20261029
运维·服务器·ansible·zabbix·prometheus
honsor7 天前
机柜式双网口 RS485 温湿度变送器接入 Zabbix 完整教程(含 Modbus 点位)
物联网·zabbix·tcp
honsor9 天前
双网口 + RS485 机柜温湿度传感器,Modbus RTU/TCP 如何接入 Zabbix
网络协议·tcp/ip·zabbix
运维自动化&云计算13 天前
zabbix 7.4.15升级php8.5.12
zabbix
梅菲塔亚13 天前
Zabbix企业级监控系统搭建实战
zabbix
月落汀兰14 天前
服务器出问题没人告警?Zabbix6.0 LNMP 部署,MySQL 监控 + 邮件告警保姆级实战
运维·服务器·zabbix
王琦031817 天前
Zabbix部署
zabbix
王琦031818 天前
zabbix agent 部署与使用
zabbix
Lysander.Jovian18 天前
zabbix监控实战
zabbix
fengkai454519 天前
十三、Zabbix 监控
运维·服务器·zabbix·监控·网络设备