#c# #email #smtp #windows-server-2012-r2 #windows-server
#c# #Адрес электронной почты #smtp #windows-server-2012-r2 #windows-server
Вопрос:
Я строго следовал этому руководству, чтобы настроить SMTP-сервер на Windows Server 2012 R2 с помощью IIS 6. На самом деле, если я создам правильно отформатированный файл email.txt внутри
C:inetpubmailrootPickup
с полями «От», «Кому» и «Тема» оно немедленно отправляется на адрес электронной почты назначения с правильным отправителем.
Затем у меня есть платформа, генерирующая мое веб-приложение ASP NET C # ad, когда оно пыталось отправить электронное письмо с:
IDMailer v_M1 = null;
v_M1 = (IDMailer)new IDMailer();
v_M1.FromAddress = (new IDVariant("allegretti@er-go.it")).stringValue();
v_M1.AddToAddress((new IDVariant("lorenzo.vinci@conservice.it")).stringValue());
v_M1.Subject = (new IDVariant("prova")).stringValue();
v_M1.HTMLBody = (new IDVariant("<b>ciao!</b>")).stringValue();
try
{
v_M1.SendMail();
}
catch (Exception e3)
{
MainFrm.set_AlertMessage(new IDVariant(e3.Message));
}
затем у меня возникает ошибка при отправке электронного письма, которое завершается неудачно. Я также попробовал оба следующих параметра в пуле приложений моего веб-приложения:
и они оба терпят неудачу с этими сообщениями об ошибках:
Thursday, October 6, 2016 - 5:38:09 PM
Failure sending mail.
at System.Net.Mail.SmtpClient.Send(MailMessage message)
at com.progamma.IDMailer.SendMail()
DTT_LEVEL=5
DTT_MSGLEVEL=3
DTT_LEVEL=5
DTT_MSGLEVEL=3
Failure sending mail.
at System.Net.Mail.SmtpClient.Send(MailMessage message)
at com.progamma.IDMailer.SendMail()
The message could not be sent to the SMTP server. The transport error code was 0x80040217. The server response was not available
at System.Web.Mail.SmtpMail.LateBoundAccessHelper.CallMethod(Object obj, String methodName, Object[] args)
at System.Web.Mail.SmtpMail.CdoSysHelper.Send(MailMessage message)
at System.Web.Mail.SmtpMail.Send(MailMessage message)
at com.progamma.IDMailer.SendMailSSL()
--------------------------------------------------------------------
Thursday, October 6, 2016 - 5:38:25 PM
Failure sending mail.
at System.Net.Mail.SmtpClient.Send(MailMessage message)
at com.progamma.IDMailer.SendMail()
Я понятия не имею, почему это происходит, но мне действительно нужно правильно настроить SMTP-сервер на нашем сервере Windows. Я пытался использовать smtp-сервер Google как реальный, и все было в порядке, но это не позволило нам установить произвольный адрес электронной почты отправителя, а только один из учетных записей, используемых для подключения к smtp-серверу gmail. Вот почему мне нужен мой SMTP-сервер, потому что отправитель и адрес будут меняться в зависимости от входа пользователя в веб-приложение.
Как я могу это решить?
Может быть, это происходит потому, что веб-приложение установлено на диске D (который имеет собственные каталоги pickup emailroot) вместо диска C?
Комментарии:
1. обычно это вызвано неправильным именем пользователя или паролем, или неправильным IP-адресом, или антивирусом / брандмауэром, блокирующим порт.
2. Я думаю, что это не причина, потому что, как показало видео, я не разрешил аутентификацию, но анонимные подключения к серверу и IP-адрес указаны правильно. Я даже не думаю, что антивирус блокирует порт 25, потому что, если я напишу file.txt внутри каталога самовывоза, чем электронное письмо отправляется сразу…
3. Заблокирован ли порт брандмауэром или антивирусом?
4. Я проверю это завтра, как только снова войду в свой офис. В любом случае, я действительно не думаю, что порт заблокирован, иначе я не смог бы отправить электронное письмо, записав файл внутри каталога отправки … более того, наша платформа позволяет веб-приложению работать полностью внутри сервера, в то время как на стороне клиента есть только js html css… таким образом, запрос на отправку электронного письма просматривается внутри самого сервера