PHP: Warum wird Mail nicht gesendet?
PHP-Vers.=[5.6.40-0+deb8u1]
$headers = [];
$headers[] = "MIME-Version: 1.0";
$headers[] = "Content-Type: text/html; charset=UTF-8";
$headers[] = "From: example <info@example.com>";
$result = mb_send_mail( "info@example.com", "Test", "Hallo", implode("\r\n", $headers) );
if ( !$result ) {
echo "Nicht gesendet<br>";
}
Statt example.com steht eine gültige Mail-Adresse
Ohne Fehlermeldungen kann man da gar nichts zu sagen, es kann viele Gründer haben.
Lt. PHP-Handbuch gibt mb_send_mail nur true oder false zurück, sonst wäre ich wohl auch weiter.
Returns
true
on success or
false
on failure.
1 Antwort
PHP-Vers.=[5.6.40-0+deb8u1]
Völlig veraltet und daher dringend zu aktualisieren!
Und das betrifft sowohl PHP 5.6 als auch Debian 8.1x (welches von 2015 ist).
Wenigstens PHP 8.1 und Debian 12 wären hier geistreich.
Im Übrigen kannst du in der PHP-Logdatei nachlesen, ob und welcher Fehler aufgetreten ist.
Gerade wenn ein großes Projekt läuft, dann sollte man das mal dringend aktualisieren!
Wenn das Projekt im Internet hängt dauert es wahrscheinlich nicht mehr lange bis der Server verschlüsselt wird. Auch wenn Aktualisierungen aufwändig sind, sind sie irgendwann notwendig. Einen solchen Server zu betreiben kann man schon fast als fahrlässig bezeichnen. Wenn das nur irgendwo intern hängt ist das immernoch eine sehr schlechte Idee, aber nicht ganz so dramatisch
auf dem Rechner läuft ein großes Projekt seit 2008, die Aktualisierung wäre sehr aufwändig und fehleranfällig.
Ich könnte von einem aktuellen Server diese alte DB abfragen ... mal nachdenken