无法向SMTP主机发送命令
第一种方法:
发信地址和STMP密码写错了,仔细检查一下
第二种方法:
端口被占用,换一下端口"465"或"25", 如果使用ssl,则去掉使用80或25端口的配置。
如果还是不行可能是某个app占用了端口导致smtp出现了问题(我的就是这个问题,smartag-app 这个软件占用了端口号,关闭就能发送邮件)
第三种方法:
添加如下代码:
MailSSLSocketFactory sf = new MailSSLSocketFactory();
sf.setTrustAllHosts(true);
props.put("mail.smtp.ssl.enable","true");
尝试开启debug查看错误
props.put("mail.debug", "true");
还有一个问题
Got bad greeting from SMTP host: smtp.xxx.com, port: 587, response: [EOF]
这个错误的意思是与邮件服务连接错误,这时候我们可以通过telnet命名检查我们的服务器与对方服务的连接情况,如果telnet返回失败,则可尝试465端口。
我自己的问题
公司需要开sag才能连上数据库,开了smartag 相当于开了一个vpn 本地的IP配置改变了,所以无法发送数据
本文解决在使用阿里SMTP邮件推送时遇到的问题,包括发信地址和SMTP密码错误、端口被占用、ssl配置不当及第三方应用占用端口导致的邮件发送失败。通过检查发信地址、更换端口、开启SSL并信任所有主机、以及使用telnet检查连接状况来解决问题。
771

被折叠的 条评论
为什么被折叠?



