前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >解决JavaMail 发送邮件javax.mail.MessagingException: 501 Syntax: HELO hostname问题

解决JavaMail 发送邮件javax.mail.MessagingException: 501 Syntax: HELO hostname问题

作者头像
哎_小羊
发布2018-01-02 15:07:11
1.5K0
发布2018-01-02 15:07:11
举报
文章被收录于专栏:哎_小羊

前些天,在Linux服务器上使用JavaMail发送邮件时,总是报javax.mail.MessagingException: 501 Syntax: HELO hostname这个错误,在确认填写的邮件发送的host没问题的情况下,而且在本地Windows环境下,是可以正常发送的,这就有点诡异了,莫非最近人品不好?! 好吧,一番折腾之后,终于找到了原因了。

解决办法: 1、先用hostname查看服务器的主机名称,然后本地试探性的ping一下这个hostname,很遗憾找到不到对应的ip主机。 2、修改/etc/hosts文件,添加hostname的名称对应到127.0.0.1上边,哦了!在次发送邮件,成功!

原因: JavaMail发送邮件时,会提取本地hostname之后,会已ip的形式去发送邮件,但是在linux服务器下,无法解析hostname对应的本机ip地址,导致JavaMail无法调用ip发送。Postfix 收到这种邮件将拒绝发送,而产生 501 错误。(windows服务器可以发送,是由于采用了不netbios 协议去获得该主机的 ip 地址,所以可以获取到ip)

截图操作:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-03-16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档