Daily Archives: 2011年7月10日

virtualminでsquirrelmail1.4.21インストール

サイト管理でvirtualminを使っているが、バージョンアップを重ねているうちにいつのバージョンからか、install scriptsサービスが追加されていることに気付いた。(現在のバージョンはvirtualmin3.86)

この中でsquirrelmail1.4.21(現段階では最新バージョン)がワンクリックでpublic_html下にインストールできるようになった。加えて、設定ファイルやユーザー、アドレス帳をDB(mysql)で管理することもでき、すこぶる便利になった。

ただ、標準でen_USロケールしかインストールされないため、メニュー等を日本語で利用するにはja_JPロケールを別途インストールする必要がある。

そのファイルは、http://squirrelmail.org/download.phpから

all_locales-1.4.18-20090526.zip

をダウンロードして、解凍後にhelpとlocaleフォルダにそれぞれja_JPを放り込んでおくだけでよい。ロケールファイルのバージョンは違うが特に問題はなかった。

あとは、squirrelmailを起動させ、オプションでjapaneseに設定を変えリフレッシュするだけで日本語モードに切り替わる。

ただ、これだけでは添付ファイルのアップロード、ダウンロード時に文字化けが発生する。
そこで、
squirrelmail/functions/i18n.php
を以下のとおり変更したところ文字化けが解消された。
————-
682行目以降の内容を変更
変更前:
case ‘downloadfilename’:
$useragent = func_get_arg(2);
if (strstr($useragent, ‘Windows’) !== false ||
strstr($useragent, ‘Mac_’) !== false) {
$ret = mb_convert_encoding($ret, ‘SJIS’, ‘AUTO’);
} else {
$ret = mb_convert_encoding($ret, ‘EUC-JP’, ‘AUTO’);
}
break;

変更後:
case ‘downloadfilename’:
$useragent = func_get_arg(2);
if (strstr($useragent, ‘Windows’) !== false ||
strstr($useragent, ‘Mac_’) !== false) {
$ret = mb_convert_encoding($ret, ‘UTF-8’, ‘AUTO’);
} else {
$ret = mb_convert_encoding($ret, ‘EUC-JP’, ‘AUTO’);
}
break;
——–

なお、squirrelmailスクリプトはpublic_html下にあるので、ファイルの受け渡しはftpで容易に可能である。

ps
従来からcentos5標準のsquirrelmail1.4.8-5をインストールし使っていたが、今回共存させても特に問題は発生していない。

10 7月 2011