这两天一直在找为什么在本地开发的时候可以发送邮件验证,而部署到阿里云之后就不可以了,经过一番查找终于找到原因,原来是阿里全面禁止了这个25邮件端口,以下是客服原话:
您好,麻烦您使用465端口发送邮件,由于国际与国内均对垃圾邮件进行严格管控,我国《互联网信息服务管理办法》、《中国互联网协会反垃圾邮件规范》均对垃圾邮件进行说明与管理规范。鉴于服务器25端口被大量垃圾邮件充斥,严重影响广大用户正常使用。为了共同维护良好的网络环境,自即日起阿里云服务器不再提供25端口邮件服务,建议您尝试使用465加密端口发送邮件,或与邮件发信提供商咨询是否还有其他smtp发信端口,给您带来的不便深表歉意,请您查看云平台安全规则:https://help.aliyun.com/knowledge_detail/37353.html。
那就改用465端口咯
laravel配置 ".env" MAIL_PORT 从25改为465,MAIL_ENCRYPTION从tls改为ssl。
MAIL_PORT=465
MAIL_ENCRYPTION=SSL