2011-09-11 5 views
0

Je cherche des fopointers sur la meilleure approche pour traiter les emails entrants vers un certain vhost et pour appeler un script externe avec les données d'email comme paramètres - essentiellement pour permettre l'envoi d'email à une certaine adresse e-mail "privée" à un hôte qui insère alors automatiquement quelque chose dans la base de données de ce site. J'ai actuellement exim mis en place en tant que gestionnaire de messagerie.Debian - invoquer un script externe d'exim à la réception d'emails

Répondre

0

Procmail est une bonne réponse générique. Si vos besoins sont très spécifiques, vous pouvez accrocher votre propre script directement à partir de votre .forward (ou la construction correspondante d'Exim - je ne me souviens pas exactement de quelle différence), mais souvent, en enveloppant votre propre script dans un simple .procmailrc tas de détails douteux de la livraison d'e-mail, et se concentrer sur le traitement réel.

:0 
' ^Subject: secretpassword adduser \/[A-Z]+ 
| echo "insert $MATCH into users" | mysql -d users 
0

Vous devez suivre la structure des configurations de fichier unique exim. Dans la section des routeurs, écrivez votre propre routeur personnalisé qui enverra un courriel à votre script PHP désiré. Dans la section transport, écrivez votre propre transport personnalisé qui assurera la livraison au script désiré en utilisant curl. Il suffit d'écrire les configurations suivantes dans votre fichier /etc/exim.cnf:

############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 

Où mailTest.php sera votre script destiné.

+0

PHP en général et la déviation via curl en particulier semble moins qu'idéale pour cette tâche. – tripleee

+0

Dans mon cas, je dois envoyer des courriels à plusieurs destinations. J'ai dû utiliser les deux pilotes que j'accepte et rediriger. J'ai trouvé une seule façon d'utiliser les deux et de faire mon travail efficacement que j'ai déjà mentionné. –

Questions connexes