阿里云/騰訊云發送SMTP郵件失敗,阿里云/騰訊云服務器不能發郵件解決方法 ,第三種方法是可以不用25端口,配置465端口阿里云/騰訊云發送郵件是成功的,現在阿里云/騰訊云25端口管理的很嚴要申請通過難度太大,我后面就直接用第三種方法配置465端口就可以用。
以阿里云舉例:
第一種方法:解封25端口

第一步:鼠標移上右上角貴司 阿里云賬號【南京XXXX】 上, 這個賬號就在 【簡體中文】功能左邊第一個;
第二步:點擊【安全管控】;
第三步:點擊 【25端口解封】
第四步:點擊【25端口解封申請】
第五步:填寫申請的 IP和對應的郵箱域名,這里注意的是 服務器IP一定要是 阿里云賬號下的服務器,域名的話,不同供應商不同的域名,客戶是自己買的阿里云郵箱,郵箱域名是:mail.zhsiwei.com 配置是成功,qq郵箱可以填寫 mail.qq.com就是用qq郵箱去發送郵件,qq的大家可以去試試這個域名對不,smtp.qq.com配置申請不成功,126郵箱,雅虎郵箱,這里就不一一羅列,可以去對應的郵箱里面找下就好,切記這個郵箱域名很重要配置不好審核就通不過。

第六步:填寫申請表單

第七步:填寫之后確定后就靜靜的等待阿里云客服審核一般最多7個工作日就好了
第二種方法:使用587端口
方法來源:https://blog.csdn.net/u013571196/article/details/78376343
第三種方法:使用465端口
這個方式是官方給的,主要是通過System.Web.Mail.MailMessage來實現發送,大家把這個方法放到自己的項目里面調用就好
/// <summary>/// 通過System.Web.Mail.MailMessage去發送,可以不被阿里云限制25端口的使用/// 暫時一般都用465端口/// </summary>/// <param name="smtpserver">SMTP服務,譬如:smtp.126.com</param>/// <param name="userName">發件箱</param>/// <param name="pwd">密碼</param>/// <param name="nickName">昵稱</param>/// <param name="strfrom">發件箱</param>/// <param name="strto">收件箱</param>/// <param name="MessageSubject">主題</param>/// <param name="MessageBody">內容</param>/// <param name="SUpFile">附件</param>/// <param name="port">端口</param>/// <param name="enablessl">SSL加密</param>/// <returns></returns>public static bool SendWebEmail(string smtpserver, string userName, string pwd, string nickName, string strfrom, string strto, string MessageSubject, string MessageBody, string SUpFile, int port, int enablessl = 0){ System.Web.Mail.MailMessage mmsg = new System.Web.Mail.MailMessage(); //郵件主題 mmsg.Subject = MessageSubject; mmsg.BodyFormat = System.Web.Mail.MailFormat.Html; //郵件正文 mmsg.Body = MessageBody; //正文編碼 mmsg.BodyEncoding = Encoding.UTF8; //優先級 mmsg.Priority = System.Web.Mail.MailPriority.High; System.Web.Mail.MailAttachment data = null; if (SUpFile != "") { SUpFile = HttpContext.Current.Server.MapPath(SUpFile);//獲得附件在本地地址 System.Web.Mail.MailAttachment attachment = new System.Web.Mail.MailAttachment(SUpFile); //create the attachment mmsg.Attachments.Add(attachment); //add the attachment } //發件者郵箱地址 mmsg.From = string.Format("\"{0}\"<{1}>",nickName, strfrom); //收件人收箱地址 mmsg.To = strto; mmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1"); //用戶名 mmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", userName); //密碼 不是郵箱登陸密碼 而是郵箱設置POP3/SMTP 時生成的第三方客戶端授權碼 mmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", pwd); //端口 mmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", port); //使用SSL mmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl", (enablessl == 1 ? "true" : "false")); //Smtp服務器 System.Web.Mail.SmtpMail.SmtpServer = smtpserver; try { System.Web.Mail.SmtpMail.Send(mmsg); } catch (Exception ex) { LogHelper.Error(ex.ToString()); return false; } return true;}
阿里云發送SMTP郵件失敗,阿里云服務器不能發送郵件,其中注意的是填寫的密碼不是郵箱登陸密碼 而是郵箱設置POP3/SMTP 時生成的第三方客戶端授權碼,
自己親測試過可以用希望對大家有幫助
官網案例:https://help.aliyun.com/knowledge_detail/60692.html
轉載地址:http://www.rzrgm.cn/axinno1/p/8303130.html