rob: Newsletterversand mittels "sendmail"

Beitrag lesen

Hi!

man sendmail
Und viel Spass dabei, sogar eingefleischte UNIX-Admins haben ihre Probleme mit Sendmail und dessen Möglichkeiten.

So schwer ist das nicht.
Es ist richtig, daß zur sendmail-Konfiguration schon Bücher geschrieben wurden, die dicker sind als das Berliner Telefonbuch.
Die Konfiguration übernimmt aber der Hoster und nicht der Autor der PHP-Scripte.
Um damit ein paar Mails zu verschicken, braucht es nicht viel.

Im Übrigen wird sendmail mittlerweile gar nicht mehr so häufig eingesetzt wie früher.
Es gibt eine ganze Reihe an Ersatz-Programmen, die IMHO sogar besser (und um einiges sicherer) sind als das Original. In jedem Fall ist die Konfiguration meist um vieles einfacher.
Ich selbst bevorzuge "postfix", aber ich kenne auch Leute, die beispielsweise auf "qmail" schwören.
Da "sendmail" aber über die Jahre hinweg sozusagen zum Standard geworden ist, bringen die meisten Unix-MTAs ein sendmail-Interface mit.
Man kann den MTA, z.B. postfix, dann mit "sendmail" aufrufen und diesem dann die gleichen Parameter wie sendmail mitgeben.
Scripte die auf sendmail ausgelegt sind, funktionieren dann also auch problemlos mit anderen MTAs.

Aber zurück zur eigentlichen Frage:
Ja, es ist möglich, nicht die mail()-Funktion von PHP zu nutzen und direkt mit sendmail zu sprechen.
Allerdings löst dieses auch nicht das bestehende Problem. Ob eine Email nun angekommen ist oder nicht, kann man so auch nicht herausfinden.
Hier findet man ein kleines Beispiel, wie man Emails ohne die Mail-Funktion verschicken kann:
15.3. Unix: Wie funktioniert der Mailversand?
(aus der FAQ der Newsgroups de.comp.lang.php.*)

Die PHP-Funktion mail() bringt außerdem einige Vorteile mit sich:
Bei der Nutzung der mail()-Funktion muß man den Pfad zum MTA nicht kennen.
Geht man den anderen Weg, muß man erst nachschauen (meist in php_info() zu finden), wo der MTA installiert ist.
Meist liegt dieser zwar in /usr/sbin/sendmail, aber das muß ja nicht immer so sein.
Es könnte also eine Anpassung des Scriptes erfordern, wenn man den Server/Provider wechselt.
Die Nutzung von mail() erfordert darüberhinaus weniger Schreibarbeit.

Schöner Gruß,
rob