在windows中使用javamail发送短信成功linux 接收邮件附件命令,附件也没问题。当服务布署到linux后arm linuxlinux查看进程,发觉收不到电邮。解决步骤如下:

步骤一:

提示:unknowhost

解决:配置dns

配置完以后还是未能发送短信,日志报错:cannotconnecttoport25

步骤二:

将25端口换成465端口。代码如下:

properties.setProperty("mail.smtp.port", "465");

properties.setProperty("mail.smtp.socketFactory.port", "465"); properties.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");

配置完以后可以发送短信。并且:附件名称和后缀不对了linux 接收邮件附件命令,在Windows下没有这个问题

步骤三:

更改代码:

BodyPart messageBodyPart = new MimeBodyPart();

DataSource source = new FileDataSource(filename); messageBodyPart.setDataHandler(new DataHandler(source)); messageBodyPart.setFileName(MimeUtility.encodeText(source.getName()));

重启布署服务,完美解决。

Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。

发表回复