IIS7 SMTP服务器在很长时间后发送电子邮件

时间:2012-10-12 08:18:52

标签: email web-applications iis-7 smtp windows-server-2008

我有一台装有IIS7的Windows Server 8计算机。

我在IIS7上配置了一个SMTP服务器,供.NET Web应用程序使用,向系统用户发送一些通知。

使用Deliver emails to SMTP server25,端口localhost将SMTP服务器配置为no authentication

我的问题是电子邮件发送正确,但直到一天甚至更长时间才发送。我在wwwroot的接送目录中看到了这些电子邮件,但他们只是留在那里。对于系统来说,立即发送电子邮件非常重要。

如何确保电子邮件能够立即发送?

我发现了一个解决类似问题的问题(在这种情况下,电子邮件没有从提取目录中找到,在我的情况下,它们会在一天左右后发送)Need help setup windows server 2008 SMTP server但答案是非常不完整所以我无法检查它是否也能解决我的问题。

这是我使用的代码:

MailMessage mailMessage = new MailMessage();
mailMessage.To.Add(toEmail);
mailMessage.From = new MailAddress(fromEmail);
mailMessage.Subject = emailSubject;
mailMessage.Body = emailBody;
mailMessage.IsBodyHtml = true;

SmtpClient smtpClient = new SmtpClient();
smtpClient.DeliveryMethod = SmtpDeliveryMethod.PickupDirectoryFromIis;
smtpClient.Send(mailMessage);

1 个答案:

答案 0 :(得分:0)

您可以发布发送电子邮件的代码,或者至少确认它没有覆盖IIS设置吗?不同的SMTP属性是否设置在不同的级别 - 可能在服务器和网站上?

您可以尝试这样的操作,这样可以让SMTP服务立即发送电子邮件,而不是存储在提取目录中:

var smtpClient =
    new SmtpClient("127.0.0.1", 25)
    {
        UseDefaultCredentials = false
    };