2017-07-29 2 views
1

J'utilise PHPMailer pour envoyer l'email mais j'obtiens une erreur.Mon nom de domaine n'est pas SSL. Si j'utilise smtp.gmail.com avec mon identifiant Gmail alors courriels allez boîte de réception, mais quand je me sers mes détails d'hébergement alors je reçois une erreurStream_socket_enable_crypto(): Le certificat d'homologue CN = `* .webhostbox.net 'ne correspond pas attendu CN =` mail.maydomain.com' utilisant PHPMailer

Warning: stream_socket_enable_crypto(): Peer certificate CN=`*.webhostbox.net' did not match expected CN=`mail.mydomain.com' in C:\xampp\htdocs\sendmail\mail\class.smtp.php on line 337 
Mailer Error: SMTP connect() failed. 

Si je mets à $mail->SMTPSecure = 'tls'; $ mail-> SMTPSecure = 'faux'; alors ne pas avoir une erreur, mais les e-mails vont spam. Même j'ai essayé ci-dessous le code.

$mail->SMTPOptions = array (
     'ssl' => array(
      'verify_peer' => false, 
      'verify_peer_name' => false, 
      'allow_self_signed' => true)); 

Pourriez-vous m'aider?

Merci

require 'mail/PHPMailerAutoload.php'; 
function sendMail($subject, $content, $email){ 
    $phpMailerSubject = $subject; 
    $phpMailerText = $content; 
    $phpMailerTo = $email; 
    include 'mail/PHPMailerConfig.php'; 
} 

PHPMailerConfig.php

<?php 
//Create a new PHPMailer instance 
$mail = new PHPMailer; 

$mail->IsSMTP(); 
$mail->SMTPDebug = 0; 
$mail->Debugoutput = 'html'; 
$mail->Host = 'mail.mydomain.com'; 
$mail->Port = 587; 
$mail->SMTPSecure = 'tls'; 
$mail->SMTPAuth = true; 
$mail->Username = "[email protected]"; 
$mail->Password = "Pass#@123"; 
$mail->setFrom('[email protected]', 'naren'); 
$mail->addReplyTo('[email protected]', 'naren'); 
$mail->addAddress($phpMailerTo, 'Customer'); 
$mail->Subject = $phpMailerSubject; 
$mail->msgHTML($phpMailerText); 
$mail->AltBody = ' '; 

//Attach an image file 
//$mail->addAttachment('images/phpmailer_mini.png'); 

//send the message, check for errors 
if (!$mail->send()) { echo "Mailer Error: " . $mail->ErrorInfo; 
} else { 
echo "sucessfully"; 
} 
+0

Quelqu'un peut-il m'aider dans ce domaine? –

Répondre

1

Read the PHPMailer docs que les points d'erreur vous à; il explique comment diagnostiquer ce problème.

Vous demandez à vous connecter à smtp.gmail.com, mais vous vous connectez réellement à mail.webhostbox.net (je suppose, d'après ce que vous avez posté). Sans surprise, le certificat TLS pour cela ne correspond pas au nom de domaine de Gmail, et donc il échoue. Vous essayez de le forcer à fonctionner en désactivant la vérification, qui ne fonctionnera pas car vous êtes en train de forger l'adresse de provenance, provoquant des échecs SPF, et finira par être rejetée ou dans le spam, comme vous le voyez.

Vous devez soit changer votre adresse pour correspondre au SPF fourni par votre fournisseur de services Internet, soit les autoriser à utiliser SMTP correctement, soit passer à un fournisseur de services Internet plus éclairé.

+0

Un problème s'est produit avec mon fournisseur de services Internet. I –

+0

Si j'utilisais smtp.gmail.com alors les emails allaient à la boîte de réception. Je recevais le problème sur mon propre serveur. et maintenant mon problème a été résolu. –