E-Mails werden nicht mehr versandt

 
vlahnstein
Benutzer
Avatar
Geschlecht:
Alter: 49
Beiträge: 167
Dabei seit: 01 / 2012
Betreff:

E-Mails werden nicht mehr versandt

 · 
Gepostet: 14.02.2025 - 19:57 Uhr  ·  #1
Hallo Chris,

wir haben in den letzten Tagen bemerkt, dass aus unserem Forum keine E-Mails mehr versendet werden. Zum Beispiel bei Abos oder der Registrierung.
Am Forum selber haben wir nichts geändert. Das letzte Update auf die aktuelle Version lag schon länger zurück.

Der Provider hat angeblich auch nichts gemacht.

Manuell über den Server angestoßene E-Mails (außerhalb des Forums) werden versendet und kommen auch an.

Wie können wir herausbekommen, wo der Prozess ins Stocken gerät und das Problem liegen könnte?

Viele Grüße

Markus
cback
Admin
Avatar
Geschlecht:
Herkunft: Saarland
Alter: 38
Homepage: cback.net
Beiträge: 17684
Dabei seit: 12 / 2003
Betreff:

Re: E-Mails werden nicht mehr versandt

 · 
Gepostet: 14.02.2025 - 20:16 Uhr  ·  #2
Hi Markus,

sofern Ihr am Forum ja nichts verändert habt und die neueste Version (4.12) im Einsatz habt, kann man das Forum als Ursache ausschließen. Dies deutet also eher auf ein Serverproblem hin. Überprüft daher in der Server-Richtung folgende Punkte:

  • falls ein Drittanbieter-Plugin für das Mailing genutzt wird, hilft ein Zurücksetzen auf den CF4-Eigenen Mailer
  • sofern Ihr einen externen SMTP Server in der CF4 Config hinterlegt habt, prüfe, dass die Zugangsdaten und die Adresse noch korrekt sind. Empfehlenswert wäre es, auf den PHP eigenen Mailer zu setzen (Standardkonfiguration), sodass das Forum die E-Mails direkt über denselben Server versenden kann
  • die Sicherheits-Konfiguration neuerer Server-Betriebssysteme erfordert den Versand von E-Mails zwingend von denen auf dem Server hinterlegten Domains / Mailadressen. Falls dies nicht korrekt in Eurer Server-Konfiguration hinterlegt ist, und der PHP Sendmail hier eine falsche Adresse im Header nutzt, kannst Du im CF4 ACP die Option "Sendmail Parameter für Return-Path / Envelope forcieren" auf "Ja" stellen, damit die im Board eingestellte E-Mail Adresse zwingend auch im Header von Sendmail verwendet wird
  • Die für das Forum verwendete E-Mail Adresse sollte sich auf dem Server des Forums befinden, sonst quittieren viele neue Mailer den Dienst oder Ziel-Spamfilter stellen die Mails nicht zu
  • Prüft bei Eurem Hoster, ob alle DKIM / DMARC Einträge im Nameserver korrekt hinterlegt sind und das Forum bzw. PHP Scripte weiter Mails versenden können
  • Prüft die korrekte Konfiguration des Mailer Services für PHP Scripte



Im Forum kannst Du hier kaum etwas machen, da hier nur der PHP eigene Mailer via sendmail() angesteuert wird und das Forum den eigentlichen Versand einer Nachricht also recht direkt an den PHP Dienst abgibt. Gerade, wenn das Problem plötzlich auftritt, ist dies doch eine Ursache, die man auf dem Server ausklamüstern müsste.

Hoffe die Suchstellen helfen dabei etwas weiter.
Manchmal tut es auch ein einfacher reboot, falls im Dovecot, Postfix o.ä. Service auf dem Server was steckt.

Viele Grüße und ein schönes Wochenende,
Chris
vlahnstein
Benutzer
Avatar
Geschlecht:
Alter: 49
Beiträge: 167
Dabei seit: 01 / 2012
Betreff:

Re: E-Mails werden nicht mehr versandt

 · 
