グラフの文字化け
以下のような環境でグラフの表示を行うと文字化けしてしまいます。
CentOS6.5 64bit
Zabbix2.2.5
PHP5.5.15
Apache2.4.10
MySQL 5.6.19
一部ライブラリなどを除いてほぼ、ソースからインストールしています。
フォントを置き換えたりパスを変えたりとしてはみたのですが、どうも化けてしまいます。
ネット上で見かける□ではなく、□に×や意味不明な文字列になってしまいます。
CentOSインストール時はミニマムでインストールしているのですが、言語で日本語を選択しており、日本語の表示はされるので、フォントがないわけではなさそうです。
以下のファイルをzabbixで指定したり、コピーしておいてみたりしてみました。
/usr/share/fonts/ipa-pgothic/ipagp.ttf
これ以上どうしたらいいのかわからず、行き詰っております。
どうかご教授いただけますようお願いします。
TNK - 投稿数: 4740
Zabbixもソースからインストールされたのであれば、フォントの設定を変更
されましたか?
2.2.5なら、include/defines.inc.php内の、
ZBX_GRAPH_FONT_NAME
ZBX_FONT_NAME
の値を利用するフォント名のファイルの拡張子を削除したものに変更されました
か?
fontsディレクトリ以下に利用するTrueTypeフォントをコピーするかリンクを
作成されましたか?
あと、PHPをソースからインストールされたのであれば、TrueTypeフォントを
扱えるよう(FreeTypeを有効にするよう)configureされましたか?
インストール時のWebインターフェースのウィザードではチェックされないもの
もあったりするので、標準パッケージのconfigureの内容などともご自身の設定
を比較してみてください。
一応、マニュアルにも代表的なものはリストアップされているので確認してみて
ください。
https://www.zabbix.com/documentation/2.2/manual/installation/requirements
ご参考:CentOS 6でのphpのconfigure
http://tnk77.blogspot.jp/2012/02/centos-6phpconfigure.html
bond - 投稿数: 2
お忙しいなかご回答ありがとうございます。
>2.2.5なら、include/defines.inc.php内の、
>
> ZBX_GRAPH_FONT_NAME
> ZBX_FONT_NAME
>の値を利用するフォント名のファイルの拡張子を削除したものに変更されました
>か?
>fontsディレクトリ以下に利用するTrueTypeフォントをコピーするかリンクを
>作成されましたか?
このあたりはネット上に情報があり試してはいました。
よく調べればよかったのですが、過去の書き込みに同じ内容があったのですが見過ごしてしまいました。
http://www.zabbix.jp/node/1617
申し訳ありません。
ただ、zabbix側ばかりに気をとられphpやmysqlなどの文字コードの確認などの原因を切り分ける際の発想がでてきませんでした。
上記の件より、
文字コードの確認およびUTF-8への統一
PHPコンパイル時のオプション確認及び変更後リコンパイル
を行い問題が解決いたしました。
根本的な原因としては
リコンパイル前
--enable-gd-jis-conv
が付いていたので、これを除いて
新たに
--enable-xml --with-iconv
を追加してリコンパイルすることにより解決いたしました。
(--enable-gd-jis-convを除いただけで文字化けは直ったのですが、念のため追加しました。)
以下文字化けが直った際の configure オプション
./configure \
--enable-mbstring \
--enable-mbregex \
--enable-bcmath \
--enable-gd-native-ttf \
--enable-sockets \
--enable-xml \
--with-iconv \
--with-mcrypt \
--with-gd \
--with-gettext \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-mysql=/usr/local/mysql \
--with-mysqli=mysqlnd \
--with-freetype-dir=/usr/local \
--with-jpeg-dir=/usr/local \
--with-png-dir=/usr/local \
--with-zlib-dir=/usr/local \