« CentOS4.2でLAN内(社内)用サーバ構築の手順 | Kazuの挑戦日記TOP | FC3でPHP4をPHP5にアップデート »

dovecotでIMAPの日本語検索に対応させる

うちのサーバは現在メールサーバはFedoraCore3で、送信用にPostfix、受信用はdovecotを使用してpop3でもimapでも対応できるようにしているが、どうやらdovecotの場合imapで日本語検索が行えないらしい。
自分自身はimapを使用していなくてpop3なので、しかも日本語で本文検索とかあまりしないほうだったので気付かなかった。

自分で試してみたところ、以下のような問題があり。

  • メールタイトルの日本語検索:うまく検索できたりできなかったり
  • メール本文の日本語検索:全くできない
メールクライアントは
  • OutlookExpress
  • Thunderbird
  • SquirrelMail
などで試してみたところ、OutlookExpressではフォルダの日本語本文検索ができたので余計ややこしかったのだが、OutlookExpressはフォルダを分けてメールを振り分けた段階で、IMAPと言いつつ、ローカルに取り込まれるっぽい。だからうまく検索できたみたい。

で、仕方ないので調べたら、Courier-IMAPだと日本語検索もOKらしい。
Courier-IMAPというからIMAP限定かと思ったらPOPでもOKみたいだけど、どうせならdovecotのままで対策できるか調べてみたら、最新版(バージョン1.0以上)なら日本語検索もOKとの情報が。→参考URL:xoのブログさんの「脱UW-IMAP (Dovecotに移行中)」

但し、今出回っているパッケージでインストールできるバージョンは0.99までなので、ソースからコンパイルしないとならない。
うまく行くか不安を抱えつつも、これで試してダメだったらCourier-IMAPに変えればいいや、と思ってやってみることにした。

現在インストールしているdovecotのバージョンの確認

[root@linux ~]# rpm -qa | grep dovecot
dovecot-0.99.13-3.FC3  ※バージョンが0.99~なので日本語検索に対応していない

  ちなみに、yum -y install dovecot としてパッケージをインストールしたもの

dovecot-1.0.beta8の入手と展開

http://dovecot.org/ からwgetで入手する
[root@linux ~]# cd /usr/local
[root@linux local]# wget http://dovecot.org/releases/dovecot-1.0.beta8.tar.gz
--12:47:57--  http://dovecot.org/releases/dovecot-1.0.beta8.tar.gz
           => `dovecot-1.0.beta8.tar.gz'
dovecot.org をDNSに問いあわせています... 80.64.10.60
dovecot.org[80.64.10.60]:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 1,392,106 [application/x-tar]

100%[====================================>] 1,392,106    184.68K/s    ETA 00:00

12:48:07 (153.10 KB/s) - `dovecot-1.0.beta8.tar.gz' を保存しました [1392106/1392106]

[root@linux local]# ll dovecot-1.0.beta8.tar.gz 
-rw-r--r--  1 root root 1392106  5月 12 18:13 dovecot-1.0.beta8.tar.gz
[root@linux local]# 
[root@linux local]# tar zxvf dovecot-1.0.beta8.tar.gz 
dovecot-1.0.beta8/
dovecot-1.0.beta8/README
dovecot-1.0.beta8/configure.in
dovecot-1.0.beta8/aclocal.m4
dovecot-1.0.beta8/Makefile.am
dovecot-1.0.beta8/Makefile.in
(以下略)

インストール

まず、今動いているdovecotを停止する。
[root@linux ~]# service dovecot stop
Dovecot Imap を停止中:                                     [  OK  ]

[root@linux local]# rm -f dovecot-1.0.beta8.tar.gz 
[root@linux local]# cd dovecot-1.0.beta8/
[root@linux dovecot-1.0.beta8]# ./configure
[root@linux dovecot-1.0.beta8]# make  ←多少時間がかかる
[root@linux dovecot-1.0.beta8]# make install


すると、

[root@linux etc]# ll /usr/local/etc/dovecot-example.conf 
-rw-r--r--  1 root root 36423  6月 12 13:01 /usr/local/etc/dovecot-example.conf

のように今インストールしたdovecotの設定ファイルが/usr/local/etcに配置される

設定

設定ファイルをコピーする
[root@linux etc]# cp -p dovecot-example.conf dovecot.conf 

設定ファイルの以下の部分を直す
#protocols = imap imaps
protocols = imap imaps pop3 pop3s  ←追加

#default_mail_env = 
default_mail_env = maildir:~/Maildir  ←追加

#ssl_disable = no
ssl_disable = yes  ←追加(pop3s用)

#disable_plaintext_auth = yes
disable_plaintext_auth = no  ←追加(pop3s用)

  #pop3_uidl_format = 
pop3_uidl_format = %u  ←追加(これがないとpop認証で失敗する)

dovecot起動準備

今のdovecot(バージョン0.99)をバックアップを取っておき、新しいので上書きする
[root@linux etc]# ll /usr/sbin/dovecot
-rwxr-xr-x  1 root root 85060  1月 18  2005 /usr/sbin/dovecot
[root@linux etc]# cp -p /usr/sbin/dovecot /usr/sbin/dovecot.bk
[root@linux sbin]# cp dovecot /usr/sbin/dovecot
cp: `/usr/sbin/dovecot' を上書きしてもよろしいですか(yes/no)? yes

dovecot起動

[root@linux etc]# service dovecot start
Dovecot Imap を起動中:                                     [  OK  ]

日本語検索を試してみる

Search.jpg

IMAPのサーバ上で、問題なく本文の日本語検索ができました。音符

その他参考URL:
http://www.lins.jp/~obata/imap/server-compare.html
http://denchu.jp/memo/?d=20050926#2602

コピペ用リンク

このエントリーのトラックバックURL:


このエントリーへのリンクURLを含むHTML:

同じカテゴリの記事

トラックバック

コメントを投稿



RSS

Add to goo
Add to google

はてなRSS
feedpath
Subscribe in Bloglines
Subscribe with livedoor Reader




Tag cloud

Powered by
Movable Type 4.01