俱乐部项目里面发送邮件在阿里云不能用的解决办法

阿里云默认禁用25端口号

可以开启ssl 使用465端口

1、保证安全组加入465端口

2、163邮箱设置客户端授权码

image.png

3、使用hutool工具类

https://hutool.cn/docs/#/extra/邮件工具-MailUtil

<dependency>    <groupId>cn.hutool</groupId>    <artifactId>hutool-all</artifactId>    <version>5.0.6</version>

</dependency>

<dependency>    <groupId>javax.mail</groupId>    <artifactId>mail</artifactId>    <version>1.4.7</version>

</dependency>

邮件服务器配置

在classpath(在标准Maven项目中为src/main/resources)的config目录下新建mail.setting文件,最小配置内容如下,在此配置下,smtp服务器和用户名都将通过from参数识别:

使用SSL加密方式发送邮件 在使用QQ或Gmail邮箱时,需要强制开启SSL支持,此时我们只需修改配置文件即可:

 # 发件人(必须正确,否则发送失败),“小磊”可以任意变更,<>内的地址必须唯一,以下方式也对
 # from = hutool@yeah.net 
 from = 小磊<hutool@yeah.net>
 # 密码(注意,某些邮箱需要为SMTP服务单独设置密码,详情查看相关帮助) 
 pass = q1w2e3 
 # 使用SSL安全连接 
 sslEnable = true

MailUtil.send("hutool@foxmail.com", "测试", "邮件来自Hutool测试", false);

搞定!

评论区

JFinal

2019-12-06 23:39

上周 jfinal.com 切换到新服务器正好碰到这个问题,阿里云禁用 25 号端口,通过 465 走 SSL 通道可以很方便解决。谢谢分享

这里还有一个更重要的问题,那就是自己搭建类似于 postfix 的邮件服务,即便是走 465 的 SSL 仍然也无法实现。貌似这个 465 的 SSL 只作用于邮件发送客户端与邮件服务器之间的通道, 而不能能作用于邮件服务器之间的通信。 还未验证,希望有这方面经历的同学可以来分享

自己搭邮件服务器还是要方便些,没有发送数量的限制