zabbix修改主机名为中文名

我这边zabbix版本有2.4和3的都有。

要让zabbix主机名支持中文,,需要修改zabbix的php代码文件,如下图修改完中文主机名是不支持的:

 

 

实现步骤:

进到zabbix web目录,一般在/var/www/zabbix或者/usr/share/zabbix下

一、

修改/usr/share/zabbix/include/defines.inc.php文件中修改,我的在788行(zabbix-2.4.8),加入中文字符支持,原始正则:

define('ZBX_PREG_INTERNAL_NAMES', '([0-9a-zA-Z_\. \-]+)');

 

 修改为:

// \x80-\xff:匹配用GBK (GB2312/GB18030)编码的所有汉字和标点符号

define('ZBX_PREG_INTERNAL_NAMES', '([0-9a-zA-Z_\. \-\x{80}-\x{ff}]+)');

 

修改后,主机名和监控项名都可以输入中文了。

 

二、让触发器表达式也支持中文(我测试了 我的zabbix是2.4.8和3都没有这个参数,加了也没用):这一步没有成功,没有这个参数,加了也没用,会的可以告知下。下面的内容是网上复制过来的没改,我的版本没有这个参数。

在$ZABBIX_PATH/include/classes/parsers/CTriggerExpression.php文件中修改808行(zabbix-2.2.3),使触发器表达式支持中文:

 private function isHostChar($c) {
                $cc=ord($c);
                if (($c >= 'a' && $c <= 'z') || ($c >= 'A' && $c <= 'Z') || ($c >= '0' && $c <= '9')
                                || $c == '.' || $c == ' ' || $c == '_' || $c == '-' || $cc > 127) {
                        return true;
                }

                return false;
        }

  

转载于:https://www.cnblogs.com/lp19910807/p/10566036.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值