IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

phpmailer sur debian 8


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mars 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mars 2017
    Messages : 6
    Points : 4
    Points
    4
    Par défaut phpmailer sur debian 8
    Salut à tous,

    J'ai pas mal parcouru le forum est j'ai remarqué que nombreux sont les utilisateurs qui proposent d'utiliser l'application phpmailer pour simplifier l'envoi d'email via des scripts php. Dernièrement je développe un site web en php utilisant la classe PDO pour communiquer avec ma base de donnée, j'utilise comme serveur web Xaamp. Pour accélérer le développement et les phases de test (confirmation de création de compte par-email etc..) j'ai décider de déployer mon site sur mon serveur dédié qui tourne sous debian 8.

    Le problème que je rencontre... lors de la création d'un compte sur mon site, un email est envoyé pour confirmer la création du compte. Le script ce lance parfaitement, sauf que dans ma boîte de réception il n'y a rien, hors sous windows avec xaamp, ma fonction phpmailer fonctionnait très bien.

    Il me manque quelque chose ? je confirme bien que ce n'est pas mon script qui est foireux, mais l'utilisation de phpmailer ne fait pas son boulot sur mon serveur.

    Pour info je n'ai pas installé de MTA, il n'y a que exim d'origine je n'ai rien touché.

    En vous remercient par avance

    ps mon fichier index.php dans le dossier phpmailer qui est appelé lors de l'envoi d'email :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    <?php
    require 'PHPMailerAutoload.php';
     
    $mail = new PHPMailer;
     
    $mail->SMTPDebug = 2;                               // Enable verbose debug output
     
    $mail->isSMTP();                                      // Set mailer to use SMTP
    $mail->Host = 'smtp.gmail.com';  // Specify main and backup SMTP servers
    $mail->SMTPAuth = true;                               // Enable SMTP authentication
    $mail->Username = 'monadresse@gmail.com';                 // SMTP username
    $mail->Password = 'monmdp';                           // SMTP password
    $mail->SMTPSecure = 'ssl';                            // Enable TLS encryption, `ssl` also accepted
    $mail->Port = 465;                                    // TCP port to connect to
     
    $mail->setFrom('monadressedereception@gmail.com', 'Mailer');
    $mail->addAddress('monadresse@gmail.com', 'Joe User');     // Add a recipient
    //$mail->addAddress('ellen@example.com');               // Name is optional
    //$mail->addReplyTo('info@example.com', 'Information');
    //$mail->addCC('cc@example.com');
    //$mail->addBCC('bcc@example.com');
     
    //$mail->addAttachment('/var/tmp/file.tar.gz');         // Add attachments
    //$mail->addAttachment('/tmp/image.jpg', 'new.jpg');    // Optional name
    $mail->isHTML(true);                                  // Set email format to HTML
     
    $mail->Subject = 'Here is the subject';
    $mail->Body    = 'This is the HTML message body <b>in bold!</b>';
    $mail->AltBody = 'This is the body in plain text for non-HTML mail clients';
     
    if(!$mail->send()) {
        echo 'Message could not be sent.';
        echo 'Mailer Error: ' . $mail->ErrorInfo;
    } else {
        echo 'Message has been sent';
    }
    En vous remercient

  2. #2
    Membre émérite Avatar de vttman
    Homme Profil pro
    Développeur "couteau mosellan"
    Inscrit en
    Décembre 2002
    Messages
    1 140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur "couteau mosellan"
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 140
    Points : 2 286
    Points
    2 286
    Par défaut
    Hello Captain,
    Moi je ne suis pas en ssl, mais il me semble que j'avais du rajouter ceci
    pour que tout fonctionne correctement avec la version phpmailer ... 5.2.23 !?

    https://github.com/PHPMailer/PHPMail...roubleshooting
    =>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $mail->SMTPOptions = array(
    			'ssl' => array(
    			'verify_peer' => false,
    			'verify_peer_name' => false,
    			'allow_self_signed' => true
    			)
    		);
    ça fait une réponse en attendant de solutionner le soucis ...
    Emérite, émérite je ne pense pas ... plutôt dans le développement depuis FORT FORT longtemps, c'est mon job, ça oui
    A part ça ... Il ne pleut jamais en Moselle !

  3. #3
    Membre averti
    Homme Profil pro
    Autres
    Inscrit en
    Mai 2017
    Messages
    279
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Autres

    Informations forums :
    Inscription : Mai 2017
    Messages : 279
    Points : 421
    Points
    421
    Par défaut
    Commence par quelque chose de plus simple et optimise si ça marche.
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    <?php
    require 'PHPMailerAutoload.php';
     
    $mail = new PHPMailer;
    $mail->isSMTP();
    $mail->Host = 'smtp.gmail.com';
    $mail->SMTPAuth = true;
    $mail->Username = 'user@gmail.com';
    $mail->Password = '_password_';
    $mail->SMTPSecure = 'tls';
     
    $mail->From = 'sender@example.com';
    $mail->FromName = 'Your Name';
    $mail->addAddress('recipient@example.com');
     
    $mail->isHTML(true);
     
    $mail->Subject = 'Test Mail Subject!';
    $mail->Body    = 'This is SMTP Email Test';
     
    if(!$mail->send()) {
        echo 'Message could not be sent.';
        echo 'Mailer Error: ' . $mail->ErrorInfo;
     } else {
        echo 'Message has been sent';
    }
    ?>
    L’appétit vient en mangeant.
    Pourquoi compliquer quand on peut faire plus simple?
    Une réponse vous a été utile? pensez à
    Vous avez eu la réponse à votre question? marquez votre discussion
    Faites un tour aux FAQs et aux tutoriels et cours.

  4. #4
    Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mars 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mars 2017
    Messages : 6
    Points : 4
    Points
    4
    Par défaut
    Salut et merci pour vos réponses. Désolé pour le temps de réponses quelques soucis d'accès à internet.

    J'ai essayé vos deux méthodes et malheureusement ça ne fonctionne toujours pas, aucun email d'envoyé :/

  5. #5
    Membre averti
    Homme Profil pro
    Autres
    Inscrit en
    Mai 2017
    Messages
    279
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Autres

    Informations forums :
    Inscription : Mai 2017
    Messages : 279
    Points : 421
    Points
    421
    Par défaut
    Il faut Debuger.
    fait un var_dump ou print_r avec condition avant l'envoi.
    L’appétit vient en mangeant.
    Pourquoi compliquer quand on peut faire plus simple?
    Une réponse vous a été utile? pensez à
    Vous avez eu la réponse à votre question? marquez votre discussion
    Faites un tour aux FAQs et aux tutoriels et cours.

  6. #6
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 235
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 235
    Points : 15 532
    Points
    15 532
    Par défaut
    cela peut aussi venir d'un filtre anti-spam intermédiaire qui supprime le message quelque part
    essayez d'envoyer le message à une autre adresse e-mail pour tester cela

  7. #7
    Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mars 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mars 2017
    Messages : 6
    Points : 4
    Points
    4
    Par défaut
    Hello, merci pour vos réponses.

    J'ai du nouveau, de la part de google ...

    Voici mon fichier de .php de config :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    <?php
    require 'PHPMailerAutoload.php';
     
    $mail = new PHPMailer;
    $mail->isSMTP();
    $mail->Host = 'smtp.gmail.com';
    $mail->SMTPAuth = true;
    $mail->Username = 'mongmail@gmail.com';
    $mail->Password = 'monmdp';
    $mail->SMTPSecure = 'tls';
     
    $mail->From = 'mongmail@gmail.com';
    $mail->FromName = 'Test user';
    //$mail->addAddress('recipient@example.com');
     
    $mail->isHTML(true);
     
    $mail->Subject = 'Test Mail Subject!';
    $mail->Body    = 'This is SMTP Email Test';
     
    if(!$mail->send()) {
        echo 'Message could not be sent.';
        echo 'Mailer Error: ' . $mail->ErrorInfo;
     } else {
        echo 'Message has been sent';
    }
    ?>
    Le daemon google me retourne :
    Message non distribué
    Un problème temporaire est survenu lors de la distribution de votre message à recipient@example.com. D'autres tentatives vont être effectuées pendant 46 heures. Vous recevrez une notification si l'échec est permanent.
    Accompagné de :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    La réponse était :
    The recipient server did not accept our requests to connect. Learn more at https://support.google.com/mail/answer/7720 [example.com 2606:2800:220:1:248:1893:25c8:1946: timed out] [example.com 93.184.216.34: timed out]
     
     
    Final-Recipient: rfc822; recipient@example.com
    Action: delayed
    Status: 4.4.1
    Diagnostic-Code: smtp; The recipient server did not accept our requests to connect. Learn more at https://support.google.com/mail/answer/7720
     [example.com 2606:2800:220:1:248:1893:25c8:1946: timed out]
     [example.com 93.184.216.34: timed out]
    Last-Attempt-Date: Mon, 17 Jul 2017 07:55:37 -0700 (PDT)
    Will-Retry-Until: Tue, 18 Jul 2017 03:56:36 -0700 (PDT)
     
     
    ---------- Message transféré ----------
    From: Your Name <mongmail@gmail.com>
    To: recipient@example.com
    Cc: 
    Bcc: 
    Date: Sat, 15 Jul 2017 13:00:20 +0200
    Subject: Test Mail Subject!
    This is SMTP Email Test
    Je me triture le cerveau dans tous les sens, je ne pige pas.. Aucune faute de frappe rien du tout :o

  8. #8
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 235
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 235
    Points : 15 532
    Points
    15 532
    Par défaut
    ce message signifie que le serveur de destination ne reçoit pas d'e-mail
    donc l'adresse e-mail de destination n'est pas correcte.

  9. #9
    Membre averti
    Homme Profil pro
    Autres
    Inscrit en
    Mai 2017
    Messages
    279
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Autres

    Informations forums :
    Inscription : Mai 2017
    Messages : 279
    Points : 421
    Points
    421
    Par défaut
    Citation Envoyé par mathieu Voir le message
    ce message signifie que le serveur de destination ne reçoit pas d'e-mail
    donc l'adresse e-mail de destination n'est pas correcte.
    dans ton code tu as commenté l'adresse du destinataire.
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    //$mail->addAddress('recipient@example.com');
    Si tu le dé-commente
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    <?php
    require 'PHPMailerAutoload.php';
     
    $mail = new PHPMailer;
    $mail->isSMTP();
    $mail->Host = 'smtp.gmail.com';
    $mail->SMTPAuth = true;
    $mail->Username = 'mongmail@gmail.com';
    $mail->Password = 'monmdp';
    $mail->SMTPSecure = 'tls';
     
    $mail->From = 'mongmail@gmail.com';
    $mail->FromName = 'Test user';
    $mail->addAddress('recipient@example.com');
     
    $mail->isHTML(true);
     
    $mail->Subject = 'Test Mail Subject!';
    $mail->Body    = 'This is SMTP Email Test';
     
    if(!$mail->send()) {
        echo 'Message could not be sent.';
        echo 'Mailer Error: ' . $mail->ErrorInfo;
     } else {
        echo 'Message has been sent';
    }
    ?>
    quel est le résultat?
    L’appétit vient en mangeant.
    Pourquoi compliquer quand on peut faire plus simple?
    Une réponse vous a été utile? pensez à
    Vous avez eu la réponse à votre question? marquez votre discussion
    Faites un tour aux FAQs et aux tutoriels et cours.

Discussions similaires

  1. PB lancement PostgreSQL sur Debian Sarge
    Par Invité dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 24/11/2005, 19h15
  2. Comment installer le modem usb sagem fast sur debian ?
    Par caper dans le forum Matériel
    Réponses: 1
    Dernier message: 18/10/2005, 12h10
  3. Affichage pourri sur DEBIAN avec ATI RADEON 7000
    Par jibouze dans le forum Matériel
    Réponses: 2
    Dernier message: 07/04/2005, 00h49
  4. Montage du CD-ROM à l'installation sur Debian Sarge
    Par Bidouille dans le forum Administration système
    Réponses: 9
    Dernier message: 24/09/2004, 20h43
  5. Montage sur Debian de AFPS sous UNIX
    Par Harbaingan dans le forum Administration système
    Réponses: 2
    Dernier message: 14/01/2004, 22h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo