首页 > 后端开发 > php教程 > 使用 PHPMailer 通过 Gmail 的 SMTP 服务器发送电子邮件时,为什么会收到'需要 SMTP AUTH”错误?

使用 PHPMailer 通过 Gmail 的 SMTP 服务器发送电子邮件时,为什么会收到'需要 SMTP AUTH”错误?

Patricia Arquette
发布: 2024-12-31 20:39:09
原创
272 人浏览过

Why Am I Getting the

无法通过 PHPMailer 使用 Gmail SMTP 服务器发送电子邮件:“在端口 587 上提交邮件需要 SMTP AUTH”

在愿望中通过 PHP Mailer 与 Gmail 的 SMTP(简单邮件传输协议)服务器传输电子邮件时,可能会遇到错误消息“SMTP在端口 587 上提交消息需要 AUTH。”这种障碍表明需要加强安全措施。

要解决此问题,请考虑合并以下代码修改:

$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPDebug = 1;
$mail->SMTPAuth = true;
$mail->SMTPSecure = 'ssl';
$mail->Host = "smtp.gmail.com";
$mail->Port = 465;
$mail->IsHTML(true);
$mail->Username = "[email protected]";
$mail->Password = "password";
$mail->SetFrom("[email protected]");
$mail->Subject = "Test";
$mail->Body = "hello";
$mail->AddAddress("[email protected]");

if (!$mail->Send()) {
    echo "Mailer Error: " . $mail->ErrorInfo;
} else {
    echo "Message has been sent";
}
登录后复制

特别要注意这些关键调整:

  • 使用 $mail->SMTPSecure = 'ssl';以增强连接安全性。
  • 禁用指定电子邮件帐户的两步验证。
  • 按照此处提供的说明允许安全性较低的应用访问您的 Google 帐户:https://myaccount。 google.com/lesssecureapps

或者,您可以选择修改 $mail->SMTP 设置至:

$mail->SMTPSecure = 'tls';
登录后复制

请记住,某些 SMTP 服务器可能会阻碍连接或缺乏 SSL/TLS 支持。建议与服务器管理员验证以确认兼容性。

完成这些调整后,预计可以使用 PHP Mailer 通过 Gmail 的 SMTP 服务器进行无缝电子邮件传输。

以上是使用 PHPMailer 通过 Gmail 的 SMTP 服务器发送电子邮件时,为什么会收到'需要 SMTP AUTH”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板