2011-09-11 9 views
0

私は、特定の仮想ホストへの着信電子メールを処理し、電子メールデータをパラメータとして外部スクリプトを呼び出すための最良の方法について探していますホストの特定の「プライベート」電子メールアドレスに送信します。ホストは、そのサイトデータベースに何かを自動的に挿入します。私は現在eximをメールハンドラとして設定しています。Debian - 電子メールの受信時にeximから外部スクリプトを呼び出す

答えて

0

Procmailは良い一般的な答えです。あなたのニーズが非常に特殊な場合は、.forward(またはEximの対応する構文 - それがどのように違うかを覚えていない)から独自のスクリプトを直接フックすることができますが、しばしばシンプルな.procmailrcの中にスクリプトをラップすると、実際の処理に集中することができます。

0

eximの単一ファイル設定の構造に従わなければなりません。ルータのセクションでは、あなたの希望のPHPスクリプトに電子メールを配信する独自​​のカスタムルータを記述します。輸送セクションでは、カールを使用して目的のスクリプトへの配送を確保する独自のカスタム輸送を作成します。 mailTest.phpがあなたの運命のスクリプトになります

############ROUTERS 
runscript: 
     driver = accept 
     transport = run_script 
     unseen 
     no_expn 
     no_verify 
############TRANSPORT 
run_script: 
    debug_print = "T: run_script for [email protected]$domain" 
    driver = pipe 
    command = /home/bin/curl http://my.domain.com/mailTest.php --data-urlencode [email protected]$original_domain 

:ちょうどあなたの/etc/exim.cnfファイルに以下の構成を記述します。

+0

一般的に、PHPでは、特に「curl」を介して転送することは、このタスクにとって理想的ではないようです。 – tripleee

+0

私の場合、複数の宛先にメールを配信する必要があります。私は両方のドライバ、つまり受け入れとリダイレクトを使用しなければならなかった。私はすでに両方を使い、効果的に仕事をする方法は一つしか見つけていません。 –

関連する問題