语法错误,无法识别命令.服务器响应为''

本文关键字:响应 服务器 命令 错误 识别 语法 | 更新日期: 2023-09-27 18:05:58

到目前为止,我已经看了三四个问题,但它们还没有帮助。

我已经设置了SmarterMail 14。X在客户端机器上。我对设置邮件服务器知之甚少(我不知道他为什么认为我知道),但我已经安装了它,设置了指向MX记录的域,端口打开(9998),我能够从web界面发送电子邮件。

然而,我不能从Sql或c#发送邮件。我创建了一个快速而肮脏的应用程序,允许我输入服务器、端口、凭据和to/from,每次我都得到这样的响应:

(内部异常)无法连接到远程服务器

(细节)System.Net.Mail.SmtpException:发送邮件失败。->> System.Net.Sockets.SocketException: No connection could be made because>目标机器主动拒绝它204.12.49.188:25

我已经尝试了多次登录。我还确认SMTP已打开,IMAP/POP3已关闭。我想把它的图片贴出来,但遗憾的是我还不能。

发送的代码如下,它是最简单的:

SmtpClient client = new SmtpClient(ServerTextBox.Text, Convert.ToInt32(PortTextBox.Text));
NetworkCredential login = new NetworkCredential(UsernameTextBox.Text, PasswordTextBox.Text);
client.Credentials = login;
MailMessage message = new MailMessage(FromTextBox.Text, ToTextBox.Text, "Wine and Spirits Jobs Alerts", "Below are this week's job alerts: There are no job alerts at this time");
client.SendCompleted += HandleSendCompleted;
client.SendAsync(message, null);

我也在他们的VPS和我的机器上本地尝试过。我已经打开和关闭了防火墙,我有一个特定的规则,允许9998上的传出流量(你可以远程登录到web界面),所以这不是一个能够联系到它的问题。

我不知道该做什么。如果有人能帮忙??

编辑:很明显我使用了错误的端口- 9998而不是25。现在使用端口25告诉我,要么超时,要么被主动拒绝。防火墙对端口25有特定的规则,允许所有的流量,所以它不应该被阻止。

编辑2:我已经重新创建了域名上的MX记录,并确保它指向正确的IP地址。我还在Smartermail中重新创建了域,并确保SMTP已打开,需要身份验证,SSL没有,POP和IMAP已关闭,并且我的登录是正确的。我也试过打开和关闭防火墙。不行。

语法错误,无法识别命令.服务器响应为''

我终于解决了这个问题。

这与防火墙或MX记录或使用/不使用IP地址无关,而与端口25确实分配给SMTP和SMTP确实打开的事实有关,域本身的IP地址没有分配给SMTP配置,因此SmarterMail实际上并没有监视端口。

问题解决-电子邮件发送。有趣的东西!谢谢大家的回复!

尝试在邮件发送代码中设置SMTP邮件服务器IP地址。

SmtpMail。SmtpServer = "您的邮件服务器名称或IP地址到这里";

SmtpMail.Send(消息);

您可以在全局级别或任何初始化代码中设置此属性。

参考:https://msdn.microsoft.com/en-us/library/system.web.mail.smtpmail%28v=vs.110%29.aspx