Nous utilisons des cookies pour améliorer votre expérience de visite de notre site Web. Pour plus d'informations, Cliquez ici.
Mentions légales
×

Vue d'ensemble de la vie privée

Ce site utilise des cookies afin que nous puissions vous fournir la meilleure expérience utilisateur possible. Les informations sur les cookies sont stockées dans votre navigateur et remplissent des fonctions telles que vous reconnaître lorsque vous revenez sur notre site Web et aider notre équipe à comprendre les sections du site que vous trouvez les plus intéressantes et utiles.

Vous pouvez régler tous vos paramètres de cookies en naviguant sur les onglets sur le côté gauche.

Nom du cookieAcceptez
GDPR PRO - Règlement sur la protection des données générales - tout en 1 Ce module aide le site adevenir conforme à la norme RGPD en ajoutant les fonctionnalités conformes à la loi.
unknown

Comment corriger message "expected response code 220 but got an empty response" sur Prestashop ?

tout servces prestashop

1. Corriger l’erreur PrestaShop "expected response code 220 but got an empty response" en vérifiant la configuration SMTP de l’email

Cette erreur apparaît souvent lorsque PrestaShop essaie d’envoyer un email via un serveur SMTP mal configuré. Le code 220 est le signal d’accueil du serveur SMTP, et s’il est absent, cela signifie que PrestaShop ne reçoit aucune réponse du serveur. Vérifiez votre configuration dans Paramètres avancés > Email. Assurez-vous que le nom d’hôte SMTP, le port, le chiffrement (TLS/SSL), le nom d’utilisateur et le mot de passe sont corrects.

De nombreux fournisseurs d’emails comme Gmail, Outlook ou OVH nécessitent une configuration spécifique. Une mauvaise combinaison de port (par exemple 587 avec SSL) peut entraîner une absence de réponse. Testez avec différents ports : 465 (SSL) ou 587 (TLS), selon ce qui est recommandé par votre fournisseur. En cas de doute, essayez aussi de passer au mode PHP mail temporairement pour diagnostiquer si le problème vient bien du serveur SMTP.


2. Résoudre "expected response code 220 but got an empty response" en autorisant les connexions sortantes SMTP sur votre hébergeur

Ce message peut survenir si votre hébergeur bloque les connexions sortantes vers des serveurs SMTP externes. Certains hébergeurs mutualisés bloquent par défaut les ports 465 et 587 pour des raisons de sécurité. Cela empêche PrestaShop de recevoir la réponse 220 attendue du serveur SMTP, d’où l’erreur.

Vérifiez dans le panneau de configuration de votre hébergement s’il existe une option pour autoriser les connexions SMTP sortantes. Sinon, contactez le support technique de votre hébergeur pour demander explicitement l’ouverture des ports nécessaires. Vous pouvez également tester la connectivité avec un script PHP de test SMTP ou un outil tel que telnet pour valider si la connexion sortante fonctionne réellement.


3. Vérifier les restrictions de pare-feu pour résoudre l’erreur PrestaShop "expected response code 220 but got an empty response"

Les pare-feux au niveau du serveur ou du réseau peuvent bloquer les connexions SMTP, entraînant cette erreur. Si vous êtes sur un VPS ou un serveur dédié, il est possible que les ports nécessaires ne soient pas ouverts. Assurez-vous que les ports SMTP standards (25, 465, 587) sont bien autorisés dans les règles de pare-feu.

Utilisez une commande comme ufw allow 587/tcp ou modifiez votre configuration iptables pour autoriser le trafic sortant. Une fois les ports ouverts, redémarrez votre serveur mail si nécessaire. Vous pouvez aussi utiliser telnet smtp.votredomaine.com 587 pour tester la connectivité. Si vous recevez une réponse 220, alors le problème est résolu côté réseau, et PrestaShop devrait pouvoir se connecter.


4. Corriger l’erreur SMTP "expected response code 220 but got an empty response" en activant l’authentification SMTP sur votre compte mail

L’erreur peut survenir si vous essayez de vous connecter à un serveur SMTP sans authentification alors qu’elle est obligatoire. De nombreux services de messagerie exigent une authentification forte pour autoriser l’envoi de mails via SMTP. Si cette étape est omise, le serveur refusera la connexion et ne renverra pas le code 220.

Accédez à votre interface PrestaShop, puis allez dans Paramètres Avancés > Email. Activez l’authentification SMTP et entrez vos identifiants de messagerie. Assurez-vous également que le mot de passe est correct et à jour. Certains fournisseurs comme Gmail exigent la création d’un mot de passe d’application spécifique, que vous devez utiliser à la place de votre mot de passe principal.


5. Vérifier la présence d’un antivirus ou antispam bloquant les connexions SMTP dans PrestaShop