Gepostet: 15.02.2025 - 19:28 Uhr  ·  #3
Hallo Chris,

Danke für die Infos.

Mein Admin-Kollege hat noch folgendes angemerkt....

Version 4.12 ist im betreffenden, nicht öffentlichen Projekt installiert. Ich meine, ich habe die Konfigurationsmöglichkeiten im Backend alle durchgetestet, zumindest glaube ich das, einiges war ja in älteren Threads an Tipps zu finden.

Das für mich merkwürdige ist, dass Testmails ankommen, wenn sie von dem folgenden Test verschickt werden:
Code
<?php 
    ini_set( 'display_errors', 1 );
    error_reporting( E_ALL );
    $from = "emailtest@YOURDOMAIN";
    $to = "YOUREMAILADDRESS";
    $subject = "PHP Mail Test script";
    $message = "This is a test to check the PHP Mail functionality";
    $headers = "From:" . $from;
    mail($to,$subject,$message, $headers);
    echo "Test email sent";
?>

Quelle : https://conetix.com.au/support/simple-php-mail-test/
Oder ist das ein Fehlschluss?

Ich werde am Wochenende ein paar weitere Tests machen und den Hoster darauf ansetzen.

Danke für jede Idee!
cback
Admin
Avatar
Geschlecht:
Herkunft: Saarland
Alter: 38
Homepage: cback.net
Beiträge: 17684
Dabei seit: 12 / 2003
Betreff:

Re: E-Mails werden nicht mehr versandt

 · 
Gepostet: 15.02.2025 - 20:20 Uhr  ·  #4
Hi Markus,

sofern Du keinen externen SMTP konfiguriert hast im CF4 (oder ein Drittanbieterplugin verwendest, welches in die Mail-Funktion eingreift) und das interne PHP Mailing verwendest, sendet es Deine Mails nicht anders als Dein Testscript - nämlich auch über die mail() Funktion. Der einzige Unterschied ist, dass der Bereich $headers noch ein paar weitere Parameter beinhaltet, um die E-Mail Header Standards zu erfüllen (nach dem RFC 5322), sonst werden Mails beispielsweise von GMX / Web direkt abgelehnt oder bekommen bei GMail einen Spam-Flag. Das gabs ja mal in einer früheren Version, als dieser Standard strenger wurde und das CF4 daher entsprechend angepasst wurde in der v4.9. Aber Du hast ja das neueste Update, dann sollte Deine Mail-Class ja auch auf dem aktuellen Standard funktionieren (und hätte ansonsten vorher ja auch nicht funktioniert).

Ist denn die E-Mail Adresse, die Du für den Test verwendest, die selbe, wie Deine Board-Mail-Adresse? Wie gesagt müssen inzwischen oft gültige, existierende Mailadressen auf dem selben Server liegen, damit die Mails raus gehen. Damit wurde darauf reagiert, dass viele Kontaktformulare beispielsweise Absender-Adressen faken können und Server so als Spam-Relais verwendet werden.

Aber wie gesagt, das ist auch ein Serverproblem dann.

Wenn Du im CF4 den internen Mailer verwendest, eine Adresse als Board-Mail nutzt, die auf dem Server existiert und "Sendmail Parameter für Return-Path / Envelope forcieren" aktivierst, wenn es ohne nicht geht, kannst Du im Board nichts weiter beeinflussen, eben weil es auch nur über mail() läuft. Siehe classes/communicator/EMail.class.php die Funktion private function via_sendmail($to, $subject, $text, $extra).

Gerade wenn es plötzlich auftritt kann nur der Server in Frage kommen.
CF4 Foren senden ansonsten ja problemlos ihre Mails.

Vielleicht ist Deine abgeriegelte Umgebung auch zu abgeriegelt? Checkt das mal, ob da vielleicht auch eine andere php.ini oder PHP Config aktiv ist (PHP-CGI hat ja für Subdomains o.ä. manchmal andere Konfigurationen aktiv).

LG,
Chris
Raimund
Benutzer
Avatar
Geschlecht: keine Angabe
Alter: 57
Beiträge: 31
Dabei seit: 11 / 2013
Betreff:

