Newsletterversand mittels "sendmail"
Jörg
- php
Halli Hallo,
momentan verschicke ich meine newsletter noch mitttels des einfachen php Befehls
mail($email, $Betreff, "", $Header);
Nun möchte ich aber auch feststellen, ob die mails auch wirklich alle angekommen sind. Ein Mittel dafür scheint "sendmail" zu sein, das auf meinem LINUX Server laut PHP-Info installiert ist.
Aber wie baue ich diesen Befehl ein? Bei Google usw. konnte ich nichts richtiges finden. Kann mir jemand helfen?
Ich grüsse den Cosmos,
Aber wie baue ich diesen Befehl ein? Bei Google usw. konnte ich nichts richtiges finden. Kann mir jemand helfen?
man sendmail
Und viel Spass dabei, sogar eingefleischte UNIX-Admins haben ihre Probleme mit Sendmail und dessen Möglichkeiten.
Möge das "Self" mit euch sein
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
Mist. Zu früh abgeschickt...
Wollte doch noch weiter schreiben...
Ein weiterer Vorteil der mail()-Funktion ist, daß diese auch auf Windows-Servern funktioniert.
Im Normalfall ist auf Windows der IIS (Internet Information Services) für Web- und Mailserver zuständig.
Ist PHP richtig konfiguriert, dann kann man damit natürlich auch auf einem Windows-Server Mails verschicken.
Ein Script, das direkt auf sendmail zugreift, wird hier allerdings nicht funktionieren.
Die Portabilität der Scripte wird damit dann natürlich eingeschränkt.
In den meisten Fällen ist es also wirklich besser, mail() zu nutzen, wenn man einfach nur mal schnell 'ne Mail verschicken will.
Schöner Gruß,
rob
Hi,
Und viel Spass dabei, sogar eingefleischte UNIX-Admins haben ihre Probleme mit Sendmail und dessen Möglichkeiten.
Mein Chef sagt: Einstellungsbedingung für Admins sei bei ihm die Frage: "Können Sie sendmail komplett konfigurieren, und haben Sie man ls komplett durchgearbeitet (und verinnerlicht)?"
Wenn der Berwerber das zurecht bejaht, erübrigens isch weitere Fragen. Man kann davon ausgehen, das er für den Job qualifiziert ist. :-))
Gruß, Cybaer
Ich grüsse den Cosmos,
Wenn der Berwerber das zurecht bejaht, erübrigens isch weitere Fragen. Man kann davon ausgehen, das er für den Job qualifiziert ist. :-))
Ich würde davon ausgehen, das er mich anlügt. Denn Admins, die diese Kriterien erfüllen dürfte man an einer Hand abzählen können.
Möge das "Self" mit euch sein
Hi,
Ich würde davon ausgehen, das er mich anlügt. Denn Admins, die diese Kriterien erfüllen dürfte man an einer Hand abzählen können.
:)) Ach, manchmal muß man einfach durch die Hölle gehen ... >;-)
Gruß, Cybaer
Ich grüsse den Cosmos,
:)) Ach, manchmal muß man einfach durch die Hölle gehen ... >;-)
Das hab ich hinter mir, als ich vor 10 Jahren mal Sendmail "lernen" wollte. Wenn ich an die Hölle glauben würde, würde sie aussehen, wie sendmail-Configs :-D
Möge das "Self" mit euch sein
Hi,
Wenn ich an die Hölle glauben würde, würde sie aussehen, wie sendmail-Configs :-D
:))
Und wenn wir einen Papst Bill I hätten, dann wäre Vista der Himmel, und wir keinen Katechismus, sondern einen Masochismus. ;->
Gruß, Cybaer
Ich grüsse den Cosmos,
Und wenn wir einen Papst Bill I hätten, dann wäre Vista der Himmel, und wir keinen Katechismus, sondern einen Masochismus. ;->
Und vorallem werden alle als Kätzer auf dem Scheiterhaufen verbrannt, die einen Mac oder, noch schlimmer, Linux nutzen. Von perversitäten wie BSD o.ä. mal abgesehen (da wird man voher noch exorziert).
In einer solchen Welt, würde ich mich für die Hölle entscheiden ~gg~
Möge das "Self" mit euch sein
hi,
Nun möchte ich aber auch feststellen, ob die mails auch wirklich alle angekommen sind. Ein Mittel dafür scheint "sendmail" zu sein
Die Annahme entspricht in etwa der, dem Briefträger morgens einen Brief in die Handzudrücken, den er bitte mitnehmen und zustellen möchte - und ihn dabei zu fragen, ob dieser Brief angekommen wäre.
gruß,
wahsaga