Un logiciel antivirus ou un pare-feu local installé sur votre machine ou serveur peut interférer avec les connexions SMTP. Dans ce cas, PrestaShop ne reçoit aucune réponse du serveur de mail, et l’erreur "expected response code 220 but got an empty response" apparaît. Ce problème est courant sur les serveurs Windows avec des antivirus restrictifs.

Désactivez temporairement l’antivirus pour tester si la connexion SMTP fonctionne sans lui. Si l’erreur disparaît, ajoutez une exception dans les paramètres de sécurité de l’antivirus pour autoriser les connexions sortantes sur les ports SMTP. Il est aussi possible que ce soit un service antispam intégré au serveur mail qui rejette silencieusement les connexions non reconnues.


6. Résoudre l’erreur SMTP PrestaShop en testant un autre fournisseur de messagerie (Gmail, Mailjet, Sendinblue)

Si vous avez tout vérifié sans succès, le problème peut venir du fournisseur SMTP lui-même. Certains hébergeurs de messagerie limitent les connexions ou ont des configurations spécifiques. Essayez de remplacer votre serveur SMTP actuel par un autre fournisseur de confiance comme Gmail, Mailjet ou Sendinblue.

Créez un compte sur l’un de ces services, configurez les identifiants SMTP, le port et le protocole (SSL/TLS), puis testez l’envoi dans PrestaShop. Si la connexion fonctionne avec un autre service, cela confirme que le problème initial venait du serveur SMTP précédent. Cette approche permet aussi de bénéficier d’un meilleur taux de délivrabilité pour les emails de votre boutique.


7. Corriger l’erreur SMTP "expected response code 220" en mettant à jour PrestaShop et sa bibliothèque SwiftMailer

PrestaShop utilise SwiftMailer pour envoyer des emails via SMTP. Si cette bibliothèque est obsolète ou corrompue, cela peut générer des erreurs de communication comme l'absence de réponse 220. Vérifiez que votre version de PrestaShop est à jour et que les fichiers de SwiftMailer n’ont pas été modifiés.

Vous pouvez aussi tenter de supprimer puis réinstaller le dossier /vendor/swiftmailer via Composer si vous utilisez un environnement de développement avancé. Une mise à jour globale de PrestaShop permet également de corriger ce type de bug. N’oubliez pas de vider le cache après chaque mise à jour pour éviter les conflits de configuration ou les appels aux anciennes bibliothèques.


8. Diagnostiquer l’erreur "empty response" dans PrestaShop en activant le mode debug pour plus de détails SMTP

Lorsque PrestaShop affiche une erreur générique, il est souvent utile d’activer le mode debug pour obtenir davantage de détails techniques. Cela peut vous permettre de voir exactement à quel moment l'échange SMTP échoue. Dans le fichier defines.inc.php, modifiez la ligne define('_PS_MODE_DEV_', false); en true.

Rechargez ensuite la page contenant l’erreur d’envoi d’email. Le message complet contiendra plus d’informations sur la nature exacte du problème : échec de connexion, erreur SSL, ou réponse vide. Cela vous aidera à cibler plus précisément le correctif à appliquer, que ce soit au niveau du serveur, des ports, ou de la configuration SMTP.


9. Utiliser un plugin SMTP externe pour contourner l’erreur "expected response code 220 but got an empty response" dans PrestaShop

Si la configuration SMTP intégrée ne fonctionne pas malgré toutes vos tentatives, envisagez d’utiliser un module SMTP externe pour PrestaShop. Des modules comme "Advanced SMTP" ou "SMTP Mailer" offrent une meilleure gestion des erreurs et un système de logs détaillé qui peut aider à identifier le problème.

Installez un plugin depuis le Marketplace de PrestaShop ou directement via FTP, puis entrez vos paramètres SMTP. Ces modules permettent souvent de tester la connexion directement depuis leur interface et de voir la réponse du serveur, y compris l’absence de réponse 220. Cela peut grandement faciliter le diagnostic et la résolution du problème.


10. Corriger définitivement l’erreur SMTP 220 de PrestaShop en passant par un service SMTP transactionnel professionnel

Pour éviter les erreurs de réponse SMTP comme celle-ci à long terme, envisagez de passer à un service SMTP transactionnel dédié comme Amazon SES, SendGrid ou Mailgun. Ces services sont conçus pour envoyer des volumes importants de mails avec fiabilité, et offrent des outils de diagnostic précis.

Une fois inscrit, vous obtiendrez des identifiants SMTP spécifiques que vous pouvez intégrer dans PrestaShop. En plus de réduire les risques d’erreur, ces plateformes fournissent des tableaux de bord permettant de suivre les envois, les erreurs, les rebonds, etc. C’est une solution idéale pour les boutiques avec un volume d’emailing croissant.