Frage

Ich verwende PHPs Mail () -Funktion, um einige E -Mails zu senden. Aber alle meine Mails landen automatisch in der Müllkiste. Gibt es eine Möglichkeit, dies zu verhindern? Wenn ja, wo soll ich lesen, um mehr darüber zu erfahren?

Würden Sie mich mit Phpmailer empfehlen?

Mit freundlichen Grüßen, Alexander

War es hilfreich?

Lösung

Ich nehme an, Sie meinen Thrash Box am Ende des Empfängers. Im Grunde genommen betrachtet der empfangende E -Mail -Server ihn als Spam. Dies kann passieren, wenn:

1) Die IP, von der Sie senden, ist bereits für Spam auf die schwarze Liste (geschieht häufig beim gemeinsam genutzten Hosting).

2) IP und Domäne sind relativ neu und unbekannt.

(Beachten Sie, dass auch Newsletter von gut etablierten Websites in Spam enden.)

Wenn es sich um Ihre dedizierte IP handelt, wird das Problem sehr wahrscheinlich das Problem lösen, um RDNs für die IP zu entsprechen. Eine weitere übliche Praxis besteht darin, den Empfänger zu alarmieren (wenn sie auf Ihrer Website abonniert), um ihren Thrash-/Spam -Ordner zu überprüfen und Ihre E -Mail -Adresse in ihrem E -Mail -Konto zu Whitelist.

Grüße,

JP

Andere Tipps

Nicht zu rühmen, aber ich bin ein Mailserveringenieur. Spam -Filter suchen nach einer Reihe von "Problemen" mit E -Mail und fügen "Punkte" für jedes kleine Problem hinzu. Wenn genügend diese Probleme addieren, könnte die E -Mail (eine von) sein: während SMTP abgelehnt, in Spamordner weitergeleitet, in den Posteingang weitergeleitet, aber markiert ".SPAM"Blackboled (auf mysteriöse Weise verloren).

Um dieses Problem zu vermeiden, möchten Sie mehrere Probleme beheben, und dies verringert Ihren Spam -Score oder Ihren Spam -Richtlinienkonflikt. Sie möchten sich aus dem Weg gehen und ein wenig über "E -Mail -Best Practices" lernen, wenn Sie die besten Ergebnisse wünschen.

1 Ausgabe lautet: Senden Sie keine E -Mail an einen Empfänger von einem PHP -Skript auf einem Webserver. Sowieso nicht direkt zum Empfänger.

Anti-Spam-Software hat vor langer Zeit gelernt, webbasierte E-Mails zu misstrauen, da alle unsicheren Installationen von Formmail.pl usw.

Die richtige Möglichkeit, E -Mails von einem Webserver zu senden, besteht darin, die E -Mail über ein gültiges Mailbox auf einem gültigen MailServer zu senden. Wenn Ihre Website zum E-Mail-Hosting verfügt, erstellen Sie ein Mailbox mit dem Beispiel "Website-notification@websitedomain.com". Nennen Sie es, was Sie mögen. Jetzt möchten Sie, dass Ihr PHP -Skript mit authentifiziertem SMTP die E -Mail -Through -Adresse sendet. Ich werde den Prozess des Lernens lassen, wie man authentifizierte SMTP von PHP als Lernübung für Sie verwendet (es gibt viele Tutorials online).

Sobald Sie E -Mails über Ihren gültigen SMTP -Server senden, wird Ihre E -Mail möglicherweise besser geliefert. Sie könnten immer noch das gleiche Problem in einer anderen E -Mail -Zustellungsdomäne haben ...

2) Wie jemand anderes bemerkte, vermissen Sie nicht: von: Betreff: und Datum:. Das Datum muss im Standarddatumformat für E -Mails sein oder einige Spam -Filter flaggen es. Wenn Sie einen Header fehlen, werden Sie für Spam -Punkte markiert.

3) Ihre From -Adresse muss eine gültige Mailbox sein. Senden Sie keine E -Mail mit "von: noreply@yourdomain.com". Die From-Adresse muss vorhanden sein, da eine Anti-Spam-Software einen "Absender überprüft" wird, um zu testen, ob die From-Adresse falsch oder falsch ist.

Erstellen Sie in Ihrem MailServer Noreply@. Niemand sagt, Sie müssen tatsächlich diese Mailbox überprüfen ... Sie könnten eine Regel haben, die alle Mails an der nicht überwachten Adresse autodet. Der wichtigste Punkt ist, wenn andere MailServer einen "550 NO -solchen Benutzer" erhalten, wenn sie eine Verbindung zu Ihrem MX herstellen und diese Mailbox testen, könnte Ihre E -Mail als Spam gekennzeichnet sein.

4) Wenn Ihr Domain -DNS einen SPF -Datensatz hat, sind Sie zu 100% sicher, dass jede IP auflistet, die möglicherweise E -Mails für Ihre Domain sendet. Wenn Sie sich nicht sicher sind, verwenden Sie keine SPF -Datensätze, da ein schlechter SPF -Rekord die Lieferraten beeinträchtigt.

5) Verwenden Sie keine "Domänenregistrierungs -Datenschutz" oder "Domain Proxy" -Dienste, die Ihre Kontaktinformationen vor Ihrem WHOIS verbergen. Ein legitimer E -Mail -Absender muss nicht die Kontaktinformationen der Domäne verbergen. Spam -Filter werden dies überprüfen.

6) Kennen Sie die IP -Adresse Ihres MailServers und überprüfen Sie regelmäßig, dass sie bei Spamcop, Spamhaus oder dem Barracuda Spam Blacklists nicht "schwarzlistet" wird. Google für mehr.

Hoffentlich hilft mir meine Antwort und vermittelt, es gibt keine einfache einzige Antwort darauf. Wenn Sie heutzutage E -Mail senden möchten, müssen Sie sich dieser Probleme bewusst sein.

Die Antwort von JP ist teilweise korrekt, aber es könnte auch Ihr Header in der E -Mail sein, die ich aus Erfahrung kenne.

Setzen Sie die E-Mails auf Ihre Domain so etwas wie nicht repry oder eine gültige Antwort.

$to      = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
    'Reply-To: webmaster@example.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

mail($to, $subject, $message, $headers);

Dies hat wahrscheinlich etwas mit Ihrer E -Mail -Client- und Spam -Einstellungskonfiguration zu tun. Versuchen Sie, das Konto zu eröffnen gmail.com und senden Sie dort E -Mail, wenn es in Ordnung ist, wissen Sie, dass es sich um Ihr E -Mail -Server-/Client -Problem handelt. Wenn dies nicht der Fall ist, veröffentlichen Sie Ihren PHP -Code und die vollständigen E -Mail -Header der E -Mail, die Sie erhalten.

Dies geschieht, da viele Header fehlen / wenn es sich um eine bekannte E -Mail -Server -Domänen -Schlüsselsignatur oder ähnliches ist nicht vorhanden. Wenn Sie bereits über einen separaten E -Mail -Server verfügen, sollten Sie sich auschecken, ob Sie das PHP -PEAR -Mail -Paket verwenden können, um E -Mails über Ihren E -Mail -Server zu senden, und nicht direkt per E -Mail -Funktion. Das finde ich bequem, da es viel flexibler ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top