一、问题描述
系统发送邮件,采用的是网易邮箱,本地环境没问题,部署到阿里云,控制台报504,查看日志,系统连接网易邮箱服务器超时;
二、原因分析
原因:阿里云服务器封禁了25端口,即使安全组放开,无济于事;
三、解决方法
解决方法:开启SSL使用465端口进行发送(放开阿里云安全组465端口);
实现:
避免采坑,使用hutool提供的MailUtil工具类进行邮件发送;
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.7.22</version>
</dependency>
<!-- 邮箱-->
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.6.2</version>
</dependency>
?根据需要,可以再封装一层,编写自己的MyMailUtil,减少参数设置;
MailAccount account = new MailAccount();
//邮箱服务器SMTP地址
account.setHost("smtp.yeah.net");
//端口
account.setPort("465");
//是否需要用户名密码验证
account.setAuth(true);
//发送人
account.setFrom("hutool@yeah.net");
//发送用户
account.setUser("hutool");
//发送用户的密码或者授权码
account.setPass("q1w2e3");
//使用SSL安全连接
account.setSslEnable(true);
//发送配置、收件人、主题、内容、是否html
MailUtil.send(account,"hutool@foxmail.com", "测试", "邮件来自Hutool测试", false);
|