2016-10-11 4 views
1

Dies ist meine Situation:PHPMailer + Postfix in einer Kontaktform: wie verhindern als Spam markiert werden, wenn ‚Spoofing‘ Benutzer E-Mail

Ich bin eine Kombination aus PHPMailer und Postfix mit Informationen von einem Kontakt-Formular erhalten in ein Postfach. Ich möchte es so aussehen lassen, als ob E-Mails, die vom Kontaktformular kommen, von dem Benutzer gesendet werden, der die Daten übermittelt (und nicht von [email protected]).

So wie ich das jetzt zu lösen, ist durch die von E-Mail und den Namen einstellen, etwa so:

$m->setFrom($email, $name); 

Die Frage, die sich stellt, ist folgende: wegen der von E-Mail-Einstellung, meine E-Mail-Provider (Zoho) sieht es als eine Spam-Nachricht (ich nehme an, weil ich eine E-Mail-Adresse technisch spoofing), und es landet im Spam-Ordner.

Gibt es eine Möglichkeit, es in meinem Posteingang landen zu lassen? Gibt es eine Möglichkeit, den Spoofing-Absender (d. H. Meinen Server) auf die weiße Liste zu setzen?

Ich weiß, dies könnte getan werden, indem Sie das From-E-Mail-Feld in Ruhe lassen und $m->addReplyTo verwenden. Aber ich werde nicht der einzige sein, der den E-Mail-Account benutzt, und ich möchte jede Verwirrung vermeiden. Was ich meine ist, wenn jemand sieht, dass eine E-Mail kommt und sie einen bestimmten Namen, aber dann eine E-Mail-Adresse, die nicht mit diesem Namen entspricht, könnten sie verwirrt sein, oder Fehler beim Beantworten oder Senden neuer E-Mails an diese Person (Sie würden eigentlich nur auf den Server antworten). Das ist eine Lösung, die für mich nicht gut ist.

Dies ist der vollständige Code für die E-Mail-Setup:

$name = $_POST['name']; 
$email = $_POST['email']; 
$subject = $_POST['subject']; 
$message = $_POST['message']; 

$m = new PHPMailer; 
$m->isSendmail(); 

$m->setFrom($email, $name); 
$m->addAddress('[email protected]'); 

$m->Subject = $subject; 
$m->Body = $message; 
+0

Das einzige, was Sie tun können, afaik, ist das Hinzufügen eines SPF-Datensatzes und/oder DKIM auf dem echten Mail-Server für diese Domäne. Dann ist es wirklich dieser Mail-Server, der anderen Mail-Servern (wenn sie überprüfen, ob der Ursprung der E-Mail von dieser Domäne gesendet werden darf) sagt: "Ja. Dieser Server darf E-Mails mit dieser Domain senden". Mehr oder weniger –

+0

Kann ich meinem E-Mail-Anbieter nicht mitteilen, dass Spoofing bei einer bestimmten Domain (meiner Domain) nicht als Spam klassifiziert wird? – idix

Antwort

1

Nein, kann man nicht von Adressen fälschen und erwarten, dass es zu arbeiten. Der richtige Weg ist, Ihre eigene Adresse in die Absenderadresse und die Absenderadresse in eine Antwort zu schreiben. Sie können visuelle Verwechslungen vermeiden, indem Sie des Absenders zusammen mit der Absenderadresse angeben. Auf diese Weise sieht es so aus, als käme es vom Absender, die Antworten werden an den richtigen Ort gehen, und Sie fälschen nichts.

+0

Hm ich dachte mir so viel ... Das bleibt dann die beste Lösung. – idix

+0

Sie können das DKIM-Signing auch nicht mit einer gefälschten Adresse durchführen, und das ist eine Notwendigkeit für die Lieferung an einen großen ISP. – Synchro

Verwandte Themen