特定の仮想ホストへの受信メールを処理し、メールデータをパラメーターとして外部スクリプトを呼び出すための最良のアプローチについてフォポインターを探しています-基本的に、ホストで特定の「プライベート」メールアドレスにメールを送信できるようにします。そのサイト データベースに何かを挿入します。現在、exim をメール ハンドラとして設定しています。
2 に答える
1
exim の単一ファイル構成構造に従う必要があります。ルーター セクションで、目的の php スクリプトに電子メールを配信する独自のカスタム ルーターを記述します。transport セクションでは、curl を使用して目的のスクリプトに確実に配信する独自のカスタム トランスポートを記述します。/etc/exim.cnf
ファイルに次の構成を書き込むだけです。
############ROUTERS
runscript:
driver = accept
transport = run_script
unseen
no_expn
no_verify
############TRANSPORT
run_script:
debug_print = "T: run_script for $local_part@$domain"
driver = pipe
command = /home/bin/curl http://my.domain.com/mailTest.php --data-urlencode $original_local_part@$original_domain
mailTest.php が目的のスクリプトになります。
于 2015-08-24T09:11:57.910 に答える
0
Procmail は、優れた一般的な回答です。ニーズが非常に具体的である場合は、独自のスクリプトを直接.forward
(または Exim の対応する構造 -- どのように異なるか正確には思い出せません) にフックすることもできますが、多くの場合、独自のスクリプトを単純なスクリプトでラップすると、大量のスクリプト.procmailrc
を回避するのに役立ちます。電子メール配信の詳細を曖昧にし、実際の処理に集中してください。
:0
' ^Subject: secretpassword adduser \/[A-Z]+
| echo "insert $MATCH into users" | mysql -d users
于 2011-10-03T15:00:11.223 に答える