簡體   English   中英

SMTP:錯誤中繼

[英]SMTP : error relaying

我正在創建一個從服務器ip而不是SMTP發送電子郵件地址的電子郵件客戶端,我編寫了以下代碼:

SmtpClient server = new SmtpClient("50.23.128.66");
MailMessage msg = new MailMessage("from@yahoo.com", "tome@yahoo.com", "subject", "body");
server.Send(msg);

但是當我運行它時,我得到那個錯誤:

未處理的異常:System.Net.Mail.SmtpFailedRecipientException:郵箱不可用。 服務器響應為:5.7.1中繼被拒絕。 在System.Net.Mail.SmtpTransport.SendMail(MailAddress發件人,MailAddressColl選擇收件人,字符串deliveryNotify,SmtpFailedRecipientException&異常)

*順便說一下,我正在使用Windows Server 2008 *,並且我將smtp服務器配置為localhost和端口25,但是我不知道那是什么依賴錯誤。

如果您使用本地主機來依賴電子郵件,則應該使用127.0.0.1或本地主機,而不是您在代碼中發布的IP地址。

中繼是SMTP服務器用來驗證它應該路由來自特定發件人的電子郵件的方法。 “開放中繼”意味着沒有身份驗證,SMTP服務器將發送從任何人發送的電子郵件。 這不是一個好習慣,並且此特定SMTP服務器上可能存在一些進行身份驗證的機制,例如用戶名和密碼,甚至是發件人的IP地址。 請與SMTP服務器的管理員聯系,以了解要求的內容。 我認為您至少需要設置用戶名和密碼,而您在代碼示例中沒有這樣做。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM