020-zabbix修改主机名为中文名

浅浅的花香味﹌ 2023-10-10 10:27 130阅读 0赞

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

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

704548-20190320164801764-753148799.png

实现步骤:

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

一、

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

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

704548-20190320170351908-243099906.png

修改为:

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

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

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

二、让触发器表达式也支持中文(我测试了 我的zabbix是4.2):

在$ZABBIX_PATH/include/classes/parsers/CTriggerExpression.php文件中天加,使触发器表达式支持中文:










1


2


3


4


5


6


7


8


9



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/xuefy/p/11437184.html

发表评论

表情:
评论列表 (有 0 条评论,130人围观)

还没有评论,来说两句吧...

相关阅读

    相关 centos修改主机

    1、hosts文件: 存放在  /etc/hosts下,用来配置主机名和ip的对应关系;Linux系统中按照如下的顺序来解析域名/主机名:dns缓存> hosts文件> dn