Configurer le paramètre return-path correctement pour Wordpress sur les serveurs Kinamo

Dernière mise à jour sur 6 sept. 2023 à 13:16:48.
Catégorie: Platforme d'hébergement | Hébergement web questions techniques

Apache CentOS Debian PHP Sendmail SMTP Wordpress

Pourquoi les e-mails Wordpress ne sont parfois pas envoyés

Le problème avec les mails envoyés via Wordpress - que ce soit via le plugin Contact Form 7 ou autres - est la façon dont la fonction wp-mail (que tous ces plugins utilisent) envoie le courrier.


Wordpress utilise la fonction mail de PHP. L'envoi de courrier via la fonction PHP mail ne pose aucun problème, mais souvent l'en-tête return-path du message électronique n'est pas correct. Cela fait que les messages se retrouvent dans des dossiers de spam, des dossiers de courrier indésirable ou souvent même n'arrivent pas. Tout cela est fascinant, mais comment le résoudre ?

Le chemin de retour peut être défini au niveau du serveur, via php.ini, ou via un paramètre supplémentaire qui modifie l'en-tête From: passé à la fonction de messagerie PHP.
Étant donné que le courrier est envoyé sur une infrastructure d'hébergement qui utilise plusieurs serveurs Web, configurations PHP, etc., l'en-tête au niveau du site Web doit être défini correctement.

Pour expliquer brièvement quel est le problème : le courrier est envoyé via Wordpress sur le nom de domaine www.mijnwordpressblog.be, cependant le site Web lui-même fonctionne sur l'infrastructure Kinamo sur un cluster de serveurs, donc pour le serveur l'expéditeur n'est pas www.mijnwordpressblog. . être un seul des nœuds Web, par ex. web-php56-l01.hosting.kinamo.be.
Via les paramètres Wordpress, vous avez saisi votre adresse e-mail en tant qu'expéditeur (webmaster@mywordpressblog.be) mais cela ne suffit pas : pour le serveur de messagerie (MTA), par ex. postfix, l'en-tête return-path est quelque chose qui est ajouté s'il n'est pas présent, donc celui-ci le transforme en :
Return-Path: <apache@web-php56-lc0.hosting.kinamo.be>

Ce n'est évidemment pas correct car cela ne correspond pas à votre adresse webmaster@mywordpressblog.be.

La solution : un simple plugin Wordpress

Il existe plusieurs façons de résoudre ce problème. Le plus simple, cependant, consiste à utiliser un plugin, développé par Abdussamad.

Ce code définit l'en-tête du chemin de retour afin qu'il corresponde à l'en-tête De : et qu'il soit donc accepté par le serveur de messagerie et garantit qu'il ne se retrouve pas dans les dossiers de spam ou de courrier indésirable.

Copiez le code ci-dessous dans un nouveau fichier, nommez-le email_return_path.php et placez-le dans le répertoire wp-content/plugins/.
N'oubliez pas de vous connecter ensuite à l'administrateur Wordpress et d'activer le plugin !
<?php
/*
Plugin Name: Email Return Path Fix
Author: Abdussamad Abdurrazzaq
*/
class email_return_path {
 function __construct() {
 add_action( 'phpmailer_init', array( $this, 'fix' ) ); 
 }

function fix( $phpmailer ) {
 $phpmailer->Sender = $phpmailer->From;
}
}

new email_return_path();
?>

Have fun!


Articles connexes

Managed services in the spotlight

Our system administrators have lifted a couple of cargo ships filled with containers of work. (yes, that pun was on...

En savoir plus

Quelles sont les conditions pour enregistrer un nom de domaine .be?

Enregistrer un nom de domaine .be est simple. Toute personne physique ou morale peut enregistrer un nom de domaine .be...

En savoir plus

Apache - Désactiver SSL 2.0, SSL 3.0 et opter pour une configuration SSL moderne et sûre.

Cet article vous montre comment désactiver les protocoles SSL 2.0, SSL 3.0 et les anciennes versions de TLS sur votre...

En savoir plus

Besoin d'aide supplémentaire?

Vous n'avez pas obtenu de réponse à toutes vos questions?
Ne vous inquiétez pas, faites une demande d'assistance!

Kinamo

Sélectionnez votre langue

Toutes les langues: