どんぐりパパの雑記帳

2児とワンコ3匹ハム1匹の父親どんぐりパパが綴る日常のあれこれ
<< 705NKを持って約1年 | TOP | PHP4とPHP5の共存 >>

Roundcube Webmail

Roundcube

我が家では、自宅でのメールの読み書きは、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のホームディレクトリ以下に配置。
# 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
Server
comments (0) | trackbacks (1)

Comments

Comment Form









 

Trackbacks

Trackback URL :

フリーのajax webメール。Roundcube on FreeBSD
近頃はどこのプロバイダでも、webインタフェースを使ってメールの送受信ができるよ...
とーちゃんの成果展示室 | 2008/07/04 12:20 AM