1.问题描述:关于使用Java Mail进行邮件发送,抛出Could not connect to SMTP host: xx@xxx.com, port: 25的异常可能:

  当我们使用Java Mail进行邮件发送的时候,有时候会抛出Could not connect to SMTP host: xx@xxx.com, port: 25的异常。

  一般的,处理该异常的做法都是去检查我们的配置是否出现了错误,即去检查是不是我们配置的邮件服务器的smtp地址写错了。

  这时候要注意了,如果是密码或者是用户名错误,是不会抛出连接不上smtp地址的异常的,而是会报出javax.mail.AuthenticationFailedException,如果我们配置了debug,那么就会发现邮件服务器返回的消息是535 Error: authentication failed。

  通常的,smtp地址错误或者是端口号配置错误,那么改回正确的地址以及端口就行了。这个没有什么好说的。

  而现在需要讨论的是,如果是在保证全部配置都是正确的情况下,那么还出现这种情况,还抛出异常,那又是怎么回事呢?

  而这也是我所遇到的情况。找了很多的资料,想过很多种情况,最后将想法定在了是不是smtp的25端口会对linux服务器做出限制。

  根据这样的想法,我在网上搜索了一下,并没有找到对应的解决方法。当然,经过多次的寻找,我在百度知道找到了一丝蛛丝马迹。其中该提问者提到的问题跟我所遇到的问题与我有点关联:
该服务器下所有的链接外部25端口的操作都返回超时异常。

  考虑到这样的情况,我自身去尝试了telnet一下邮箱的smtp地址,在本地

telnet smtp.xdf.cn 25

  本地25端口通;

  在阿里云服务器上,测试不通

[root@xxx]# telnet smtp.xdf.cn 25
Trying 116.213.222.46...
telnet: connect to address 116.213.222.46: Connection timed out

  然后,晓得了,阿里云的25端口默认是封掉的,需要申请25端口解封

解封地址:https://help.aliyun.com/knowledge_detail/56130.html?spm=5176.11065259.1996646101.searchclickresult.777527b9DcosUg

  申请时,需要填写哪些服务器需要解封及关联的域名是哪一个(注意:提交解封申请后,一般您在一个工作日内会收到反馈。)

javax.mail.MessagingException: Could not connect to SMTP host: smtp.xdf.cn的更多相关文章

  1. 【Linux】【Jenkins】邮件发送失败的问题javax.mail.MessagingException: Could not connect to SMTP host:

    javax.mail.MessagingException: Could not connect to SMTP host: smtp.126.com,port:25 解决方案: 之前用的是126邮箱 ...

  2. javax.mail.MessagingException: 501 Syntax: HELO hostname Linux端异常解决

    在项目里面使用javamail在window环境正常,放在服务器上面的时候抛出异常javax.mail.MessagingException: 501 Syntax: HELO hostname ,原 ...

  3. javamail中的 javax.mail.AuthenticationFailedException: failed to connect

    java.lang.RuntimeException: javax.mail.AuthenticationFailedException: failed to connect javax.mail.A ...

  4. javamail发送邮件及错误解决方法javax.mail.AuthenticationFailedException: failed to connect, no password specified?

    javamail发送邮件及错误解决方法javax.mail.AuthenticationFailedException: failed to connect, no password specifie ...

  5. 使用 QQ 邮箱发送邮件报错:java.net.SocketTimeoutException: Read timed out. Failed messages: javax.mail.MessagingException: Exception reading response

    使用 QQ 邮箱发送邮件报错:java.net.SocketTimeoutException: Read timed out. Failed messages: javax.mail.Messagin ...

  6. spring -java.lang.NoClassDefFoundError: javax/mail/MessagingException

    今天遇到这个问题,网上找了半天,终于解决了,最后记录一下. spring集成了mail,于是就测试了下,结果报了java.lang.NoClassDefFoundError: javax/mail/M ...

  7. Could not connect to SMTP host: smtp.***.com, port: 465, response: -1

    背景 在使用javamail进行邮件发送的时候,报错: Could not connect to SMTP host: smtp.***.com, port: 465, response: -1 原因 ...

  8. Could not connect to SMTP host: smtp.qq.com, port: 465, response: -1 SpringBoot发送邮件

    解决方案 换端口 QQ邮箱可以把端口换成587 设置属性 spring.mail.properties.mail.smtp.ssl.enable=true 原因 465端口是为SMTPS(SMTP-o ...

  9. 使用mail架包发送邮件javax.mail.AuthenticationFailedException: failed to connect at javax.mail.Service.connec

    这个错误是因为连接不上邮箱服务器导致的,可能有以下几个原因(以网易邮箱为例) 1.当使用第三方登录邮箱时需要有邮箱的授权码,且要开启POP3/SMTP/IMAP:服务 2.在代码中要调用网易邮箱的密码 ...

随机推荐

  1. 第一章----python简介

    1.python简介 定义:python是一种计算机程序设计语言,是一种相当高级的语言,是用来编写应用程序的高级编程语言: 特点:优势:简单易用:提供了非常完善的基础代码库:优雅,明确,简单.劣势 : ...

  2. 使用神器MobaXterm连接远程mysql和redis

    https://mobaxterm.mobatek.net/download-home-edition.html mysql redis 连接测试 mysql 127.0.0.1 3307 密码使用线 ...

  3. Python成长之路(常用模块学习)

    Python 拥有很多很强大的模块 主要写一下常用的几个吧 大概就是这些内容了 模块介绍 time &datetime模块 random os sys shutil json & pi ...

  4. codeblocks在进行多线程出现phread问题

    undefined reference to 'pthread_create' 出现这个错误是因为编译默认不会链接进程库. 可以选择用gcc进行编译 加上-lpthread 比如:gcc exampl ...

  5. 【BZOJ2506】calc 分段+vector+莫队

    [BZOJ2506]calc Description          给一个长度为n的非负整数序列A1,A2,…,An.现有m个询问,每次询问给出l,r,p,k,问满足l<=i<=r且A ...

  6. 1718 Cos的多项式

    1718 Cos的多项式 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 小明对三角函数充满了兴趣,有一天他突然发现一个神奇的性质. 2cos(nx)似乎可以表示成 ...

  7. Balala Power!(大数+思维)

    Balala Power! Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)T ...

  8. TFS二次开发-基线文件管理器(1)-设计

    CMMI在做基线文件管理的时候,常常是需要记录一部分基线文件的版本.并且这个基线文件记录也需要进行版本控制.TFS在做这件事的时候一般来说会选用标签(Lable)来做一系列文件的版本记录. 但是我发现 ...

  9. redis add 'vm.overcommit_memory = 1' to /etc/sysctl.conf

    w root@well:/etc# vim sysctl.conf #kernel.domainname = example.com # # /etc/sysctl.conf - Configurat ...

  10. 将电脑中编写的app网页放到手机上访问

    http://jingyan.baidu.com/article/3065b3b6e5becdbecff8a4d5.html 1.在控制面板-管理工具找不到IIS,则先在程序-打开或关闭window功 ...