OpenPneでメール投稿対応。つまりはregexpなパイプ渡し
複数ドメインを管理しちゃってるサーバーでOpenPneを使ってる時に
携帯からのメール投稿対応しようとすると必要になるであろう作業。
うちのサーバーは過去の日記をみて頂ければわかりますが、Postfix&MySQLでのバーチャル
ドメインメールボックスを使っています。
そこにregexpテーブルを追加します。
# ローカルまたはリモートアドレスにエイリアスするオプションの検索テーブルを指定する。 virtual_alias_maps = regexp:/etc/postfix/virtual.regs,mysql:/etc/postfix/mysql_virtual_ali as_maps.cf
これで、メールが届いたときに初めに/etc/postfix/virtual.regsを正規表現に対応したマッピングテーブルとして見に行く設定になります。
では実際にregexpテーブルを書きましょう。
/^(p[0-9]+-[0-9a-f]{12})@example\.com$/ openpneuser /^(t[0-9]+-[0-9a-f]{12})@example\.com$/ openpneuser /^(b[0-9]+-[0-9a-f]{12})@example\.com$/ openpneuser ..続く
postmap /etc/postfix/virtual.regsを実行。
こんな感じで、メール投稿用メールアドレス宛てにメールが来たらopenpneuserというユーザーに渡します。
ここは環境によって適宜変えてください。
で、次にtransportに渡されますので、
openpneuser@example.com local
postmap /etc/postfix/transportを実行。
これでローカルのエイリアスに飛ばすことが出来ますので次に
openpneuser: "|/usr/bin/php /home/OpenPNE2/bin/mail.php"
postalias /etc/aliasesを実行。
最後にPostfixをreloadして完了。
これでメール投稿等ができるようになると思います。