1. 程式人生 > >C#SMTP發送郵件在阿裏雲服務器上需要註意的問題

C#SMTP發送郵件在阿裏雲服務器上需要註意的問題

服務生成 tex mail 生成 div col title 申請 use

  使用SMTP(簡單郵件傳輸協議)發送郵件一般都是使用25端口,而阿裏雲服務器為了安全是將25端口封禁的,會出現在本機測試發送郵件功能正常,但是部署到服務器上卻發送失敗的情況。

  解決辦法是向阿裏雲申請解封25端口,或者更換端口,可以使用465或者587端口。

  代碼如下:

 1 /// <summary>
 2     /// 發送郵件
 3     /// </summary>
 4     /// <param name="bodyStr">郵件內容</param>
 5     /// <param name="title">郵件標題</param>
6 /// <returns>返回結果,成功與否</returns> 7 public static string SendMail(string bodyStr, string title) 8 { 9 SmtpClient smtpClient = new SmtpClient(); 10 smtpClient.EnableSsl = true; 11 smtpClient.UseDefaultCredentials = false; 12 smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
13 smtpClient.Host = "smtp.qq.com"; 14 smtpClient.Port = 587;//改用587端口 15 smtpClient.Credentials = new System.Net.NetworkCredential("[email protected]", "abcdefg"); 16 //密碼不是QQ密碼,是qq賬戶設置裏面的POP3/SMTP服務生成的key 17 MailMessage mailMessage = new MailMessage("[email protected]", "[email protected]
");//from(發出郵箱)和to(目標郵箱) 18 mailMessage.Subject = title;//郵件標題 19 mailMessage.Body = bodyStr;//郵件內容 20 mailMessage.BodyEncoding = System.Text.Encoding.Default;//正文編碼 21 mailMessage.IsBodyHtml = true;//設置為HTML格式 22 mailMessage.Priority = MailPriority.High;//優先級 23 mailMessage.To.Add("[email protected]"); 24 mailMessage.To.Add("[email protected]"); 25 mailMessage.To.Add("[email protected]"); 26 mailMessage.To.Add("[email protected]");//可以發送給多個人 27 try 28 { 29 smtpClient.Send(mailMessage); 30 return "發送成功"; 31 } 32 catch (Exception e) 33 { 34 return "發送失敗" + e.InnerException.Message; 35 } 36 }

C#SMTP發送郵件在阿裏雲服務器上需要註意的問題