错误:消息未发送。 服务器回答:354

在webmail上,每个用户在发送邮件时都会收到错误“ERROR:Message not sent。Server reply:354”。

但邮件发送正确,并达到正确。

你能告诉我问题在哪里,为什么发生?

更新:我发现在一些资源,这不是一个错误,但标准的信息消息。 另一方面,这很烦人。 你能告诉我,如果这是真的,如果是我怎样才能避免它?

  • 设置电子邮件代理服务器?
  • snmpd是否支持SendMail队列的SNMP监控?
  • 如何在Exchange 2010上取消分配SMTP自签名证书?
  • CBL这个IP地址是HELO'ing作为“localhost.localdomain”
  • 来自Windows的SMTP HELO命令给出500命令无法识别的错误,从Linux返回相同的命令返回Hello
  • 如何使用sendmail将扫描的邮件重新注入队列
  • One Solution collect form web for “错误:消息未发送。 服务器回答:354”

    TL; DR:

    您的networking邮件程序写得不好,认为响应代码354是一个错误,即使它不是。

    很长的回答:

    这就是SMTP对话的样子(S = server,C = client)

    S: 220 foo.com Simple Mail Transfer Service Ready C: EHLO bar.com S: 250-foo.com greets bar.com S: 250-8BITMIME S: 250-SIZE S: 250-DSN S: 250 HELP C: MAIL FROM:<Smith@bar.com> S: 250 OK C: RCPT TO:<Jones@foo.com> S: 250 OK C: DATA S: 354 Start mail input; end with <CRLF>.<CRLF> C: Blah blah blah... C: ...etc. etc. etc. C: . S: 250 OK C: QUIT S: 221 foo.com Service closing transmission channel 

    正如你看到的,代码354的意思是“好的,我们已经完成了有关发件人和收件人的信息,现在给我实际的邮件”。 然而,你的networking邮件系统已经被编码,认为只有以2开头的响应代码意味着“成功”,所以它采取任何其他代码意味着有问题。 编写webmail程序的人需要回头阅读RFC 5321 ,然后修复这个bug。

    服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器.