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

Laravel使用cPanel域名邮箱发信无报错但Gmail收不到邮件求助

排查步骤

  • 先清理Laravel配置缓存
    很多时候修改.env后配置没有生效,执行命令php artisan config:clear清空缓存,再在路由中打印dd(config('mail'))确认邮件配置和你填写的内容完全一致,避免缓存导致的配置读取错误。
  • 检查SMTP用户名填写是否完整
    cPanel搭建的域名邮箱绝大多数要求SMTP用户名是完整的邮箱地址(即support@domain.com),不能只填前缀support。你可以核对下.env中的MAIL_USERNAME参数,很多用户PHPMailer配置时填了完整地址,Laravel配置时漏写域名,导致服务器静默拒绝发信没有报错。
  • 确认队列是否正常运行
    你的SendUserEmailVerification类引入了Queueable特质,如果你.env中的QUEUE_CONNECTION参数不是sync,邮件会被推入队列等待消费,未启动队列worker的情况下邮件不会实际发出。你可以先把QUEUE_CONNECTION临时改为sync测试,或者执行php artisan queue:work启动队列进程观察任务处理情况。
  • 检查Gmail收件分类与拒收记录
    没有报错的情况下大概率邮件已经发出,只是被Gmail归类到了「垃圾邮件」「促销」「社交」标签页,你可以在Gmail全局搜索发件地址support@domain.com确认是否被拦截。同时可以登录cPanel后台查看邮件发送日志,确认Gmail是否返回了拒收错误码,根据错误信息定位问题。
  • 核对域名邮件解析记录
    确认你的域名已经配置了正确的SPF、DKIM记录,没有这些域名验证记录的话,Gmail会直接拒收来自该域名的邮件,不会进入收件箱。这一步cPanel后台一般可以一键生成对应解析记录,添加到域名DNS后台即可生效。
  • 备选配置测试
    如果上述排查都没问题,可以尝试切换加密方式测试:把MAIL_PORT改为587,MAIL_ENCRYPTION改为tls,部分cPanel邮件服务器对ssl的465端口兼容性较差,切换tls协议即可正常发信。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.17 03:36:07