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

Laravel 8配置AWS SES SMTP出现连接超时问题求助

解决AWS SES SMTP连接超时问题

排查步骤:

  • 检查服务器网络连通性
    在服务器终端执行以下命令测试端口连通性:

    telnet email-smtp.us-east-2.amazonaws.com 587
    # 或者用nc命令
    nc -zv email-smtp.us-east-2.amazonaws.com 587
    

    如果返回无法连接,说明服务器的防火墙、安全组或云服务商的出站规则限制了587端口的访问,需要开放该端口的出站流量(也可以尝试465端口,AWS SES支持SSL加密的465端口)。

  • 核对AWS SES SMTP配置
    确认Laravel项目.env文件中的配置项:

    • MAIL_HOST必须是对应区域的SMTP端点(us-east-2的正确端点是email-smtp.us-east-2.amazonaws.com)
    • MAIL_USERNAME和MAIL_PASSWORD是AWS SES控制台生成的SMTP专用凭证(不是IAM账号的密码,需在SES控制台的"SMTP设置"中创建)
    • MAIL_PORT设为587时,MAIL_ENCRYPTION需为tls;若用465端口,MAIL_ENCRYPTION设为ssl
  • 验证AWS SES账号状态

    • 若账号处于沙箱模式,只能发送邮件到已在SES中验证过的收件邮箱,无法发送到未验证的外部邮箱(比如gmail.com,除非该邮箱已被验证)
    • 检查SES控制台的发送配额,确认未超出限制,账号未被暂停服务
  • Laravel配置缓存与独立测试

    • 清除Laravel配置缓存,避免旧配置干扰:
      php artisan config:clear
      
    • 使用独立SMTP客户端测试(比如swaks),排除Laravel框架问题:
      swaks --to email@gmail.com --from your-verified-email@example.com --server email-smtp.us-east-2.amazonaws.com --port 587 --auth --user YOUR_SMTP_USERNAME --password YOUR_SMTP_PASSWORD --tls
      

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 07:48:44