2013-12-15 129 views
2

我有這樣的PHPMailer:https://github.com/PHPMailer/PHPMailer/的PHPMailer不會發送郵件

我的代碼是這樣的:

$mail = new PHPMailer; 

    $mail->isSMTP();          // Set mailer to use SMTP 
    $mail->Host = 'kms-play.it'; // Specify main and backup server 
    $mail->SMTPAuth = true;        // Enable SMTP authentication 
    $mail->Username = '[email protected]';       // SMTP username 
    $mail->Password = 'pass';       // SMTP password 
    $mail->SMTPSecure = 'tls';       // Enable encryption, 'ssl' also accepted 

    $mail->From = '[email protected]'; 
    $mail->FromName = 'KMS-Play'; 
    $mail->addAddress('[email protected]', 'Lars Mehrhoff'); // Add a recipient 

    #$mail->WordWrap = 50;         // Set word wrap to 50 characters 
    #$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; 
     exit; 
    } 
    echo 'Message has been sent'; 

和錯誤是:

2013-12-15 15:02:23 CLIENT -> SERVER: EHLO local.kms-play.it 2013-12-15 15:02:23 CLIENT -> SERVER: STARTTLS 2013-12-15 15:02:23 SMTP ERROR: STARTTLS command failed: 502 5.5.1 Error: command not implemented 2013-12-15 15:02:23 CLIENT -> SERVER: QUIT SMTP connect() failed. Message could not be sent.Mailer Error: SMTP connect() failed.

+1

你肯定'公里,play.it'支持TLS連接? – Ohgodwhy

+0

通過問題標題,我通過PHPMailer宣佈關閉服務。 – silentboy

+0

沒有TLS它說:'2013-12-15 15:10:33客戶端 - >服務器:EHLO local.kms-play.it 2013-12-15 15:10:33客戶端 - >服務器:AUTH LOGIN 2013-12 -15 15:10:33 SMTP ERROR:AUTH命令失敗:535 5.7.8錯誤:身份驗證失敗:身份驗證機制無效2013-12-15 15:10:33 CLIENT - > SERVER:QUIT SMTP connect()失敗。郵件無法發送。郵件錯誤:SMTP連接()失敗。' – Evolutio

回答

-3

我想這可能是錯的:

$mail->Host = 'kms-play.it'; 

難道那是盟友你的SMTP主機?通常它就像smtp.kms-play.it。與您的託管服務提供商一起檢查

+0

是的,thunderbirdsettings是一樣的腳本。 服務器上的mail.err/.info或mail.log中找不到任何錯誤 – Evolutio

+0

連接正在建立並且服務器甚至響應: 「502 5.5.1錯誤:命令未實現」(編輯:提前提交) –

0

你有2種選擇:

1 - 由於TLS不活躍評論這一行:

$mail->SMTPSecure = 'tls'; 

它會工作,但並不好發送郵件沒有簽下他們。

2 - 確保激活TLSEHLO命令應該返回:

EHLO myfriend 
2016-10-27 01:15:07 SERVER -> CLIENT: 250-server.urutecno.net 
Hello mail.myfriemd.com [216.111.111.111] 
250-SIZE 52428800 
250-8BITMIME 
250-PIPELINING 
250-AUTH PLAIN LOGIN 
250-STARTTLS 
250 HELP