Viele E-Mail-Nachrichten werden von PHP-Skripten auf dem Server gesendet. Wie kann ich herausfinden, auf welchen Domains diese Skripte ausgeführt werden?

~ 0 min
2009-03-23 23:33

Quelle: http://kb.parallels.com/de/1711  

Lösung

Es gibt eine Methode herauszufinden, aus welchem Ordner das PHP-Skript, das E-Mail sendet, ausgeführt wurde. Beachten Sie, dass die tatsächlichen Pfade sich abhängig von Ihrem Betriebssystem und Ihrer Plesk-Version geringfügig von den unten gezeigten unterscheiden können:

1) Erstellen Sie das Skript /var/qmail/bin/sendmail-wrapper mit folgendem Inhalt:

#!/bin/sh
(echo X-Additional-Header: $PWD ;cat) | tee -a /var/tmp/mail.send|/var/qmail/bin/sendmail-qmail "$@"


Beachten Sie, dass es einschließlich der Zeile '#!/bin/sh' zwei Zeilen sein müssen.

 2) Erstellen Sie dann die Logdatei /var/tmp/mail.send und weisen Sie ihr die Rechte "a+rw" zu, machen Sie den Wrapper ausführbar, benennen Sie das alte Sendmail um und verknüpfen Sie es mit dem neuen Wrapper:

 

# touch /var/tmp/mail.send
# chmod a+rw /var/tmp/mail.send
# chmod a+x /var/qmail/bin/sendmail-wrapper
# mv /var/qmail/bin/sendmail /var/qmail/bin/sendmail-qmail
# ln -s /var/qmail/bin/sendmail-wrapper /var/qmail/bin/sendmail
 

 

3) Warten Sie ca. eine Stunde und setzen Sie Sendmail zurück:
# rm -f /var/qmail/bin/sendmail
# ln -s /var/qmail/bin/sendmail-qmail /var/qmail/bin/sendmail


Untersuchen Sie die Datei /var/tmp/mail.send. Sie sollte Zeilen enthalten, die mit "X-Additional-Header:" beginnen. Diese verweisen auf Domain-Ordner, in denen sich die Skripte, die die E-Mail gesendet haben, befinden.

Sie können alle Ordner, aus denen E-Mail-PHP-Skripte ausgeführt wurden, mit dem folgenden Befehl anzeigen:

# grep X-Additional /var/tmp/mail.send | grep ´cat /etc/psa/psa.conf | grep HTTPD_VHOSTS_D | sed -e 's/HTTPD_VHOSTS_D//' ´

Wenn Sie vom obigen Befehl keine Ausgabe erhalten, bedeutet dies, dass keine E-Mail mit der PHP mail()-Funktion aus dem Plesk-Verzeichnis mit virtuellen Hosts gesendet wurde.

Durchschnittliche Bewertung 0 (0 Abstimmungen)

Es ist möglich, diese FAQ zu kommentieren.