发送不在生产环境中工作的邮件 - 相同的设置

时间:2012-11-01 20:29:49

标签: asp.net email iis web-config smtp

在我的网站上,我发送电子邮件。我的情况是这些邮件是在使用我的本地开发机器时发送的,而不是在我的生产环境中发送的。

两个网站上的web.config相同:

  <system.net>
    <mailSettings>
      <smtp from="info@domain.dk" deliveryMethod="Network">
        <network host="mail.domain.dk" userName="info@domain.dk"  password="mypassword" port="26"></network>
      </smtp>
    </mailSettings>
  </system.net>

在我的代码中,我这样发送:

 SmtpClient client = new SmtpClient();
 client.Send(mail);

我不知道如何调试此问题,因为它与生产和开发完全相同。

有关如何开始调试/解决问题的任何想法?

编辑:

我设法从服务器获取日志。错误是:

2012-11-01 20:41:58,383 [11] FATAL GKBusiness.Managers.MailManager [(null)] - Email exception: Mailbox unavailable. The server response was: Access denied - Invalid HELO name (See RFC2821 4.1.1.1)

1 个答案:

答案 0 :(得分:1)

  

我的情况是在使用我的本地开发计算机时发送这些邮件,而生产环境中

<network host=..... port="26">

如果您位于共享托管环境中,ASP.Net可能设置为Medium Trust - 如果是,SMTP is restricted to port 25

它将在您的本地环境中运行,因为ASP.Net设置为Full Trust(在本地/ VS dev中)。