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,保存后刷新页面即可。

相关推荐
蜀道山老天师2 天前
ZABBIX分布式监控Proxy应用实践
分布式·zabbix
Freed&2 天前
Zabbix TCP连接状态自定义监控完整部署手册
网络·tcp/ip·zabbix
蜀道山老天师3 天前
Zabbix监控Docker容器应用实践完整指南
linux·运维·docker·容器·zabbix
lsh曙光3 天前
Zabbix分布式监控
分布式·zabbix
江南风月3 天前
如何使用WGCLOUD实现智能运维
运维·zabbix·运维开发·prometheus
小张同学a.5 天前
zabbix企业级监控平台4——分布式监控与grafana数据可视化
linux·运维·数据库·分布式·信息可视化·zabbix·grafana
BerrySen1786 天前
一个 JDBC 参数引发的架构演进:Apache SeaTunnel 如何解决数据同步中的“定时 Flush”难题
运维·自动化·zabbix
lsh曙光6 天前
Zabbix服务监控
zabbix
小张同学a.8 天前
zabbix企业级监控平台3——服务监控与API实战
linux·运维·mysql·nginx·tomcat·zabbix
爱丶狸11 天前
Grafana_Zabbix_ImageRenderer_部署与前端操作手册
linux·前端·zabbix·grafana·kylin