Я знаю, что есть различные потоки, связанные с этой проблемой, но я не смог принять ни один из ответов на этот поток и заставить его работать на моем сервере.C# mailer - 550 Доступ запрещен - Недействительное имя HELO
Так что попробуй посмотреть, может ли кто-нибудь помочь мне здесь. 99% сообщений отправляются правильно, а некоторые из них фактически возвращаются с этой ошибкой.
Мой код выглядит следующим образом
MailMessage mm = new MailMessage(Settings.EmailCustomerService, to, subject, body);
mm.SubjectEncoding = Encoding.UTF8;
mm.BodyEncoding = Encoding.UTF8;
mm.IsBodyHtml = true;
MailAddress add = new MailAddress(Settings.EmailCustomerService, "Customer Service");
mm.From = add;
try
{
SmtpClient client = new SmtpClient(Settings.EmailSMTP);
client.UseDefaultCredentials = false;
client.Credentials = new NetworkCredential(Settings.EmailUser, Settings.EmailPwd);
System.Threading.ParameterizedThreadStart threadStart = new System.Threading.ParameterizedThreadStart(SendInThread);
threadStart.Invoke(new SendInThreadParams
{
client = client,
Message = mm
});
}
finally
{
mm = null;
}
На самом деле код полномочий был добавлен позже, но мой код был хорошо работать даже без него. Просто случается, что 1% электронной почты никогда не попадают к получателям, и добавление этих двух строк для учетных данных не имеет значения.
Настройки.EmailUser - это просто пользователь на сервере, на котором работает SMTP, но я НЕ прикрепляю его к никуда.
Держу пари, что это проблема.
Сервер SMTP Relay настроен на использование 127.0.0.1 и полное доменное имя это просто название машины (что-то вроде «MACHINE1» ... ничего с именем domain.com)
ошибка я получаю это
Reporting-MTA: DNS; Machine1
Received-С-MTA: DNS; Machine1
Прибытие-Date: Wed, 30 мая 2012 23:08:36 -0700
Конечный получатель: rfc822; [email protected]
Действие: не удалось
Статус: 5.5.0
Диагностическое-код: SMTP; 550 Доступ запрещен - Неверное имя HELO (см RFC2821 4.1.1.1)
вернуться сообщение по электронной почте назад был:
> This is an automatically generated Delivery Status Notification.
Delivery to the following recipients failed.
[email protected]
Благодаря передовой ...
Какова идея с 'threadStart'? Надеюсь, вы не думаете, что это должно начаться. – leppie
Я бы не стал сосредотачиваться на том, как отправляется электронное письмо. Моя текущая проблема - возврат 550 HELO. Я получаю 1% отправленных писем. –
@ Разработчик: для тех 1% вы проверили, как вы отправляете команду HELO? Попробуйте проверить через Wireshark. Лучше всего предположить, что SMTP-сервер не распознает параметр. –