问题描述
Zabbix 前端页面默认使用 DejaVuSans 字体,该字体对中文字符支持不完善,导致在图表、监控项名称等位置显示中文时出现乱码(通常显示为方块或问号)。
解决方案
将 Zabbix 默认字体替换为支持中文的字体(如宋体、微软雅黑等)。
解决步骤
1. 定位字体目录
# 进入 Zabbix 字体目录
cd /app/code/zbx/assets/fonts/
# 或根据实际安装路径调整
cd /usr/share/zabbix/assets/fonts/2. 备份原字体
# 备份默认字体
mv DejaVuSans.ttf DejaVuSans.ttf.bak3. 获取中文字体
方式一:从 Windows 系统复制
Windows 字体目录:C:\Windows\Fonts
常用中文字体文件:
| 字体名称 | 文件名 |
|---|---|
| 宋体 | simsun.ttc |
| 微软雅黑 | msyh.ttc |
| 黑体 | simhei.ttf |
方式二:从 Linux 系统安装
# 安装文泉驿字体
yum install -y wqy-zenhei-fonts
# 或安装其他中文字体
yum install -y wqy-microhei-fonts4. 上传并替换字体
# 上传中文字体到服务器
# 例如上传 SIMSUN.TTC(宋体)
# 重命名为 Zabbix 默认字体名
mv SIMSUN.TTC DejaVuSans.ttf
# 或创建软链接
ln -s /usr/share/fonts/wqy-zenhei/wqy-zenhei.ttc DejaVuSans.ttf5. 设置权限
# 确保字体文件可读
chmod 644 DejaVuSans.ttf
# 设置正确属主
chown zabbix:zabbix DejaVuSans.ttf6. 验证效果
- 刷新 Zabbix Web 页面
- 查看图表中的中文显示是否正常
- 检查监控项名称、触发器名称等位置
一键解决脚本
#!/bin/bash
# Zabbix 中文乱码解决脚本
ZABBIX_FONT_PATH="/app/code/zbx/assets/fonts"
FONT_URL="https://example.com/fonts/simsun.ttc" # 替换为实际字体下载地址
cd $ZABBIX_FONT_PATH || exit 1
# 备份原字体
if [ -f "DejaVuSans.ttf" ]; then
mv DejaVuSans.ttf DejaVuSans.ttf.bak.$(date +%Y%m%d)
fi
# 下载中文字体(如果没有本地字体)
if [ ! -f "simsun.ttc" ]; then
wget -O simsun.ttc "$FONT_URL"
fi
# 创建软链接
ln -sf simsun.ttc DejaVuSans.ttf
# 设置权限
chmod 644 DejaVuSans.ttf
echo "字体替换完成,请刷新 Zabbix 页面查看效果"其他解决方案
方案二:修改 Zabbix 配置文件
编辑 include/defines.inc.php:
# 原配置
define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans');
# 修改为新字体名(不需要扩展名)
define('ZBX_GRAPH_FONT_NAME', 'simsun');方案三:使用 Docker 部署时的处理
# Dockerfile 中添加
COPY simsun.ttc /usr/share/zabbix/assets/fonts/
RUN cd /usr/share/zabbix/assets/fonts/ && \
mv DejaVuSans.ttf DejaVuSans.ttf.bak && \
ln -s simsun.ttc DejaVuSans.ttf常见问题
1. 替换后仍然乱码
- 清除浏览器缓存
- 检查字体文件是否完整
- 确认字体文件权限正确
- 重启 Web 服务器
2. 图表中部分中文显示异常
- 某些特殊字符可能不被支持,尝试更换其他字体
- 检查字体文件是否包含所需字符集
3. 字体文件过大
- 可以使用字体裁剪工具只保留需要的字符
- 推荐工具:
font-spider、pyftsubset
推荐字体
| 字体 | 特点 | 适用场景 |
|---|---|---|
| 宋体 (SimSun) | 传统衬线字体,兼容性好 | 正式文档、报表 |
| 微软雅黑 (Microsoft YaHei) | 现代无衬线字体,屏幕显示效果好 | 监控大屏、仪表盘 |
| 文泉驿正黑 | 开源字体,Linux 系统自带 | Linux 服务器环境 |
| 思源黑体 | Adobe 开源字体,多语言支持好 | 国际化环境 |