CentOS下Laravel邮件发送失败可能有以下原因:
- 配置问题:.env文件中邮件配置(如MAIL_HOST、MAIL_PORT、MAIL_USERNAME等)错误,或config/mail.php配置异常。
- 防火墙限制:未开放SMTP所需端口(如25、465、587),导致无法连接外部邮件服务器。
- SELinux限制:启用时可能阻止邮件服务访问网络,临时关闭或调整策略可测试。
- 依赖缺失:未安装php-mbstring、php-xml等必要PHP扩展。
- 队列问题:使用队列发送时,队列服务未运行或配置错误。
- 网络连接问题:服务器无法访问外部SMTP服务器,可能是DNS解析异常或网络不通。
- 邮件服务提供商限制:IP被限制、反垃圾邮件策略拦截等。
- 日志未记录详细错误:需查看Laravel日志(storage/logs)获取具体失败原因。