Re: E-Mails werden nicht mehr versandt

 · 
Gepostet: 20.02.2025 - 13:26 Uhr  ·  #5
Hallo Chris,
ich bin der co-Admin von Markus bei diesem Forumsprojekt.
Bei meinen Experimenten konnte ich zumindest klären, warum die smtp-Funktion in einen Fehler lief. Der Hoster möchte einen anderen Port (587) und der war im Quelltext anders codiert. Ich hatte da nicht drüber nachgedacht, weil Thunderbird den bei meinen Tests automatisch gesetzt hatte.
Gelöst hat sich das Phänomen noch nicht. Auf dem Server läuft parallel ein wordpress, von dort kommen Nachrichten problemlos durch (im Hintergrund spielt phpmailer wie bei Zwirnis mailer: zwirnis-mailer-t18087.html )

Der Server scheint sich bei meinen stümperhaften Tests an einem Header-Eintrag zu stören: MIME-Version: 1.0. Schreibe ich das beim Testscript in den Header, geht nichts mehr raus. Es muss irgendwas mit der php.ini oder der config sein.
Lasse ich den Inhalt durch:
Code
$mailinhalt = htmlentities($mailinhalt, ENT_NOQUOTES, 'UTF-8');

verwursten, dann kann ich mir die Variable als Mailinhalt zusenden lassen. Eine KI meinte, ich solle das tun, die hatte aber sonst nichts brauchbares für die Skripte.

Ich hab den Hoster nochmal erinnert, aber evtl. hast du oder jemand noch eine Idee, was das sein könnte. Die letzte Mail hat uns Ende November erreicht, PHP 8.2 läuft bei uns, getestet habe ich noch 8.1. und 8.0)

LG
Raimund
cback
Admin
Avatar
Geschlecht:
Herkunft: Saarland
Alter: 38
Homepage: cback.net
Beiträge: 17684
Dabei seit: 12 / 2003
Betreff:

Re: E-Mails werden nicht mehr versandt

 · 
Gepostet: 20.02.2025 - 13:56 Uhr  ·  #6
Hi Raimund,

nutzt ihr denn das Zwirnis Mailer Plugin für den Versand? Und/oder wurde vielleicht auch noch einen Eingriff an einer Originaldatei durchgeführt? Falls ja würde ich das mal deaktivieren, da dies ja eine ganz eigene Art des Versands macht und die kenne ich natürlich nicht. Das ist ja von einem Drittanbieter. Achtet auch ggf. darauf, ob sich das Plugin auch korrekt überall deinstalliert oder ob es vielleicht noch Reste in der Hooks-Table hinterlässt und dadurch das Problem verursacht wird. (Weil ihr mit den Versandproblemen gerade ein Unikat seid :D) - Oder macht es generell mit und ohne keinen Unterschied?

Aber danke für die Rückmeldung! Ich kann zumindest die Änderung jetzt mit dem Code nicht unbedingt nachvollziehen, da die Mails ja durchaus auch HTML Mails sein dürfen. Der Hinweis auf den Header mit der MIME Version ist allerdings interessant. Ich kann das jetzt auf meinen Testsystemen nicht nachstellen, dass er nicht sendet (ebenfalls mit 8.2 versucht), aber halte mich da mal auf dem Laufenden, falls das tatsächlich die Ursache ist, bzw. wo der Zusammenhang herkommt. Normalerweise wäre der Header ja mehr für das Ziel interessant, nicht für den sendmail.

Lässt Wordpress die MIME Version im Header weg?
Ansonsten sendet WP ja auch HTML Mails, soweit mir bekannt ist. Das sollte eigentlich also nicht stören.

Viele Grüße,
Chris
Raimund
Benutzer
Avatar
Geschlecht: keine Angabe
Alter: 57
Beiträge: 31
Dabei seit: 11 / 2013
Betreff:

Re: E-Mails werden nicht mehr versandt

 · 
