【发布时间】:2013-04-04 01:32:13
【问题描述】:
我在从 ASP.NET MVC 4 应用程序发送电子邮件时遇到问题。我越来越害怕了:
No connection could be made because the target machine actively refused it 127.0.0.1:25
客户端的邮件服务器在另一个盒子上。我有正确的主机名,我可以 ping 它。我还可以使用 telnet 来显示邮件服务器已准备好并正在侦听端口 25。
在我的 web.config 文件中,我有以下内容:
<system.net>
<mailSettings>
<smtp deliveryMethod="Network" from="support@myclient.co.uk">
<network host="mailserver1" clientDomain="OfficeNetwork.local" />
</smtp>
</mailSettings>
</system.net>
但是,我仍然收到上述错误,就好像它试图在本地计算机上查找邮件服务器一样。
为什么?
不是 IIS 或邮件服务器方面的专家,我是否需要在默认配置中添加任何内容,以便在 Web 服务器上运行的我的 Web 应用程序可以使用另一个机器上的邮件服务器?即,是否需要安装 SMTP 服务才能发生这种情况?
【问题讨论】:
-
您能告诉我们您发送电子邮件的代码吗?我认为您的
web.config没有问题。 -
@cheesemacfly:感谢收看。请参阅我的答案,了解为什么要将其留给网络人员。
-
我刚刚看到了您的解决方案,但只是因为我很好奇,当您说
I can also use telnet to show that the mailserver is ready时,您是否真的走到了流程的最后并发送了没有身份验证的电子邮件? -
@cheesemacfly: 不,我刚刚做了 telnet mysmtpserver 25
-
所以可能从一开始就存在身份验证,这就是您的配置不起作用的原因!怪网络人!! ;)
标签: iis asp.net-mvc-4 smtp