阿里云部署SpringBoot项目发送邮件功能出现Mail server connection failed:connection timed out问题

前言:

        最近在自己玩的项目写了一个游客注册的小功能,游客注册后,账号和密码会发送到游客的邮箱。我在本地运行没有任何问题,我用Docker部署到阿里云服务器后,测试该功能却报如下错误(部分截图):

阿里云部署SpringBoot项目发送邮件功能出现Mail server connection failed:connection timed out问题_第1张图片

阿里云部署SpringBoot项目发送邮件功能出现Mail server connection failed:connection timed out问题_第2张图片

解决:

经过一番查找,我发现是阿里云服务器默认禁用 25 端口,25端口是连接邮件服务器的端口,所以无法连接,就报超时了。阿里云建议使用 465 端口,但465 端口只支持 SSL 协议,所以还要配置SSL协议,具体配置如下,供大家参考:

spring.mail.host=  ##服务器地址  QQ:smtp.qq.com  Sina:smtp.sina.cn Aliyun:smtp.aliyun.com  163:smtp.163.com 
spring.mail.username=   ##用户名
spring.mail.password=  ##密码
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true

spring.mail.port=465
spring.mail.protocol=smtp
spring.mail.default-encoding=UTF-8
spring.mail.properties.mail.smtp.ssl.enable=true
spring.mail.properties.mail.smtp.socketFactory.port=465
spring.mail.properties.mail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory

Tips:此外还可以解封阿里云禁用25端口 。

 

 

你可能感兴趣的:(#Springboot)