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

相关推荐
SRETalk11 天前
Zabbix、Prometheus、Grafana、Nightingale,四个监控如何选型?
zabbix·grafana·prometheus·nightingale
荣--12 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
qq_3494479520 天前
Zabbix自助发现监控机器配置
zabbix
江南风月22 天前
WGCLOUD保姆级教程最新版整理
运维·zabbix·运维开发·prometheus·日志审计
ElevenS_it18822 天前
Nginx日志监控告警实战:access_log解析+5xx突增+慢请求+异常IP自动告警完整方案(Filebeat+Zabbix)
运维·网络·tcp/ip·nginx·zabbix
IT WorryFree22 天前
Zabbix 7.4 API 可同步全量参数清单(同步第三方系统专用)
java·开发语言·zabbix
江南风月22 天前
Hermes Agent 接入WGCLOUD实战:打造团队 AI 智能运维解决方案
运维·zabbix·运维开发·prometheus
IT WorryFree23 天前
Zabbix7.4 + Grafana 天蝎(Zabbix 官方插件数据源)完整配置 + 解决 412 报错
zabbix·grafana
骑上单车去旅行23 天前
openEuler 22.03 离线源码编译 Zabbix 7.0.27 完整最终整合手册
linux·运维·服务器·zabbix