🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# 如何设置SMTP? 应用中发送邮件是一个很常见的功能。经过大量用户实践反馈,只推荐一种发邮件的方式,即安装邮件插调用第三方邮件系统的STMP相关账号来进行邮件发送。 SMTP发送邮件有三个步骤: 1. 申请一个可用的[SMTP服务](http://service.mail.qq.com/cgi-bin/help?id=28)(例如:stmp.qq.com,端口号465,账号...) 2. 打开应用软件中的SMTP配置界面(类似WordPress默认没有SMTP配置项,则需要额外安装一个SMTP插件) 3. 测试SMTP > 请忘掉在本机上安装sendmail等邮件服务器的方案,因为邮件系统的路由配置受制与域名、防火墙、路由等多种因素制约,导致不稳定、不容易维护、不好诊断问题。 * * * * * ## SMTP测试失败 如果使用第三方提供的SMTP服务(如qq邮箱、网易邮箱等),配置也没有问题,但是仍然无法发送邮件。请检查如下两个问题: 1. 登录服务器,验证是否可以连接SMTP,命令如下 ~~~ //安装telnet yum install telnet -y //测试qq邮箱 端口有465和587 telnet smtp.qq.com 465 //测试网易邮箱 端口有465和994 telnet smtp.163.com 465 ~~~ 如果出现 `220 smtp.*.com Esmtp *Mail Server `或者 `Escape character is '^]'` 这样的反馈信息说明可以连接 > 注意:本地Telnet测试成功,不代表服务器Telnet成功,因为您的服务器IP地址由于某些原因可能会被STMP服务器列入黑名单。 2. 需要了解你所使用的STMP功能是否调用了PHP软件包(或扩展类) * php官方提供的mail()类,这个类不支持SMTP验证 * php扩展包-[PHPMailer](https://github.com/PHPMailer/PHPMailer),这个类功能比较全面 2. 安全组(出设置)禁止外部访问 3. 系统iptables,firewall设置关闭了465等端口 4. php_openss版本过低或者没有安装,php_openssl的CA证书确实或异常