gpt4 book ai didi

php - 通过 PHPMailer 发送 SMTP 电子邮件突然开始失败

转载 作者:行者123 更新时间:2023-12-04 15:50:13 25 4
gpt4 key购买 nike

我一直在使用 PHPMailer 代表我的 office365 帐户发送 SMTP 电子邮件,它工作了大约一个星期。然后它突然停止工作,我不知道发生了什么变化。

当我在 PHPMailer 中启用高调试日志记录时,我看到了这个:

SMTP -> FROM SERVER:220 CY4PR15CA0011.outlook.office365.com Microsoft ESMTP MAIL Service ready at Thu, 10 Jan 2019 13:30:20 +0000 SMTP -> FROM SERVER: 250-CY4PR15CA0011.outlook.office365.com Hello [198.154.243.158] 250-SIZE 157286400 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-8BITMIME 250-BINARYMIME 250-CHUNKING 250 SMTPUTF8 SMTP -> ERROR: AUTH not accepted from server: 504 5.7.4 Unrecognized authentication type [CY4PR15CA0011.namprd15.prod.outlook.com] SMTP -> FROM SERVER:250 2.0.0 Resetting

这部分似乎是最相关的:

AUTH not accepted from server: 504 5.7.4 Unrecognized authentication type

这是我传递给 PHPMailer 的文字 SMTP 设置:

smtpAuth: true
smtpSecure: STARTTLS
smtpHost: smtp.office365.com
smtpPort: 587
smtpUsername: [hidden]
smtpPassword: [hidden]
emailTo: [hidden]

以及实际的 PHP 代码:

$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = $smtpAuth;
$mail->SMTPSecure = $smtpSecure;
$mail->Host = $smtpHost;
$mail->Port = $smtpPort;
$mail->Username = $smtpUsername;
$mail->Password = $smtpPassword;
$mail->SetFrom($smtpSenderDisplay);
$mail->IsHTML(true);
$mail->Subject = $subject;
$mail->Body = $body;
$mail->AddAddress($emailTo);

作为健全性检查,我在 Windows Live Mail 中使用这些相同的设置设置了一个 SMTP 帐户 - 一切正常。没有错误。外发电子邮件进入我拥有的另一个电子邮件帐户的收件箱。

所以 Windows Live Mail 正在做的事情与我的 PHP 脚本正在做的事情有点不同,请记住我的 PHP 脚本直到几天前都运行良好。

有什么我需要更改的想法吗?

最佳答案

Microsoft 将其 SMTP 加密要求从 STARTTLS 更改为 TLS。这就解决了。

关于php - 通过 PHPMailer 发送 SMTP 电子邮件突然开始失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54129953/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com