Ich verwende PHP mit Apache auf Linux, mit Sendmail. Ich benutze die PHP mail
Funktion. Die E-Mail wird gesendet, aber der Umschlag hat die [email protected]
in MAIL FROM
(Beispiel [email protected]) und einige Remote-Mail-Server lehnen dies ab, weil die Domain (offensichtlich) nicht existiert. Kann ich es unter Verwendung mail
erzwingen, den Umschlag MAIL FROM
zu ändern?Wie ändern Umschlag von Adresse mit PHP Mail?
EDIT: Wenn ich einen Header im vierten Feld der mail
() Funktion hinzuzufügen, die das From
Feld in den Header des Körpers der Nachricht MAIL FROM
und ändert sich nicht, den Umschlag ändert.
Ich kann es erzwingen, indem ich sendmail mit sendmail -t -odb -oi [email protected]
und spawning die E-Mail-Inhalte zu ihm. Ist das ein besserer Ansatz?
Gibt es eine bessere, einfachere, PHP-geeignete Art und Weise, dies zu tun?
EDIT: Die Quintessenz ist, ich sollte RTM haben. Danke für die Antworten Leute, der fünfte Parameter funktioniert und alles ist gut.
Hinweis: Möglicherweise müssen Sie den Absender auch zu/etc/mail/trusted-users hinzufügen. – Devon
Konnte keine vertrauenswürdigen Benutzer auf meinem Rechner finden:/ –
@Lucas Oman: +1 deine Antwort ist richtig, wollte nur denjenigen warnen, der daran interessiert sein könnte, dass auf fast allen Shared Hosting Services (cPanel/WHM) die PHP Mail Funktion 5th Der Parameter '-f ...' wird durch 'SAFE MODE Restriction in effect' deaktiviert und würde einfach eine PHP-Warnung anzeigen, ohne den Standard-Envelope zu ändern - daher wäre Ihre Antwort in diesen Fällen keine Option. Und bezüglich des Devon-Kommentars kann die '/ etc/mail/trusted-users' nicht auf Shared Hosting geändert werden, da sie zur Hauptserverkonfiguration gehört. –