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によって識別されるようにローカルネットワークの外に置かなければなりません。 –