【问题标题】:Outgoing Email Sending Issue in Godaddy Windows 2012 VPSGodaddy Windows 2012 VPS 中的外发电子邮件发送问题
【发布时间】:2017-09-12 09:34:10
【问题描述】:

我正在尝试从部署在 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"); 
}

【问题讨论】:

  • 我在 Web 应用技术中使用 ASP .Net MVC 4.5。
  • 你能告诉我们你正在使用的代码吗?
  • 使用 (var smtp = new SmtpClient()) { var credential = new NetworkCredential { UserName = "user@outlook.com", Password = "password" }; smtp.Credentials = 凭据; smtp.Host = "smtp.gmail.com"; smtp.端口 = 587; smtp.EnableSsl = true;等待 smtp.SendMailAsync(消息); return RedirectToAction("Sent"); }
  • 这是我正在使用的代码#Karl Gjertsen
  • 代码已添加到问题中。

标签: vps outgoing-mail


【解决方案1】:

首先,尝试添加:

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 博客in this article

【讨论】:

  • 我从任何 smtp.Host 发送都没有问题。我几乎尝试了所有 smtp.Host。就像谷歌的“smtp.gmail.com”对于 Outlook 的“smtp-mail.outlook.com”。但没有任何效果
  • 这将取决于主机提供商的政策。例如,Google 正在阻止您。
  • 我正在使用 Godaddy 虚拟专用服务器托管服务。所以,这意味着我必须联系 Godaddy 来解决我的问题。 'relay-hosting.secureserver.net' Godaddy 正在使用此 smtp.Host 发送电子邮件。但这也行不通。
  • 是的,我已经尝试了 25 端口。我也尝试了 587 端口。但都无法正常工作
  • 设置一个免费的 sendgrid 帐户并尝试他们的设置。
猜你喜欢
  • 1970-01-01
  • 2021-04-07
  • 1970-01-01
  • 1970-01-01
  • 2012-01-02
  • 1970-01-01
  • 2015-10-16
  • 2016-03-02
  • 2016-08-12
相关资源
最近更新 更多