在 Windows 上配置本地 SMTP 服务器以通过 gmail 进行中继的最简单方法?

Sim*_*mon 5 smtp gmail

我们为我们的企业电子邮件提供商提供了 gmail。

我希望能够smtp.gmail.com从 ASP.NET发送邮件。我已经设法做到了这一点 - 它的好处是所有已发送的项目都出现在 gmail 中正确的已发送项目文件夹中。但是,连接到 可能需要长达 2-3 秒的时间smtp.gmail.com。有时它甚至会完全失败。由于这是 ASP.NET 应用程序,我需要能够可靠地发送电子邮件。我不想自己创建一些电子邮件守护程序 - 我只想依赖 SMTP。

我已经尝试过在 IIS6 上使用虚拟 SMTP 服务器,但无法让它工作。活动current session最多显示一分钟,然后消失。

我是否需要使用诸如sendmail 之类的东西来执行此操作- 或者其他一些可以让我更好地控制的免费 SMTP 中继?我什至发现了一个名为“ Gmail SMTP Relay ”的 sourceforge 项目——我们使用的托管服务器已经 安装——它有自己的 SMTP 服务器。

我更喜欢图形化的东西 - 最重要的是我更喜欢 Microsoft SMTP 服务器,因为我已经安装了它。

Hec*_* Jr 5

我为此奋斗了几个星期。以下是我在 3 个使用 SMTP 网关发送电子邮件的 ASP.NET 网站上使用的设置:

地址:smtp.gmail.com 端口:587

1)端口很重要。您可能需要在您的 SMTP 服务器中输入它,如 smtp.gmail.com:587。我好多年没接触过 Microsoft SMTP,所以我不记得设置屏幕是什么样子了。

2) 确保为 SMTP启用SSL,因为 gmail 需要它。

3) SMTP Authentication 应设置为Basic

4) 确保您使用的是实际电子邮件而不是电子邮件别名来进行身份验证。这个给我带来了很多麻烦。

这就是我让它工作的方式。


Sim*_*mon 3

在这里找到了我所需要的解释(使用 IIS 时):

http://fmuntean.wordpress.com/2008/10/26/how-to-configure-iis-smtp-server-to-forward-emails-using-a-gmail-account/

我正在使用此 C# 代码发送邮件

var client  = new SmtpClient("127.0.0.1", 587);
client.EnableSsl = false;
Run Code Online (Sandbox Code Playgroud)

注意:我的 C# 应用程序和本地 SMTP 服务器之间的通信未加密(因此 EnableSsl=false) - 但我的 SMTP 服务器和 GMAIL 之间的通信加密(有关更多信息,请参阅链接的文档)。

重要提示:如果您使用 Microsoft SMTP 客户端中继邮件,请确保“默认 SMTP 虚拟服务器 > 域”列表中没有任何域。如果是这样,任何发送到这些域的电子邮件最终都会进入C:\Inetpub\mailroot\Drop- 在这种情况下,这可能不是您想要的。在遇到发送邮件实际上没有发出的问题后,我刚刚重命名mydomain.com为(字面意思) 。example.com