人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

【CentOSとsendmail】

CentOS 4.4
sendmail-8.13.x

を使用しています。

さて、
http://tejimaya.org/openpne/docs/2_2/OpenPNE_Setup.html

3-2. メールサーバの設定
をおこなって、携帯から画像の投稿などをできるようにしたいです。


こちらで行った作業が、
/etc/mail/virtusertable

@example.com sns
として、
/etc/aliases

sns: "|/usr/bin/php /home/hoge/bin/mail.php"
としました。


一応、これで動くのですが、
作成していないメールアドレスも
すべてこちらに飛んでしまいます。

なので、virtusertableやaliasesで正規表現をかけて、
pXXX-YYYやtXXX-YYYやbXXX-YYY
のみをプログラムに受け渡しするようにしたいです。
※マニュアルにあるように、XXX は数字。YYY は12バイトの英数字です。


procmailを使用せず、sendmailの機能で正規表現で処理させる方法をご教授ください。

●質問者: gloglo
●カテゴリ:インターネット ウェブ制作
✍キーワード:CentOS ETC example.com hoge HOME
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● thrillseeker
●60ポイント

sendmail では virtusertable, aliases はともに Berkeley DB 形式の

データベースファイル virtusertabel.db, aliases.db に変換されて参照

する実装となっている為、正規表現を使うのは無理だと思います。


一方、PHP スクリプト /home/hoge/bin/mail.php でアドレスをチェック

するようにすれば、正規表現での判別が可能かと。

(メールのヘッダー=ファイル先頭から最初の空白行までの部分を読み取り、

To: や Cc: で始まる行をチェックする)


ただし、宛先アドレス pXXX-YYY@example.com がヘッダーの To: や Cc: に

含まれないメール(Bcc や MLなど) の処理はちょっと難しいかも知れません。

以下の例ように procmail で X-Envelope-To: ヘッダーを追加する処理を挟めばOKですが。

http://www.sendmail.org/faq/section3.html#3.29

◎質問者からの返答

なるほど、ありがとうございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