Mailer Error: SMTP Error: Could not connect to SMTP host
juliendu51100
Messages postés
442
Date d'inscription
Statut
Membre
Dernière intervention
-
juliendu51100 Messages postés 442 Date d'inscription Statut Membre Dernière intervention -
juliendu51100 Messages postés 442 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je vous poste ce message aujourd'hui car depuis deux jours j'ai un soucis qui est survenu que je peine à corriger..
Je m'explique :
j'utilise depuis quelques temps sur mon site PHPMailer qui fonctionnais plutôt bien mais depuis deux jours je n'ai plus de mail qui s'envoi depuis mon serveur VPS d'OVH..
Cependant cela fonctionne toujours sur mon serveur XAMPP en local !
je ne comprend pas vraiment d'où cela peux venir..
Voici le message d'erreur : "Mailer Error: SMTP Error: Could not connect to SMTP host.Le Message n'a pas été envoyé."
Voici le code
EDIT : Ajout du LANGAGE dans les balises de code pour avoir la coloration syntaxique et l'indentation.
Explications sur les balises de code à lire ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Merci d'avance pour votre aide :D
je vous poste ce message aujourd'hui car depuis deux jours j'ai un soucis qui est survenu que je peine à corriger..
Je m'explique :
j'utilise depuis quelques temps sur mon site PHPMailer qui fonctionnais plutôt bien mais depuis deux jours je n'ai plus de mail qui s'envoi depuis mon serveur VPS d'OVH..
Cependant cela fonctionne toujours sur mon serveur XAMPP en local !
je ne comprend pas vraiment d'où cela peux venir..
Voici le message d'erreur : "Mailer Error: SMTP Error: Could not connect to SMTP host.Le Message n'a pas été envoyé."
Voici le code
function sendmail($objet, $contenu, $destinataire, $valeur) { // on crée une nouvelle instance de la classe $mail = new PHPMailer(true); $mail->CharSet = "UTF-8"; // puis on l’exécute avec un 'try/catch' qui teste les erreurs d'envoi try { /* DONNEES SERVEUR */ ##################### $mail->setLanguage('fr', 'PHPMailer/language/'); // pour avoir les messages d'erreur en FR // $mail->SMTPDebug = 0; // en production (sinon "2") $mail->SMTPDebug = 2; // décommenter en mode débug $mail->isSMTP(); // envoi avec le SMTP du serveur $mail->Host = 'SSL0.OVH.NET'; // serveur SMTP $mail->SMTPAuth = true; // le serveur SMTP nécessite une authentification ("false" sinon) $mail->Username = 'postmaster@xxxxx.fr'; // login SMTP $mail->Password = 'xxxxxxx'; // Mot de passe SMTP $mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS; // encodage des données TLS (ou juste 'tls') > "Aucun chiffrement des données"; sinon PHPMailer::ENCRYPTION_SMTPS (ou juste 'ssl') $mail->Port = 587; // port TCP (ou 25, ou 465...) /* DONNEES DESTINATAIRES */ ########################## $mail->setFrom('postmaster@xxxxxxx', 'xxxxxxxxxxx'); //adresse de l'expéditeur (pas d'accents) $mail->addAddress($destinataire, ''); // Adresse du destinataire (le nom est facultatif) // $mail->addReplyTo('moi@mon_domaine.fr', 'son nom'); // réponse à un autre que l'expéditeur (le nom est facultatif) // $mail->addCC('cc@example.com'); // Cc (copie) : autant d'adresse que souhaité = Cc (le nom est facultatif) // $mail->addBCC('bcc@example.com'); // Cci (Copie cachée) : : autant d'adresse que souhaité = Cci (le nom est facultatif) /* PIECES JOINTES */ ########################## // $mail->addAttachment('../dossier/fichier.zip'); // Pièces jointes en gardant le nom du fichier sur le serveur // $mail->addAttachment('../dossier/fichier.zip', 'nouveau_nom.zip'); // Ou : pièce jointe + nouveau nom /* CONTENU DE L'EMAIL*/ ########################## $mail->isHTML(true); // email au format HTML $mail->Subject = utf8_decode($objet); // Objet du message (éviter les accents là, sauf si utf8_encode) $mail->Body = $contenu; // corps du message en HTML - Mettre des slashes si apostrophes $mail->AltBody = ''; // ajout facultatif de texte sans balises HTML (format texte) $mail->charSet = "UTF-8"; $mail->send(); // echo 'Message envoyé.'; } // si le try ne marche pas > exception ici catch (Exception $e) { echo "Le Message n'a pas été envoyé. Mailer Error: {$mail->ErrorInfo}"; // Affiche l'erreur concernée le cas échéant } } // fin de la fonction sendmail.
EDIT : Ajout du LANGAGE dans les balises de code pour avoir la coloration syntaxique et l'indentation.
Explications sur les balises de code à lire ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Merci d'avance pour votre aide :D
A voir également:
- Could not connect to host traduction
- Mailer-daemon@googlemail.com - Forum Gmail
- Fan error lenovo - Forum Refroidissement
- Cmos checksum error ✓ - Forum Carte-mère/mémoire
- Playback error reconnect in 3s (1/5) francais - Forum Box et Streaming vidéo
- Error 1962 ✓ - Forum PC fixe
4 réponses
Panth33ra
Messages postés
22097
Date d'inscription
Statut
Membre
Dernière intervention
Ambassadeur
2 006
Bonjour,
Une réponse ici... https://forums.commentcamarche.net/forum/affich-31104911-phpmailer-pas-d-envoi-de-mail-pas-d-erreur-pas-d-info
Une réponse ici... https://forums.commentcamarche.net/forum/affich-31104911-phpmailer-pas-d-envoi-de-mail-pas-d-erreur-pas-d-info
Essaye en ssl au lieu de tls
Sinon, tu peux tester en mail sans smtp
$m->SMTPSecure = 'ssl'; $m->Port = "465";
Sinon, tu peux tester en mail sans smtp
$mail = new PHPMailer(); $mail->IsMail(); $mail->From=$from; $mail->setFrom('postmaster@xxxxxxx', 'xxxxxxxxxxx'); //adresse de l'expéditeur (pas d'accents) $mail->addAddress($destinataire, ''); // Adresse du destinataire (le nom est facultatif) $mail->CharSet = "utf-8"; $mail->isHTML(true); // email au format HTML $mail->Subject = utf8_decode($objet); // Objet du message (éviter les accents là, sauf si utf8_encode) $mail->Body = $contenu; if ($mail->Send()) { echo " ok!"; } else { echo "Le Message n'a pas été envoyé. Mailer Error: {$mail->ErrorInfo}"; }
Bonjour,
Tu indiques qu'en local ça fonctionne..... avec les mêmes identifiants ??
Car, vu le message d'erreur,
Cela pourrait signifier que les informations de connexion ne sont pas les bonnes... ou qu'OVH rencontre un souci....
Tu indiques qu'en local ça fonctionne..... avec les mêmes identifiants ??
$mail->Host = 'SSL0.OVH.NET'; // serveur SMTP $mail->SMTPAuth = true; // le serveur SMTP nécessite une authentification ("false" sinon) $mail->Username = 'postmaster@xxxxx.fr'; // login SMTP $mail->Password = 'xxxxxxx'; // Mot de passe SMTP $mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS; // encodage des données TLS (ou juste 'tls') > "Aucun chiffrement des données"; sinon PHPMailer::ENCRYPTION_SMTPS (ou juste 'ssl') $mail->Port = 587;
Car, vu le message d'erreur,
Could not connect to SMTP host.
Cela pourrait signifier que les informations de connexion ne sont pas les bonnes... ou qu'OVH rencontre un souci....
je viens de réussir à les avoir, ils m'ont dit qu'il n'avaient pas bloqué les ports de leurs côté et qu'ils ne pouvais rien pour moi.
pour les logs d'apache voici les lignes d'erreurs que j'ai pour aujourd'hui..
J'ai fais la commande : tcpdump -i eth0 port 587
la capture avec plein de ligne c'est quand je fais ma demande d'envoie de mail depuis internet et quand sa ne fonctionne pas..

la seconde capture c'est quand je fait ma requête sur mon serveur de test avec la même requête mais qui fonctionne cette fois ^^"

pour l'envoie de mail sans smtp le problème est le même..
pour les logs d'apache voici les lignes d'erreurs que j'ai pour aujourd'hui..
[Fri Jul 31 00:00:04.322028 2020] [mpm_prefork:notice] [pid 531] AH00163: Apache/2.4.38 (Debian) OpenSSL/1.1.1d configured -- resuming normal operations
[Fri Jul 31 00:00:04.322065 2020] [core:notice] [pid 531] AH00094: Command line: '/usr/sbin/apache2'
[Fri Jul 31 01:36:45.501054 2020] [php7:error] [pid 20394] [client 37.187.75.16:64233] script '/var/www/intra-ca/favoris/wp-login.php' not found or unable to stat
[Fri Jul 31 01:53:09.602244 2020] [php7:error] [pid 20395] [client 5.188.210.227:59249] script '/var/www/html/echo.php' not found or unable to stat, referer: https://www.google.com/
J'ai fais la commande : tcpdump -i eth0 port 587
la capture avec plein de ligne c'est quand je fais ma demande d'envoie de mail depuis internet et quand sa ne fonctionne pas..

la seconde capture c'est quand je fait ma requête sur mon serveur de test avec la même requête mais qui fonctionne cette fois ^^"

pour l'envoie de mail sans smtp le problème est le même..
je viens de regarder scrupulesement mais j'ai un soucis que je viens de m'appercevoir..
Je n'ai aucun echo ou print_r qui s'affiche :/..
Une idée ?