1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 阿里云发送SMTP邮件失败

阿里云发送SMTP邮件失败

时间:2020-06-22 13:34:06

相关推荐

阿里云发送SMTP邮件失败

今天在测试邮件功能的时候,发现明明在本地发邮件功能可以正常使用的,但是放到了阿里云服务器上,就发送失败。报错信息如下:.WebException: 无法连接到远程服务器 ---> .Sockets.SocketException: 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。

想到阿里云喜欢用安全组屏蔽端口,于是我就赶紧去配置了安全规则。进站出站都配置了,结果还是不行,然后索性把防火墙也关了,依旧不行。经过一番折腾,发现阿里自带屏蔽25端口。简直尴尬,后来找了阿里的一些规则文档,发现需要申请开通屏蔽端口。但是经过咨询了阿里工作人员,发现现在已经不开放25端口,因为什么《互联网信息服务管理办法》、《中国互联网协会反垃圾邮件规范》均对垃圾邮件进行说明与管理规范。让我考虑SSL加密SMTP通过465端口进行发件。然后试了一波,发现465发送不了QQ邮件,尝试了587端口成功了。

代码如下:

public static bool SendTheMail(string strto, string subj, string bodys)

{

SmtpClient _smtpClient = new SmtpClient();

_smtpClient.EnableSsl = true;

_smtpClient.UseDefaultCredentials = false;

_smtpClient.DeliveryMethod = work;

_smtpClient.Host = "";

_smtpClient.Port = 587;

_smtpClient.Credentials = new workCredential("aaa@", "666");

//密码不是QQ密码,是qq账户设置里面的POP3/SMTP服务生成的key

MailMessage _mailMessage = new MailMessage("aaa@", "888@");

_mailMessage.Subject = subj;//主题

_mailMessage.Body = bodys;//内容

_mailMessage.BodyEncoding = Encoding.Default;//正文编码

_mailMessage.IsBodyHtml = true;//设置为HTML格式

_mailMessage.Priority = MailPriority.High;//优先级

try

{

_smtpClient.Send(_mailMessage);

Console.WriteLine("发送成功");

return true;

}

catch (Exception e)

{

Console.WriteLine("发送失败");

throw e;

}

}

写这个文章主要是为了方便后来人,毕竟我也折腾了大半天,找资料也没找到合适的。如果帮助到了别人,也是很欣慰的。

第一次写博客,以后有好的解决问题方案也会拿出来一起参考讨论,经常听人家说写博客也是提升自我的方式,我也来尝试看看。如果写的不对或者片面了,希望大家留言指点!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。