空メールを受け取った時の自動メール返信などに。
- Postfixの設定ファイル(/etc/postfix/main.cf)にvirtualファイルのパスを書く(hogeのところは任意の名前)
virtual_alias_maps = pcre:/etc/postfix/virtual.hoge
- 上記で書いたパス(/etc/postfix/virtual.hoge)にテキストファイルを作成し、正規表現等で振り分けを設定する
左側の条件にマッチした場合のみ、右側のaliasに渡される(詳細はpostfix virtualで調べれば色々出てくる)
/^[0-9]+@/ hoge-request
- /etc/aliasesに上記で書いたaliasを追加
左側にalias名、右側にクォーテーションで括って実行するファイル(php)とそれに渡すパラメータを書く
この場合、/var/php/hoge.phpが実行される
hoge-request: "|/usr/bin/php /var/php/hoge.php"
- Postfixを再起動
newaliases
/usr/sbin/postfix restart - PHP内では標準入力からメールの生データを受け取れる
PEAR::Mail_mimeDecodeを使うと便利だと思う
$raw_mail = file_get_contents("php://stdin");
参考:SEメモ 受信したメールをPHPにパイプさせる方法
0 件のコメント:
コメントを投稿