上云 C# smtp 定时自动发邮件 代码 报错 无法连接到远程服务器 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。

报错如下:Can not send email!System.Net.Mail.SmtpException: 发送邮件失败。 ---> System.Net.WebException: 无法连接到远程服务器 ---> System.Net.Sockets.SocketException: 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。 210.***.***.***:25

描述:Smtp定时自动发邮件 有时成功 有时失败,过个几分钟 又会发送成功,但是成功几次以后又报端口25错误。但以前在本地服务器时,同样的代码,没有这种情况。

解决办法: 1 首先检查 云端 比如 阿里 腾讯 亚马逊 是否开放了 25端口 或者 发邮件的其他端口 举栗7000端口,没开通的请申请开通。

                   2  邮件服务器 是否 把 云端 自动发邮件机器的 域名或者IP 加入了白名单

                   3  邮件服务器 防火墙 是否 开通25端口 或者 发邮件的其他端口

我遇到的情况是:自动发邮件机器在云上、邮件服务器依旧在本地机房, 按照1和2都放开,依旧报错,然后本地邮件服务器防火墙 开通25端口,还是没用。

以前成功 是因为 邮件服务器和定时发邮件的应用服务器都在同一局域网中,不走防火墙,所以没有问题。现在虽然 防火墙开通25端口,但是估计防火墙中有啥特殊判断,所以依旧报错。

折腾了一下午,最后是 新开个端口 绕过本地邮件服务器的 防火墙就好了 ,举个栗子:云端 定时自动发邮件的肉机 发邮件端口改用7000端口 不用25常用端口,然后本地邮件服务器也开通7000端口发邮件,问题解决

 

             //设置邮箱的地址或IP   

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值