真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何解決zabbix監(jiān)控因php導(dǎo)致圖形界面中文亂碼問題

小編給大家分享一下如何解決zabbix監(jiān)控因php導(dǎo)致圖形界面中文亂碼問題,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

為劍河等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及劍河網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、劍河網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!

解決因編譯php中添加了-enable-gd-jis-conv選項(xiàng)導(dǎo)致Zabbix監(jiān)控系統(tǒng)圖形界面中文亂碼問題

現(xiàn)象:

如何解決zabbix監(jiān)控因php導(dǎo)致圖形界面中文亂碼問題

php編譯參數(shù):

如何解決zabbix監(jiān)控因php導(dǎo)致圖形界面中文亂碼問題

說明:

如果PHP編譯時(shí)啟用–enable-gd-jis-conv選項(xiàng)的話,那么非ASCII字符(例如漢字、拼音、希臘文和箭頭) 會被當(dāng)成EUC-JP編碼 (phpinfo中美其名曰“支持JIS編碼的字體”), 從而導(dǎo)致亂碼(由于西文字體沒有假名或漢字,一般表現(xiàn)為全部是方框)。imagettftext()函數(shù)是將字符寫入到圖片的函數(shù),這個(gè)問題就是由這個(gè)函數(shù)導(dǎo)致的。

在網(wǎng)上查了好幾篇教程不全,以下為本人生產(chǎn)實(shí)踐操作,在zabbix3.2版本,php7.2版本

方法一:

重新編譯安裝php,禁用-enable-gd-jis-conv選項(xiàng),這種方式代價(jià)較大;

方法二:

因生產(chǎn)環(huán)境php使用年限比較久,不知道是否有應(yīng)用在使用,不敢輕易重新編譯,故按照方法二解決

第一步:

/etc/nginx/html/zabbix/include中修改graphs.inc.php文件(先備份)

cp graphs.inc.php graphs.inc.php.bak

vim graphs.inc.php #在末尾添加如下代碼

function to_entities($string){
 $len = strlen($string);
 $buf = "";
 for($i = 0; $i < $len; $i++){
  if (ord($string[$i]) <= 127){
   $buf .= $string[$i];
  } else if (ord ($string[$i]) <192){
   //unexpected 2nd, 3rd or 4th byte
   $buf .= "?";
  } else if (ord ($string[$i]) <224){
   //first byte of 2-byte seq
   $buf .= sprintf("&#%d;",
    ((ord($string[$i + 0]) & 31) << 6) +
    (ord($string[$i + 1]) & 63)
   );
   $i += 1;
  } else if (ord ($string[$i]) <240){
   //first byte of 3-byte seq
   $buf .= sprintf("&#%d;",
    ((ord($string[$i + 0]) & 15) << 12) +
    ((ord($string[$i + 1]) & 63) << 6) +
    (ord($string[$i + 2]) & 63)
   );
   $i += 2;
  } else {
   //first byte of 4-byte seq
   $buf .= sprintf("&#%d;",
    ((ord($string[$i + 0]) & 7) << 18) +
    ((ord($string[$i + 1]) & 63) << 12) +
    ((ord($string[$i + 2]) & 63) << 6) +
    (ord($string[$i + 3]) & 63)
   );
   $i += 3;
  }
 }
 return $buf;
}

第二步:

找到該文件中imagettftext()函數(shù)(一共三處)

將最后一個(gè)參數(shù)$string修改為to_entities($string),三處都需要修改,無需重啟,刷新即可解決問題。

如何解決zabbix監(jiān)控因php導(dǎo)致圖形界面中文亂碼問題

如何解決zabbix監(jiān)控因php導(dǎo)致圖形界面中文亂碼問題

以上是“如何解決zabbix監(jiān)控因php導(dǎo)致圖形界面中文亂碼問題”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


文章名稱:如何解決zabbix監(jiān)控因php導(dǎo)致圖形界面中文亂碼問題
轉(zhuǎn)載注明:http://weahome.cn/article/pcdhdp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部