You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHPMailer提示用户名密码不被接受、SMTP连接失败问题求助

存在的配置问题

  • 加密方式与端口不匹配
    Gmail SMTP的规则是TLS加密对应587端口,SSL加密对应465端口,你最初用TLS加密配25端口本身就是错误配置,后续改465端口但没有同步把加密方式改成SSL,才会出现连接失败的报错。
  • 不符合Gmail的第三方登录安全规则
    谷歌已经全面停止了普通账号密码直接登录第三方SMTP服务的权限,哪怕你的账号密码完全正确,也会触发535验证失败的报错。

解决步骤

  1. 修正SMTP配置,二选一即可:
    方案1(TLS加密):
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->Port = 587;

方案2(SSL加密):

$mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS;
$mail->Port = 465;
  1. 生成Gmail应用专用密码
    先给你的谷歌账号开启两步验证,之后在账号安全设置中找到「应用专用密码」入口,生成一个16位的专用密码,将代码中$mail->Password的值替换为这个新生成的专用密码即可,不需要修改你原本的谷歌账号登录密码。
  2. 端口连通性检查
    确认你的服务器没有封禁对应端口的出站请求,你可以在服务器上执行telnet smtp.gmail.com 587(如果用SSL就替换成465)测试连通性,如果连接失败需要联系服务器服务商放行对应端口的出站规则。

内容的提问来源于stack exchange,提问作者John Beasley

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 03:15:07