// comment corriger
Gmail « 550-5.7.1 ... is not RFC 5322 compliant » : corriger les en-têtes absents ou en double
Gmail a refusé votre email car ses en-têtes ne respectent pas la norme RFC 5322 : From, Date ou Message-ID absent ou en double. Voici comment corriger.
Ce que ça veut dire
Chaque email possède une partie en-têtes avec des champs comme From, To, Date, Subject et Message-ID. La RFC 5322 est la norme qui définit comment ces en-têtes doivent être écrits. Gmail refuse les emails qui enfreignent les règles de base. Le message d'erreur ressemble généralement à ceci :
550-5.7.1 [203.0.113.10] Our system has detected that this message is not 550-5.7.1 RFC 5322 compliant: 550-5.7.1 'From' header is missing. 550-5.7.1 To reduce the amount of spam sent to Gmail, this message has been 550-5.7.1 blocked. Please visit 550-5.7.1 https://support.google.com/mail/?p=RfcMessageNonCompliant 550 5.7.1 and review RFC 5322 specifications for more information.
La ligne du milieu indique ce qui ne va pas, par exemple Multiple 'From' headers found ou un en-tête absent ou invalide. Lisez-la attentivement : c'est la clé de la correction.
Pourquoi cela arrive
Cette erreur vient presque toujours d'une application, d'un script ou d'une extension qui fabrique les emails lui-même, plutôt que d'un logiciel de messagerie classique :
- Pas d'en-tête From, ou un From avec une adresse invalide (espaces, domaine manquant, guillemets incorrects autour du nom affiché).
- En-têtes en double : deux lignes From, Subject, To ou Date, souvent parce que le code ajoute un en-tête que la bibliothèque d'envoi ajoute déjà.
- Date ou Message-ID absent, ou une Date au mauvais format.
- En-têtes mal formés : lignes mal encodées, caractères non ASCII sans encodage dans un en-tête, ou saut de ligne cassé qui mélange les en-têtes avec le corps du message.
Comment vérifier
- Envoyez un email de test : sur la page d'accueil de Delivmail (
/), copiez votre adresse de test unique et envoyez-lui un email normal depuis le serveur, l'outil ou la boîte mail qui a reçu l'erreur. Ouvrez le rapport dès qu'il est prêt. - Examinez les en-têtes dans le rapport, ou affichez la source originale de l'email (dans Gmail, « Afficher l'original »). Vérifiez qu'il y a exactement un From, une Date, un Subject et un Message-ID.
- Examinez le code d'envoi. Cherchez les endroits où des en-têtes sont ajoutés à la main, comme des chaînes
From:concaténées dans des appels PHPmail().
Comment corriger
- Utilisez une vraie bibliothèque d'envoi (PHPMailer, Nodemailer, le module email de votre framework) au lieu de construire les en-têtes en texte. Ces bibliothèques ajoutent Date et Message-ID et encodent correctement les en-têtes.
- Définissez exactement une adresse From au bon format, par exemple :
From: Your Shop <orders@yourdomain.com>
Mettez entre guillemets les noms affichés qui contiennent des virgules ou des caractères spéciaux. - Supprimez les en-têtes en double. Si la bibliothèque définit déjà From ou Subject, ne les ajoutez pas une seconde fois dans une liste d'en-têtes personnalisés.
- Ajoutez une Date et un Message-ID si votre système ne le fait pas. Un Message-ID ressemble à
<unique-id@yourdomain.com>. - Encodez les caractères accentués et non anglais dans le Subject et les noms grâce à l'encodage intégré de votre bibliothèque.
- Utilisez les bonnes fins de ligne (CRLF) entre les en-têtes, et une ligne vide entre les en-têtes et le corps.
- Mettez à jour vos extensions (extensions WordPress de formulaire ou SMTP, modules de boutique) : les anciennes versions causent souvent ces erreurs.
Vérifiez que c'est corrigé
Envoyez un nouvel email depuis la même application vers une nouvelle adresse de test Delivmail et contrôlez les en-têtes dans le rapport. Quand ils sont corrects, renvoyez l'email à l'adresse Gmail qui l'avait refusé. Pour cette erreur, il n'y a pas de délai lié à la réputation : dès que les en-têtes sont valides, Gmail cesse de refuser pour cette raison.
Vérifiez que c'est corrigé
Une modification DNS peut prendre de quelques minutes à quelques heures. Ensuite, envoyez un nouvel email de test ou scannez à nouveau votre domaine.
Fiches liées
- Exigences de Gmail et Yahoo pour les envois en masseDepuis 2024, Gmail et Yahoo exigent des gros expéditeurs qu'ils authentifient leurs emails, proposent la désinscription en un clic et gardent un taux de plaintes pour spam très bas. Voici la liste à cocher.
- Vos emails arrivent dans le dossier spam de GmailQuand Gmail envoie vos emails en spam, la cause est presque toujours l'authentification, la réputation ou le contenu. Voici comment trouver laquelle et la corriger.
- Erreur Gmail « 550 5.7.26 » : email non authentifiéGmail a refusé votre email parce qu'il n'a pas pu confirmer qu'il vient de votre domaine. Le SPF, le DKIM ou le DMARC est absent ou en échec. Voici comment corriger.
- Erreur « 550 5.7.1 » : message refusé ou bloqué par une règleUne erreur 5.7.1 signifie que le serveur de réception a refusé votre email volontairement. Apprenez à lire les messages d'erreur, à trouver la vraie raison et à la corriger.
- Ajouter un en-tête List-Unsubscribe (désinscription en un clic)L'en-tête List-Unsubscribe permet à Gmail, Yahoo et Outlook d'afficher un bouton Se désabonner à côté de votre nom d'expéditeur. Les expéditeurs en masse doivent le proposer en un clic.