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

Strapi v4邮件发送插件在生产服务器上无法正常运行

Strapi v4部署到cPanel后Nodemailer邮件失效的排查方案

针对你本地测试正常但cPanel部署后邮件功能失效的情况,常见问题和排查步骤如下:

  • 环境变量未正确加载
    确认cPanel主机上的.env文件是否放置在项目根目录,且SMTP_USERNAME、SMTP_PASSWORD等变量值是否正确配置。部分cPanel主机需要通过面板的「环境变量」功能手动设置,而非直接上传.env文件,需检查变量是否生效(可在Strapi启动日志中查看环境变量读取情况,或通过代码打印env('SMTP_USERNAME')确认)。

  • Gmail账号安全限制

    • 若账号开启了两步验证(2FA),必须使用应用专用密码替代原密码作为SMTP_PASSWORD,普通密码无法用于SMTP登录。
    • 检查Gmail账号的「最近活动」,确认是否有异地登录拦截,需在Gmail安全设置中允许该服务器IP的访问,或开启「不太安全的应用访问」(优先推荐使用应用专用密码)。
    • 部分地区或服务器IP可能被Gmail的反垃圾系统拦截,可尝试更换SMTP服务商(如SendGrid、Mailgun)测试。
  • cPanel主机的端口/连接限制

    • 共享型cPanel主机通常会封禁25端口,部分甚至限制465/587端口,需联系主机商确认是否允许出站连接到smtp.gmail.com的465端口,或尝试切换到587端口(需将secure设为false,同时添加tls: { rejectUnauthorized: false }配置)。
    • 你的配置中maxConnections设为10000,共享主机的连接数配额远低于此,建议将pool设为false,或把maxConnections调低至10以内,避免触发主机的连接数限制。
  • 服务器网络连通性
    通过cPanel的终端工具执行以下命令测试网络连通性:

    telnet smtp.gmail.com 465
    

    若无法连通,说明服务器防火墙或主机商拦截了该端口,需联系主机商解封,或更换SMTP端口/服务商。

  • Nodemailer配置细节

    • 关闭logger和debug的生产环境输出,避免日志权限或输出问题干扰正常运行。
    • 确认defaultFrom和defaultReplyTo与SMTP_USERNAME一致,部分邮件服务商要求发件人地址必须与SMTP认证账号匹配。

内容的提问来源于stack exchange,提问作者Kofi Talent

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 15:22:20