我的代码使用System.Net.Mail.MailMessage通过smtp.gmail.com在端口587上发送电子邮件。当我在Windows 7的计算机上通过IIS运行此代码时,它可以工作。电子邮件已发送,并且已到达。
在Windows Server 2008上的IIS上运行的完全相同的代码不起作用。所有事情都保持不变,唯一的区别是操作系统。它们都运行在同一个网络上,因此它不是路由器安全问题。我试图在端口587上禁用传出防火墙,但这不起作用。我试图在以下两个问题中应用答案,但这些问题都不起作用:
Sending email through a Google Apps account is working locally, but not on my web server
c# SmtpClient class not able to send email using gmail
任何人都知道Windows Server上的哪些安全设置阻止我发送电子邮件?
我得到的错误: 无法解析远程名称:'smtp.gmail.com'
答案 0 :(得分:0)
我昨天遇到了这个问题,我现在找到了解决方案,现在为时已晚,但希望这有助于其他人 看到这个link,你需要的是
ServicePointManager.ServerCertificateValidationCallback =
delegate(object s, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)
{
return true;
};
和
Credentials = new NetworkCredential("xxx@zzz.ccc", "sdfsdf")