Senden von E-Mails an mehrere Ziele mit Exim

Senden von E-Mails an mehrere Ziele mit Exim

Ich möchte E-Mails an mehrere Ziele senden, z. B. an ein PHP-Skript und an das Postfach eines Benutzers. Ich verwende Exim zum Senden von E-Mails. Ich habe die Abschnitte „Router“ und „Transport“ der Exim-Konfigurationsdatei wie unten gezeigt geändert. Ich habe ein benutzerdefiniertes Transportmittel mit dem Namen „send_to_site“ entwickelt. Ich kann E-Mail-Header an das PHP-Skript senden, aber keine E-Mails an das Postfach des Benutzers. Hier ist mein benutzerdefiniertes Transportmittel:

######ROUTER
catchall_mail:
  driver = accept
  domains = my.server.com
  transport = send_to_site
#####TRANSPORT
send_to_site:
    driver = pipe
    command = /home/bin/curl http://my.server.com/mailTest.php --data-urlencode "mail@-"
    user = afterlogic
    group = afterlogic
    return_path_add
    delivery_date_add
    envelope_to_add

Wobei mailTest.php mein PHP-Skript ist.

Antwort1

Ich habe dieses Problem nach langer Zeit gelöst. Im Abschnitt „Router“ habe ich meinen eigenen benutzerdefinierten Router geschrieben, der E-Mails an mein gewünschtes PHP-Skript sendet. Im Abschnitt „Transport“ habe ich meinen eigenen benutzerdefinierten Transport geschrieben, der die Zustellung an das gewünschte Skript mithilfe von Curl sicherstellt. Ich habe gerade die folgenden Konfigurationen in meine /etc/exim.cnfDatei geschrieben:

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

Wobei mailTest.php mein Zielskript war.

Antwort2

Sie müssen zwei Router erstellen, wobei der erste unseenein Verb enthalten sollte. Der erste Router muss die Nachricht an das Skript weiterleiten, während der zweite die normale Zustellung an das Postfach des Benutzers durchführen muss.

Entschuldigen Sie die kurze Antwort, ich poste vom Telefon aus.

verwandte Informationen