configuration本地SMTP服务器通过Windows上的Gmail进行中继的最简单的方法是什么?

我们有我们的企业电子邮件提供商的Gmail。

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

我已经尝试过使用IIS6上的虚拟SMTP服务器,但一直没有得到它的工作。 显示活动的current session长达一分钟,然后消失。

我需要使用像sendmail这样做 – 或者一些其他免费的SMTP中继,让我更好的控制? 我甚至发现了一个名为“ Gmail SMTP Relay ”的sourceforge项目,而且我们使用的是托pipe服务器 安装 – 它有自己的SMTP服务器。

我更喜欢graphics – 而最重要的是我更喜欢Microsoft SMTP服务器,因为我已经安装了它。

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

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

1)港口非常重要。 您可能需要在SMTP服务器中inputsmtp.gmail.com:587。 多年来我没有碰到微软的SMTP,所以我不记得安装程序的样子。

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

3)SMTPauthentication应该设置为基本

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

这是我得到它的工作。

在这里find这个解释正是我需要的(当使用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; 

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

重要提示:如果您使用Microsoft SMTP客户端中继邮件,请确保您在“默认SMTP虚拟服务器>域列表”中没有任何域。 如果是的话,任何邮件发送到这些域将在C:\Inetpub\mailroot\Drop – 这可能不是你想要在这种情况下。 在发送邮件出现问题之后,我只是将mydomain.com重命名为(实际上) example.com