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

Laravel 8配置Google SMTP发信本地正常线上失效问题求解

Laravel 配置 Google SMTP 本地正常线上无法发信问题

问题描述

为实现Laravel集成Google SMTP发件功能,累计排查了一周时间,核心异常表现为:相同配置下本地开发环境可以正常发信,部署到线上服务器后发信功能完全失效。
当前.env内的邮件服务配置如下:

MAIL_MAILER=smtp
MAIL_HOST=smtp.googlemail.com
MAIL_PORT=465
MAIL_USERNAME=myadressmail
MAIL_PASSWORD=mypasswordappgoogle
MAIL_ENCRYPTION=ssl
MAIL_FROM_ADDRESS=myadressemail
MAIL_FROM_NAME="${APP_NAME}"

此前参照大量相关教程调整配置均未解决问题,整理常见故障排查方向及本次最终解决方案如下:

常见故障排查方向

  • 线上服务器出站端口限制:绝大多数云服务商会默认封禁465、587等邮件服务常用端口的出站请求,避免服务器被用于滥发垃圾邮件,可通过telnet命令测试端口连通性验证
  • 防火墙规则拦截:包括服务器系统内置的iptables、firewalld规则,或是云服务商平台侧的安全组、网络ACL规则,拦截了发往Google SMTP服务器的请求
  • Google账号安全策略拦截:线上服务器IP未加入Google账号可信范围,触发了异常登录拦截机制,可登录Google账号查看安全通知确认
  • Laravel配置缓存未清理:线上环境修改.env配置后未执行php artisan config:clear清除配置缓存,导致运行时仍读取旧配置
  • DNS解析异常:线上服务器无法正常解析smtp.googlemail.com的IP地址,可通过ping、nslookup命令验证解析结果

最终解决方案

本次故障根因为所用OVH服务器的防火墙拦截了发往Google SMTP的相关请求,调整防火墙规则放行对应端口的出站请求后,发信功能恢复正常。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 03:06:03