1

我正在尝试从部署在 Godaddy Windows 2012 Vitual Private Server 中的 Web 应用程序发送电子邮件。

错误显示“服务器主动拒绝连接”。

电子邮件从我的本地系统发送,但传出的电子邮件在 Godaddy 主机上不起作用。

using (var smtp = new SmtpClient()) { 
    var credential = new NetworkCredential { 
        UserName = "user@outlook.com", 
        Password = "password" }; 
    smtp.Credentials = credential; 
    smtp.Host = "smtp.gmail.com"; 
    smtp.Port = 587; 
    smtp.EnableSsl = true; 

    await smtp.SendMailAsync(message); 

    return RedirectToAction("Sent"); 
}
4

1 回答 1

0

首先,尝试添加:

smtp.UseDefaultCredentials = false;  

前:

smtp.Credentials = credential;

自 2016 年 6 月起,Gmail 将其 DMARC 政策从 更改p="none"p="reject".

使用以 , 结尾的发件人地址发送的任何电子邮件@gmail.com都必须来自 Gmail 的基础架构。

您将需要使用电子邮件发送服务,例如 SendGrid ( www.sendgrid.com ) 或 mailgun ( www.mailgun.com )

无论如何,您都应该使用其中一种,因为它们可以帮助您远离垃圾邮件黑名单并提供许多其他好处,包括向您显示电子邮件是否因电子邮件地址错误、垃圾邮件报告等而被阻止的详细信息。

有关 DMARC 是什么以及它如何工作的更多信息,请参阅 Sendgrid 博客上的这篇文章

于 2017-09-12T10:55:58.800 回答