【问题标题】:How Do You Send Emails if SMTP is Not Loaded on the Server?如果服务器上未加载 SMTP,您如何发送电子邮件?
【发布时间】:2010-09-27 03:24:35
【问题描述】:

使用代码片段在 VB.Net 中发送电子邮件我已成功从本地计算机发送了一封电子邮件,但是当我将其上传到我的服务器时,我收到一封电子邮件失败的消息。我们有一个运行 SMTP 的国家中继服务器,我在这两种情况下都指向该服务器。两台机器之间唯一的区别是服务器没有运行 SMTP。如果我使用中继服务器发送运行 SMTP 的电子邮件,是否需要在服务器上运行 SMTP?

 Dim message As New MailMessage("DoNotReply@faa.gov", My.Settings.NotifyList, "Starting FalconCMSOffloader @ " & My.Settings.FacID & " - " & Now, "NM")
        Dim emailClient As New SmtpClient(My.Settings.EmailServerAddress)
        emailClient.Send(message)

【问题讨论】:

    标签: vb.net smtp


    【解决方案1】:

    如果指定中继服务器,则服务器上不需要 smtp 服务器。仔细检查 My.Settings.EmailServerAddress 确实指向中继服务器。

    【讨论】:

      【解决方案2】:

      您不需要在本地运行 SMTP,因为 VB.Net 代码应该只是使用基本的 TCP/IP 直接与中继服务器通信。

      查看错误消息会很有用,服务器可能无法访问中继服务器上的端口 25(例如,由于防火墙配置)。请注意,您可以通过从命令行(在服务器上)启动 telnet 来在某种程度上测试此连接性,如下所示:

      telnet RelayServerAddress 25
      

      当您在您的机器上以您的域帐户本地运行代码时,中继服务器也可能会发生一些身份验证,而当代码在本地帐户下的服务器上运行时无法发生这种情况(我在这里做了一些大的假设)。

      【讨论】:

      • 刚刚在服务器上找到了这个。 2008 年 12 月 16 日上午 8:54:44 被端口阻止规则阻止 C:\WINDOWS\system32\telnet.exe 防病毒标准保护:防止群发邮件蠕虫发送邮件 看起来 McAfee 正在阻止我们。谢谢。
      猜你喜欢
      • 2016-12-05
      • 2018-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-10
      • 2016-09-07
      • 1970-01-01
      相关资源
      最近更新 更多