PHPMailer SMTP在本地服务器上工作,但在生产服务器上不起作用


PHPMailer SMTP works on local server, but not on production server

我有以下PHPMailer配置,它在我的本地主机上运行良好,但不在生产中发送电子邮件:

//Send a notification email
try {
    $mail = new PHPMailer(true);
    $mail->IsSMTP();
    $mail->SMTPDebug = 0;
    $mail->SMTPAuth = true;
    $mail->SMTPSecure = "tls";
    $mail->Host = "smtp.gmail.com";
    $mail->Port = 587;
    $mail->Username = $username;
    $mail->Password = $password;
    $mail->AddAddress($_POST['username'], $name);
    $mail->SetFrom("no-reply@a-domain-setup-in-google-apps.com", "No-Reply");
    $mail->Subject = $subject;
    $mail->AltBody = $altBody;
    $mail->MsgHTML($bodyHTML);
    $mail->Send();
} catch (phpmailerException $e) {
    echo $e->errorMessage();
    exit;
} catch (Exception $e) {
    echo $e->getMessage();
    exit;
}

当我将SMTP调试设置为等于2时,这是我得到的:

SMTP -> FROM SERVER:220 mx.google.com ESMTP bo7sm9593967igb.2 
SMTP -> FROM SERVER: 250-mx.google.com at your service, [204.93.159.80] 250-SIZE 35882577 250-8BITMIME 250-STARTTLS 250-ENHANCEDSTATUSCODES 250 PIPELINING 
SMTP -> FROM SERVER:220 2.0.0 Ready to start TLS 
SMTP -> FROM SERVER: 250-mx.google.com at your service, [204.93.159.80] 250-SIZE 35882577 250-8BITMIME 250-AUTH LOGIN PLAIN XOAUTH 250-ENHANCEDSTATUSCODES 250 PIPELINING 
SMTP -> FROM SERVER:250 2.1.0 OK bo7sm9593967igb.2 
SMTP -> FROM SERVER:250 2.1.5 OK bo7sm9593967igb.2 
SMTP -> FROM SERVER:354 Go ahead bo7sm9593967igb.2 
SMTP -> FROM SERVER:250 2.0.0 OK 1341071123 bo7sm9593967igb.2

一切看起来都不错,但我不能再发送电子邮件了。

我确信我的Google Apps帐户已正确配置(就像以前一样),并且我的登录凭据是正确的。

有什么想法吗?

您的电子邮件很可能没有送达.co.cc因为域与垃圾邮件和通常不合法的网站相关联;谷歌已禁止其索引中的所有.co.cc域。

因此,他们也会阻止或大量过滤来自这些域的电子邮件,这是有道理的。

考虑使用普通域,例如以 .com 结尾的域。