[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[postfix-jp:01094] Postfix+procmail での問題



森川と申します。

Postfixで受信したメールをprocmailに渡して処理させようと
しています。しかし(多分)postfixから送信するとうまく行かない
ケースがあり悩んでいます。

<仕組み>
・some.domainあてのメールは全てtransport mapでprocmailに渡す。
・このときに、$recepientと$senderも一緒にprocmailに渡す。
・procmailで$recepitant毎にメールを振り分ける。

<うまく行かない例>
To : user1@xxxxxxxxxxx
Cc : user2@xxxxxxxxxxx
Bdd : user3@xxxxxxxxxxx
のように同一ドメインの宛先を複数指定したメール

但し、qmail(使っているプロバイダー)から送信した場合はOK
postfixから送信した場合はNG

<何がうまく行かないか>
・$recepientは3回展開され、最終的には常にuser3になる
・procmailは3回起動するはずが、1回しか起動しない(ようにみえる)
・$senderは1回のみ展開される(ようにログからみえる)

<うまく行く場合とうまく行かない場合の違い>
・OKの場合のログ(プロバイダーのqmailから送信)
    postfix/pipe[29530]: 3E9ED107FE: to=<user1@xxxxxxxxxxx > .........
    postfix/pipe[29531]: 542AC107FD: to=<user2@xxxxxxxxxxx > .........
    postfix/pipe[29534]: 740CC107FE: to=<user3@xxxxxxxxxxx > .........
・NGの場合のログ(自前のpostfixから送信)
    postfix/pipe[29790]: A3051107FA: to=<user1@xxxxxxxxxxx > .........
    postfix/pipe[29790]: A3051107FA: to=<user2@xxxxxxxxxxx > .........
    postfix/pipe[29790]: A3051107FA: to=<user3@xxxxxxxxxxx > .........

NGの場合はtoの前が数字(正式名称を知りません...)が
同じですが、OKの場合はバラバラです。これはキュー毎に振られる
番号だと思っているのですが、postfixは同一キューの同一ドメイン
宛てのメールは一度に配送処理するという特徴(自信なし)が関係
しているような気がしています。

#ちなみにOKの方は、smtpで1つづつセッションを張って(つまり3回
#接続してくる)、それぞれ別々に処理します。NGの方はsmtpで接続
#してくるのは1回だけで、その中で$recepientの展開をするので、
#結局user3になってしまいます。同一のメールなので$senderを1回し
#か展開しないのはわかる気がしますが、これも仕様でしょうか?

何かよい解決方法はないでしょうか?

<環境>
VineLinux 2.1.5
Postfix 20010228pl04
procmail 3.21

*********************
森川英太(Eita Morikawa)
chanoma@xxxxxxxxxxxxx
*********************

Follow-Ups
[postfix-jp:01095] Re: Postfix+procmail での問題, B<tommy@xxxxxxxx>
[postfix-jp:01096] Re: Postfix+procmail での問題, ARAKI Yasuhiro

[検索ページ] [Postfix-JP ML Home]