2016-11-26 58 views
0

在Godaddy服务器上的PHPMailer上,当我使用SMTPAuth = false时,脚本可以发送邮件而没有任何问题。但是,如果将值设置为SMTPAuth = true,则无法连接到SMTP并发出错误。从网络邮件打开时,电子邮件和密码正在工作。当使用SMTPAuth = true时,PHPMailer SMTP_Connect()失败

我用下面的代码使用的PHPMailer发送邮件:

$fromEmail = ['message'=>'[email protected]','confirm'=>'[email protected]']; 
    if(isset($fromEmail[$purpose])) { 
     $fromEmail = $fromEmail[$purpose]; 
    } 
    else{ 
     $fromEmail = $fromEmail['message']; 
    } 
    $mail = new \PHPMailer(); // create a new object 

    $mail->IsSMTP(); // enable SMTP 
    $mail->IsHTML(true); 
    $mail->Host = 'a2plcpnl0721.prod.iad2.secureserver.net'; 
    //$mail->Port = 465; 
    $mail->SMTPAuth = false; //true 
    //$mail->SMTPSecure = 'ssl'; 
    $mail->Username = $fromEmail; 
    $mail->Password = "1seerain"; 
    $mail->setFrom($fromEmail, 'InspireTrend'); 
    $mail->addReplyTo($fromEmail, 'InspireTrend'); 
    $mail->Subject = $subject; 
    $mail->Body = $msg; 
    if($multiEmail && is_array($email)){ 
     foreach ($email as $key => $value) { 
      $mail->clearAddresses(); 
      $mail->AddAddress($value); 
      if(!$mail->Send()) { 
       echo "Mailer Error: " . $mail->ErrorInfo; 
      } 
     } 
    } 
    else{ 
     $mail->AddAddress($email); 
     if(!$mail->Send()) { 
      echo "Mailer Error: " . $mail->ErrorInfo; 
     } 
    } 

是有我丢失任何配置。任何建议都是可观的。

回答

1

ISP自己的邮件服务器不需要身份验证很常见 - 您可以通过在网络上进行隐式身份验证。正如您所看到的,尝试验证服务器未提供身份验证(特别是未加密)时可能会导致错误。总之,只是不要使用身份验证,你不需要它。

相关问题