Как реализовать идентификатор Отправителя при отправке писем через C#?

Я просто услышал разговор Joel & Jeff об идентификаторе Отправителя в их подкасте номер 83, и он произошел со мной, это, в чем я нуждаюсь для сайта, я продолжаю работать.

Приблизительно 90% всех электронных писем, посланных с сервера, возвращаются или подобны, вероятно, потому что сервер не "проверен".

Я имею в распоряжении запись SPF для сервера, но это - также в значительной степени он.

Таким образом, так как StackOverflow решили эти проблемы, я предполагаю, что идентификатор Отправителя должен быть способом пойти.

Насколько я могу сказать из Википедии, она требует, чтобы Вы изменили почтовый заголовок при отправке писем - как я пошел бы о выполнении этого от C#?

Также, что я должен был бы установить мудрый DNS, и т.д. для создания этой работы?

Или я на абсолютно неправильную дорожку здесь?

Править: Я использую стандартный класс SmtpClient в C# для отправки писем, и я действительно включаю и простой текст и версию HTML mailbody.

6
задан Steffen 4 March 2010 в 09:36
поделиться

2 ответа

Если вы отправляете почту от имени другого пользователя и хотите, чтобы она была принята, вам может потребоваться сделать следующее:

В вашем объекте MailMessage:

mail.To = new MailAddress("email@tosomeone.com", "To Someone");
mail.From = new MailAddress("sendinguser@fromsomeone.com", "Sending User");
mail.Sender = new MailAddress("serveraddress@your-domain-with-spf.com", "Your Server");
mail.ReplyTo = new MailAddress("sendinguser@fromsomeone.com", "Sending User");

​​Это сгенерирует соответствующие заголовки, необходимые для работы проверки SPF (при условии, что на сервере установлены значения по умолчанию, они могут выбрать, какую часть проверить). В результате электронное письмо будет выглядеть (в Outlook)

От: Ваш сервер от имени отправляющего пользователя
Кому: Кому-то

Большинство протоколов SPF проверяют Отправитель: , чтобы определить, разрешает или запрещает его отправляющий домен, поэтому он должен исходить из вашего домена, независимо от того, от кого вы его отправляете.

Кроме того, вы можете дважды проверить, что ваши записи SPF настроены правильно и что ваш IP-адрес (а) не находится в черном списке , таком как spamhaus. Проверка фактического возвращаемого текста вызова обычно говорит вам, почему он блокируется с ошибкой 5.something.

4
ответ дан 17 December 2019 в 02:27
поделиться

Я не вижу причин, почему вам нужно вносить изменения в заголовки для ID отправителя/SPF. С вашей записью на месте, вам просто нужно убедиться, что ваши исходящие сообщения будут From: домен, который имеет соответствующий опубликованный IP отправителя (публичный) в вашей записи SPF в DNS.

Однако, я думаю, вы можете изучить MailMessage.Headers, чтобы увидеть, какие заголовки отправляются (или отправить сообщения самому себе), чтобы определить на основе типа вашей SPF-записи, как принимающие почтовые серверы будут вычислять домен для соответствия вашей SPF-записи.

2
ответ дан 17 December 2019 в 02:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: