郵件無法發送到 SMTP 服務器。傳輸錯誤代碼爲 0x80040217。服務器響應爲 not available
行 143: SmtpMail.SmtpServer = "smtp.21cn.com";
行 144: //發送郵件
行 145: SmtpMail.Send(mailMsg);
行 146: #endregion
行 147: Response.Write("<script language=javascript>alert('發送成功,我們會在三個工作日內給您做出回覆!');");
【解決方法】
1. make sure you properly configured your SMTP server in Internet Service Manager
2. try
SmtpMail.SmtpServer = "127.0.0.1";
or some other mail server, but you might need to grant ASPNET more permissions, for example, make ASP.NET runs under SYSTEM by changing machine.config
以上是思歸回答,回答當然是正確!不要再相信網上其他的是是而非的回答了,歸根到底,問題的關鍵就是沒有SMTP服務響應(大家可以瞭解一下SMTP協議),其實出錯的提示已說的很清楚了,“服務器響應爲 not available”,沒有本地SMTP服務中轉到遠程的郵箱服務器,所以思歸建意你SmtpMail.SmtpServer = "127.0.0.1";來中轉,但很快會現下面的問題。你不要着急,下面也會提出解決的方法。
服務器拒絕了一個或多個收件人地址。服務器響應爲: 550 5.7.1 Unable to relay for [email protected]
異常詳細信息: System.Runtime.InteropServices.COMException: 服務器拒絕了一個或多個收件人地址。服務器響應爲: 550 5.7.1 Unable to relay for [email protected]
源錯誤:
行 199: SmtpMail.SmtpServer="127.0.0.1"; 行 200:// SmtpMail.SmtpServer="smtp.163.com"; 行 201: SmtpMail.Send(mail); 行 202: 行 203: ret=true; |
【解決方法】
打開IIS服務器,默認SMTP虛擬服務器—>屬性
如下圖:
添加可以通過此虛擬服務進行中繼的計算機。
添加可以通過此虛擬服務進行中繼的計算機。
已經測試通過。
轉載自:http://www.cnblogs.com/shenj/archive/2008/09/11/1289491.html