Roundcube Webmail
2008.02.09 Saturday | どんぐりパパ

我が家では、自宅でのメールの読み書きは、Outlookなどの普通のメーラはつかっていません。
サーバにTranswareのWebメーラ「Active!Mail 2003」(5ユーザ無償版)を導入して、ブラウザ上でメールを読み書きしています。
奥様のpinkmamaも自宅サーバのActive!Mailのほか、gooメール、Gmailなどを使っていて、Webメールだけの環境です。
Active!Mailは、Outlookライクなインターフェイスに加え、簡単なスパムフィルタや携帯電話対応、フォルダ振り分けなど5ユーザー限定とはいえ家庭で使うのに十分な機能を持っています。
最近のWebメールは、FlashやAjaxを使ってWeb上でリッチクライアントを実現するのが流行りです。Active!MailもAjaxに対応した新バージョン「Active!Mail 6」がリリースされた際、期限付きの評価版を入手して使ってみましたが、無償ライセンスがなくなってしまったため継続的に使えず、画面構成もごちゃごちゃした感じになって、我が家での評判はいまひとつでした(以前の記事)。
実は以前、オープンソースのAjax Webメーラ「Roundcube Webmail」をテストしていたのですが(以前の記事)、画面表示やメールのエンコードで日本語に十分対応しておらず、まだまだ開発途上といった印象でした。
昨年10月に0.1-RC2がリリースされ、各国語に対応して安定してきた様子だったので、再度自宅サーバに導入してみました。
Roundcube Webmailは、PHPとMySQLが必要です。
・スクリプトのダウンロード
こちら
・展開
ダウンロードしたら展開して、Apacheのホームディレクトリ以下に配置。
・パーミッション変更
tempとlogsの2つをApacheから書き込み可能にします。
・MySQLの準備
Roundcube用のデータベースを作成します。
・MySQL上にテーブルを作成
・設定ファイルの修正
config/main.inc.phpの修正箇所
config/db.inc.phpの修正
program/steps/settings/func.incの修正
あとはRoundcube WebmailにアクセスすればOKです。
Active!Mailに比べて、シンプルな画面構成です。以前はフォルダ一覧とメール一覧の2ペイン構成の画面でしたが、現在は上記のとおり設定すればOutlookのようなプレビューペインを加えた3ペイン構成の画面にできるようになりました。
また、スパムや指定条件でのフォルダ振り分け機能もありませんが、フォルダへのメールの移動はDrag&Dropでできます。このあたりがAjaxらしいところです。(我が家ではspamはSpamassassinで事前に振り分けしています)
Ajaxは画面の動きをJavaScriptで実現していますので、PCの負荷が高いと動作が重たくなります。このあたりは3ペイン画面をHTMLフレームで構成しているActive!Mailのほうが動作が軽快なのですが、Roundcubeは処理待ちの最中は「読み込み中...」のメッセージをきちんと出すなど、ユーザーインターフェイスについてはそれなりに練られていて好印象です。
Roundcube開発プロジェクトでは、Roundcube (LIVE)Tlansratorを用意して、各国語対応のメッセージファイル(labels.incとmessages.inc)を自分で編集できるようになっています。
私も自分の好みに合わせて一部手直ししたメッセージファイルを使っています。
Roundcube Webmailに関する日本語情報のサイトはいくつかありますが、ELFさんの日本語化作業の成果はすでに本家プロジェクトに反映されているようなので、過去の日本語版を使う必要はないでしょう。
日本語サイト
ELFさんのよくきたwiki
Roundcube-ja Wiki
こちら
・展開
ダウンロードしたら展開して、Apacheのホームディレクトリ以下に配置。
# tar xzvf roundcubemail-0.1-rc2.tar.gz
# mv roundcubemail-0.1-rc2 roundcubemail
# mv roundcubemail /var/www/html
・パーミッション変更
tempとlogsの2つをApacheから書き込み可能にします。
# chown apache:apache temp logs
# chmod 757 temp logs
・MySQLの準備
Roundcube用のデータベースを作成します。
# mysql -u root -p
mysql> CREATE DATABASE roundcube DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
mysql> GRANT ALL PRIVILEGES ON roundcube.* TO roundcube@localhost IDENTIFIED BY 'password';
mysql> quit
・MySQL上にテーブルを作成
# mysql -u roundcube -p roundcube < SQL/mysql5.initial.sql
・設定ファイルの修正
config/main.inc.phpの修正箇所
//IMAPサーバの指定
$rcmail_config['default_host'] = '127.0.0.1';
//SMTPサーバの指定
$rcmail_config['smtp_server'] = '127.0.0.1';
//使用言語の指定
$rcmail_config['locale_string'] = 'ja';
//日付の表示形式のデフォルトが日.月.年 時:分なので、年.月.日 時:分に変更
$rcmail_config['date_long'] = 'Y.m.d H:i';
//我が家ではspamメール用フォルダが'Junk'ではなく'JunkMail'なので、そのように変更
$rcmail_config['junk_mbox'] = 'JunkMail';
$rcmail_config['default_imap_folders'] = array('INBOX', 'Drafts', 'Sent', 'JunkMail', 'Trash');
//HTMLメールの作成を許可
$rcmail_config['enable_htmleditor'] = TRUE;
//プレビューペインを使用
$rcmail_config['dont_override'] = array( 'preview_pane' );
$rcmail_config['preview_pane'] = TRUE;
config/db.inc.phpの修正
//MySQLの接続先DBとID,PWの設定
$rcmail_config['db_dsnw'] = 'mysql://roundcube:*********@localhost/roundcube';
program/steps/settings/func.incの修正
//プレビューペイン使用のチェックボックスの表示
$no_override = !empty($CONFIG['dont_override']) ? array_flip((array)$CONFIG['dont_override']) : array();
あとはRoundcube WebmailにアクセスすればOKです。
Active!Mailに比べて、シンプルな画面構成です。以前はフォルダ一覧とメール一覧の2ペイン構成の画面でしたが、現在は上記のとおり設定すればOutlookのようなプレビューペインを加えた3ペイン構成の画面にできるようになりました。
また、スパムや指定条件でのフォルダ振り分け機能もありませんが、フォルダへのメールの移動はDrag&Dropでできます。このあたりがAjaxらしいところです。(我が家ではspamはSpamassassinで事前に振り分けしています)
Ajaxは画面の動きをJavaScriptで実現していますので、PCの負荷が高いと動作が重たくなります。このあたりは3ペイン画面をHTMLフレームで構成しているActive!Mailのほうが動作が軽快なのですが、Roundcubeは処理待ちの最中は「読み込み中...」のメッセージをきちんと出すなど、ユーザーインターフェイスについてはそれなりに練られていて好印象です。
Roundcube開発プロジェクトでは、Roundcube (LIVE)Tlansratorを用意して、各国語対応のメッセージファイル(labels.incとmessages.inc)を自分で編集できるようになっています。
私も自分の好みに合わせて一部手直ししたメッセージファイルを使っています。
Roundcube Webmailに関する日本語情報のサイトはいくつかありますが、ELFさんの日本語化作業の成果はすでに本家プロジェクトに反映されているようなので、過去の日本語版を使う必要はないでしょう。
日本語サイト
ELFさんのよくきたwiki
Roundcube-ja Wiki
Comments
Comment Form