Gepostet: 21.02.2025 - 00:02 Uhr  ·  #7
Hallo Chris,
achso, nein, wir haben Zwirnis Mailer nicht installiert, ich hatte dies nur als Erweiterung gefunden, als ich nach einer Lösung gesucht hatte. Die code-Verwandtschaft zu Wordpress war mir dann lediglich aufgefallen.

Eine der letzten WP-Mail hatte dies im Header:
X-Mailer: PHPMailer 6.9.2 (https://github.com/PHPMailer/PHPMailer)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Es ist echt mysteriös, also zumindest für mich mit meinem 1/3 Halbwissen, es müsste wirklich gehen.
Unser Hoster ist eigentlich genauso vorbildlich und flott im Support wie du, es gibt also von dort wohl keine einfache Antwort, sonst hätte ich die sicherlich längst.
Wenn ich was neues herausfinde, melde ich mich wieder.
Man lernt immerhin einiges bei der Fehler-Recherche und den Tests, php kann ich ja nicht wirklich.
LG
Raimund
cback
Admin
Avatar
Geschlecht:
Herkunft: Saarland
Alter: 38
Homepage: cback.net
Beiträge: 17684
Dabei seit: 12 / 2003
Betreff:

Re: E-Mails werden nicht mehr versandt

 · 
Gepostet: 21.02.2025 - 14:35 Uhr  ·  #8
Hallo Raimund,
Zitat
vorbildlich und flott im Support wie du

Zunächst einmal: Herzlichen Dank dafür! Das hört man gerne.


Was den Header betrifft:
WordPress nutzt also auch die Angabe der MIME-Version. Ansonsten hätte ich mich offen gestanden auch etwas gewundert.

Es gibt hier also nur drei Unterschiede zum CF4:
  • WordPress verschickt seine Mails als text/plain, während das CF4 es als text/html verschickt
  • WordPress verwendet 8bit beim Transfer-Encoding, das CF4 hat es auf 7bit
  • WordPress fügt noch den X-Mailer hinzu, der aber vernachlässigt werden kann (ist im Grunde nur "Hey ich bin der Versender"-Werbung, hat aber keine Versand-Relevanz)



Meine letzten Ideen für die Fehlersuche auf CF4-Seite wären also:
  • versuche mal das Content-Transfer-Encoding: 7bit in der oben genannten Datei EMail.class.php mit dem Content-Transfer-Encoding: 8bit zu ersetzen, ob es hier einen Unterschied gibt. Würde mich allerdings überraschen

  • könnte es sein, dass irgend ein Sicherheitssystem auf dem Server Mails blockt, die als HTML versendet werden? Davon hätte ich auch noch nichts gehört, aber man sollte es im Kopf behalten. Normalerweise sollte das egal sein, da es wiederum nur eine Info für den Empfänger ist. Wenn da etwas nicht passen würde, wäre die E-Mail Darstellung falsch, aber der Versand würde ohne Probleme stattfinden. Vielleicht gibt es aber ja aber inzwischen irgendein Hosterseitiges "Spamschutz"-System auf dem Server, welches das Forum versehentlich als Schadscript eingestuft hat, je nachdem, wie viele Mails durch das Forum am Tag verschickt werden. In diesem Fall könnte man vielleicht das Forum / das Script whitelisten.



Ansonsten hätte ich für die Fehlersuche da leider keine Ideen mehr. Ich hab es jetzt nochmal auf Testsystemen mit Windows, Ubuntu und macOS versucht über Postfix und PHP 8.2, die Mails gehen immer durch und das Ziel gibt die Header auch als valide an. Kann also leider nicht mehr sagen, wo man auf CF4 Seite noch etwas justieren könnte, um das Problem anzugehen.

Hoffe, Euer Hoster hat Serverseitig vielleicht noch eine Idee.

Viele Grüße und ein schönes Wochenende,
Chris
Gewählte Zitate für Mehrfachzitierung:   0

Registrierte in diesem Topic

Aktuell kein registrierter in diesem Bereich

Die Statistik zeigt, wer in den letzten 5 Minuten online war. Erneuerung alle 90 Sekunden.