1
我正在创建我的mvc应用程序。我想发送电子邮件给注册的用户。我这样做:通过mvc发送电子邮件
MailMessage mail = new MailMessage();
mail.To.Add(user1.email.Replace(" ", string.Empty));
mail.From = new MailAddress("[email protected]");
mail.Subject = "Class Declaration System user creation confirmation.";
string body = "Dear " + user1.name + ",\n This is to confirm that you have succesfully registered in the system. \n Do not reply to this message. \n Regards";
mail.Body = body;
mail.IsBodyHtml = true;
var smtp = new SmtpClient();
smtp.EnableSsl = true;
smtp.Host = "poczta.mini.pw.edu.pl";
smtp.Port = 25;
一切都很好。我已联系服务器的管理员,我正在通过正确的端口发送所有内容。但是,我得到一个错误:
Command parameter not implemented. The server response was: 5.5.2
> <WIN-KI3H68FIO4E>: Helo command rejected: need fully-qualified hostname
管理员告诉我,这是因为我想送它作为WIN-KI3H68FIO4E,但它应该是something.mini.pw.edu.pl,因为我们有这种限制在这里。我如何在我的代码中进行更改?
正如你所做的一样。您已经将主机设置为“poczta.mini.pw.edu.pl”。你能否澄清你的问题? –
那么,管理员说日志说这个消息是由提交的,这是一个服务器名称(应用程序工作的地方),邮件服务器不接受。邮件服务器只有在提交者为xxx.mini.pw.edu.pl时才会接受它@ChrisPratt –
这是邮件服务器配置问题。你无法在代码中控制它。请求来自的主机基于网络配置。它看起来像Web服务器和邮件服务器在同一个本地网络上,这意味着它们将通过本地主机名来标识。您的邮件管理员需要允许来自该主机名的通信,否则您的Web服务器将不得不放在本地网络之外,以便它将由其外部FQN识别。 –