空メール処理まとめ
やりたいこと
- postfixやqmailで空メールや添付メールを受け取り、プログラムにリダイレクトして処理する
- プログラムは/path/to/mail.php
- メールアドレスはsomeone@hostname.hostdomain
postfix編
Postfixのalias(エイリアス)を使う。
/etc/aliasを編集
sudo vi /etc/aliases
末尾に以下を追記。
someone: "|/usr/bin/php /path/to/mail.php"
エイリアスを有効にするために以下のコマンドを実行。
postalias /etc/aliases /etc/init.d/postfix restart
これで完了
Qmail編
dot-qmailファイルを使う
/var/qmail/alias/.qmail-someoneを編集
sudo vi /var/qmail/alias/.qmail-someone
以下を追記
|/usr/bin/php /path/to/mail.php
これで完了
プログラム側では、
<?php $source = file_get_contents("php://stdin");
でメールデータが取得できるので、適当に解析して処理する