1

我试图让 WebMatrix 在本地服务器上运行(仅用于在我们的 Intranet 中进行测试),但是在我的本地(工作)机器上发送邮件时遇到了问题。

我得到一个简单的操作已超时消息。这个账号是通过gmail设置的,所以我认为不会有太多问题,但是由于我之前从未在服务器上设置过WebMatrix,我真的不知道如何解决这个问题。

当我让电子邮件在这个网站的建设中工作时,我使用了这些设置并且一切正常:

WebMail.SmtpServer = "smtp.gmail.com";
WebMail.SmtpPort = 25;
WebMail.EnableSsl = false;

然后,当我在服务器上使用这些设置运行它时,我收到了这个错误:

The SMTP server requires a secure connection or the client was not authenticated.  The server response was: 5.7.0 Must issue a STARTTLS command first.

有了这个,我们尝试启用 SSL,但之后得到一个简单的响应超时请求(使用这些设置):

WebMail.SmtpServer = "smtp.gmail.com";
WebMail.SmtpPort = 465;
WebMail.EnableSsl = true;

“用户名”和“发件人”字段设置相同 (name@somecity.net) 这是我们由 gmail 管理的电子邮件的示例。密码也设置正确。

通过查看 SSL,我是否在这里追逐错误的东西?

您必须原谅我,因为我以前从未实施过 SSL。我知道 SSL 是什么,但我以前从未设置过它,所以如果我在设置它时是个菜鸟,我深表歉意。

此外,您可以肯定地知道,服务器错误实际上是 WebMail.Send 方法上的错误。

4

2 回答 2

3

您应该更改 Gmail 的SMTP 端口。现在,gmail 正在使用587而不是465

您可以使用telnet smtp.gmail.com 587. 然后你应该得到这样的东西:

220 test.auto.mySMTPserver.com ESMTP Service (Lotus Domino Release 8.5.3FP2 HF95) ready at Tue, 30 Oct 2012 08:27:31 -0700

您的新代码:

WebMail.SmtpServer = "smtp.gmail.com";
WebMail.SmtpPort = 587;
WebMail.EnableSsl = true;

就是这样。

于 2012-10-30T16:37:44.377 回答
0

我会说该消息告诉您您未通过身份验证,因此您可能需要为服务器上的有效用户发送用户名/密码。有关向邮件服务器进行身份验证以发送的示例,请参阅此问题。

于 2012-10-30T15:15:57.813 回答