服务器正在运行:
服务器托pipe许多运行ASP.NET 1.1的网站。 这些网站使用IIS6中内置的SMTP服务器。
SMTP工作一段时间,但几个星期或几个月后,它将停止发送电子邮件。 我试图通过Telnet发送一个似乎很好,所以SMTP服务器不是问题。
我尝试重新启动应用程序池,但它没有任何影响。 我也尝试重新启动IIS 7.0和IIS 6.0,它仍然不会发送消息。
我们发现解决这个问题的唯一临时方式是重启服务器。
有没有一个ASP.NETcaching,我们可以清除或导致这个问题?
更新:
得到了修复!
这是一个预感,但我重新启动服务器中的打印后台处理程序和DNS客户端服务,现在电子邮件已成功发送。
但是我现在仍然知道为什么会发生这种情况的ASP.NET 1.1项目。
更新2:
问题今天再次出现! 我很幸运,我以为我不得不等待几个星期才能再次testing。
我开始通过重新启动DNS客户端服务。 没有效果仍然不能发送电子邮件。 然后我重新启动打印后台处理服务,令我惊讶的是这是罪魁祸首! ?????????
这是甚么,为什么呢? 是吧?
我永久禁用了Print Spooler。 电子邮件仍然有效 我不认为我们打印任何东西,或者如果打印后台处理程序执行除打印以外的任何其他任务。
如果它做任何事情请在下面评论。
更新3:
修复是暂时的。 今天我发现WINSOCK拒绝ASP.NET的连接,但通过telnet邮件接受连接。
仍然试图找出为什么发生这种情况。
更新4:
那么最后做了WINSOCK腐败修复应用重新启动。 希望这永远成立,错误不会再出现。
添加到我的博客: http : //www.moushigo.com/index.php/2012/02/22/trivial-smtp-asp-net-winsock-connectivity-issues/
您可能要考虑使用诸如AWS SES , Mailgun , Portmark或Sendgrid的外部电子邮件传送服务。 这也可能会增加您的电子邮件的传递能力。
得到了修复!
这是一个预感,但我重新启动服务器中的打印后台处理程序和DNS客户端服务,现在电子邮件已成功发送。
但是我现在仍然知道为什么会发生这种情况的ASP.NET 1.1项目。
真正的问题是:为什么重新启动无关的服务解决了这个问题? (打印后台处理程序???)DNS是相关的,我会给你的。 但仍然 – 这很奇怪。 我同意Friism使用外部SMTP服务器会更好,他们很容易连接到ASP.NET,你不妨直接进入一个白名单SMTP服务器,authentication和所有,而不是使用本地中继服务器。 中继电子邮件似乎是一个非常容易的过程,其中包含有关垃圾邮件的所有规则,而现在还没有。
通过外部SMTP服务器发送的另一个技巧是使用端口587而不是端口25.有些ISP不喜欢使用端口25的人用于除自己的首选邮件服务器以外的其他任何用户。