Salut à tous.

Je viens de remonter un serveur Fedora 39 sur lequel j’ai migré un site qui tournait sans souci sous Fedora 27.

Tout fonctionne à part l’envoi de mail qui se comporte de façon étrange.

Je précise que j’utilise le SMTP de IONOS.

Voici mon script php :

<?
	$to      = 'manquit@gmail.com';
	$subject = 'Mon sujet';
	$message = 'Salut tout le monde !';
	$headers = 'From: webmaster@calypsum.com' . "\r\n" .
			Reply-To: webmaster@calypsum.com' . "\r\n" .
			X-Mailer: PHP/' . phpversion();
	mail($to, $subject, $message, $headers);
?>

… et voici ce que je reçois :

Salut tout le monde !
Message-ID: `[`<1MVJZv-1sKCGH31tf-00SKrw@mrelayeu.kundenserver.de>`](mailto:1MVJZv-1sKCGH31tf-00SKrw@mrelayeu.kundenserver.de)`
X-Provags-ID: V03:K1:gV2mj5Ms5QV6J7UxpVBM5h7XLHHKR42ywo4FLwBc15+rrYZxhkn
 id6ZPll88U4guzpsKPJP6amWZVd+Uh4pbqbD16/nf97SkWmixYiXYynxo0d41Npc96J4HFW
 TOcyJFNG9dzpC2jWmcoy0hNhSkVfFjqLxWS1wSulZBvhdY/u5eGI+4Vuovh6t2npsRoUrMR
 pjZJxPvSDAEGRumcao96w==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:tZX3KB7u+0E=;YdGYXWjGN2EDrUNguIBzpaexW8k
 HIdGcR6z/mEhRi+1K7EOEl58Cuuu+SuKuCMiXnqmBnGookqYgqp/5n2MDWp7T6FxKnsbYFwm0
 IkqzShGNGtxmHnVKvc2wqX0F+OCC18HzWqgtr3y+d6Jncdqjrqu4zRg+cR7mcE5PpOZ3hj8ac
 HybOcBtruz4ZMaI0qxAQc1SLH2UpVlRBprEzEFIzIsHDbufmfIQ9/F6i1kLaNV16/lxp+1p87
 /40M5ihK12D0gPeekf40fXzTQGG8pqgnZ1iuxFx3SwSFi5Uscw7BKXZMxE2VvhN5MW9bXWCoS
 PlKnn2ICSa4Oes+Xt6TwgHAriQiolXmZk6XlFZAefrY1yLzYhQvjCebN7xRQBK3P53wuzWuz8
 CCbxZh2+vtIBX+rBcaqlqHWJ9YNYepRgHc2Ta9AT6LarBS2H3T3FgBjfxflbrDBnHUUovgILk
 o/PMSLll9fcmSslMPfvVJCsW5JANQ8uZaBaSur3LKzmWgR8dFElvIMlnsxwhGTbObBpOjWCiV
 KPl5ZIpx2hTWM1jbZcxTiuH6199sO+2Iu13ESSGuyw2+MZc1/JyTkGjjziez8DzN55pDvfVlJ
 xAc7alu4alIDg5b0n1PKEal1YfOk9xpjvDK0hVOFCwLlTDJDZOvOnbKcL8pokepIavlJftkJV
 AMKQ9/DZXBl3u3k46AqbKx2DBeX0j1kdkWgVdldv1CvwG1Du84ANNHoRTGeql+q2yRpu7RGE2
 q59/LfQsfsiMGJVU31uoZ3LLQPPGBjTyKwY3zBTMXDkiyXwFiEwV4Q8NAQqnRxsrzw9ql9ogZ
 sdV49/Or4/xb/GGZioMHHWRdEN138bnoLDf66bCJokBwk4nw4Whc4Snyl2FNQpgnlB7FKf4pw
 VuyH0weFiyZFCzYOk1EFYUfK3YYruSWxFIAdg2L9ZxXCk/QegtPjv880E

Pourquoi tout ce baratin ?

Merci.

Edit Nicosss : Correction balises Markdown -> Voir FAQ

    • Meilleure réponsesélectionnée par kinesra

    Bon ben je me réponds à moi-même.

    Après moulte recherches sur le net et quinze mille essais, j’ai finalement résolu le problème en incluant des frontières (“boundaries”) dans mon mail.

    Ce code fonctionne :

    <?
    	$to = "manquit@gmail.com"; 
    	$subject = "Essai mail PHP"; 
    	$msg= "<center><h2><br />Voici le beau message</h2></center>";
    	$boundary = md5(date('r', time()));
    	$headers = "MIME-Version: 1.0\r\n";
    	$headers .= "From: Administrateur <webmaster@calypsum.com>\r\n";
    	$headers .= "Reply-To: noreply@calypsum.com\r\n";
    	$headers .= "Return-Path: noreply@calypsum.com\r\n";
    	$headers .= "Content-Type: multipart/mixed; boundary=" . $boundary . "\r\n";
    	$message = "\r\n--" . $boundary . "\r\n"; 
    	$message .= "Content-type: text/html; charset=\"utf-8\"\r\n";
    	$message .= "Content-Transfer-Encoding: 7bit\r\n\r\n";
    	$message .= $msg."\r\n";
    	$message .= "\r\n--" . $boundary . "--";
    	$mail_sent = @mail($to, $subject, $message, $headers); 
    	echo $mail_sent ? "<center><h2><br />Message envoyé !</h2></center>" :"Echec !";	
    ?>

    En espérant avoir aidé.

    Edit Nicosss : Correction balises Markdown -> Voir FAQ

Bon ben je me réponds à moi-même.

Après moulte recherches sur le net et quinze mille essais, j’ai finalement résolu le problème en incluant des frontières (“boundaries”) dans mon mail.

Ce code fonctionne :

<?
	$to = "manquit@gmail.com"; 
	$subject = "Essai mail PHP"; 
	$msg= "<center><h2><br />Voici le beau message</h2></center>";
	$boundary = md5(date('r', time()));
	$headers = "MIME-Version: 1.0\r\n";
	$headers .= "From: Administrateur <webmaster@calypsum.com>\r\n";
	$headers .= "Reply-To: noreply@calypsum.com\r\n";
	$headers .= "Return-Path: noreply@calypsum.com\r\n";
	$headers .= "Content-Type: multipart/mixed; boundary=" . $boundary . "\r\n";
	$message = "\r\n--" . $boundary . "\r\n"; 
	$message .= "Content-type: text/html; charset=\"utf-8\"\r\n";
	$message .= "Content-Transfer-Encoding: 7bit\r\n\r\n";
	$message .= $msg."\r\n";
	$message .= "\r\n--" . $boundary . "--";
	$mail_sent = @mail($to, $subject, $message, $headers); 
	echo $mail_sent ? "<center><h2><br />Message envoyé !</h2></center>" :"Echec !";	
?>

En espérant avoir aidé.

Edit Nicosss : Correction balises Markdown -> Voir FAQ

    kinesra J’ai corrigé tes messages concernant l’utilisation du bloc code en Markdown.

    Je t’invite vivement à lire les Conditions d’utilisation dont le lien est aussi en bas de page ainsi que plus particulièrement la FAQ du Forum. Merci par avance afin de faciliter la lisibilité.

    Merci de ton retour.
    En effet, il y a eu pas mal d’évolutions dans les versions de PHP, surtout depuis la version fournie avec F27.
    Il est possible que tu rencontres d’autres soucis d’ailleurs.

    Pense à sélectionner la meilleure réponse pour passer la discussion en résolue.

    Bonne continuation !