![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
![]() |
|
Themen-Optionen | Ansicht |
![]() |
#1 |
Inventar
![]() Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552
|
![]() Hi!
Gibt es die Möglichkeit eine e-Mail, welche per SMTP gesendet wird "validieren" zu lassen, dass nur erlaubte Zeichen gesendet werden und die Mail korrekt beendet wird? Mein Problem ist nämlich, dass eine .NET Anwendung eine HTML-Mail sendet und darin anscheinend ein unerlaubtes Zeichen vorkommt bzw. die Mail nicht korrekt mit <CRLF>.<CRLF> abgeschlossen wird. Manche (genau gesagt 2 von geschätzten 800-1000) Empfangsserver nehmen dadurch die Nachricht nicht an. Die .NET Anwendung sendet direkt über den IIS SMTP der die Mail ohne Smarthost zustellt. Auch eine Weiterleitung an den Exchange und dann ins Internet funktioniert nicht (der Exchange ändert den Mail-Inhalt nicht --> das "unerlaubte" Zeichen ist noch da). Denn öffnet man die nicht zugestellte Mail per Outlook und sendet sie erneut, funktioniert der Versand. (d.h. Outlook verändert irgendwas an der Mail automatisch und dann klappt die Zustellung) Bzw. kennt jemand eine Zusammenfassung der DO's and DON'Ts beim Mailversand (möchte ehrlich gesagt nicht das Protokoll "auswendig lernen" ![]() Danke, lg renew |
![]() |
![]() |
![]() |
#2 |
Hero
![]() Registriert seit: 26.07.2001
Ort: Wien
Beiträge: 811
|
![]() warum vergleichst du nicht einfach das "original"-mail mit dem mail, welches outlook versendet? die unterschiede lassen sich danach auch sicher leicht manuell (also selbst programmiert) nach dem gleichen schema ändern...
____________________________________
nobody is perfect |
![]() |
![]() |
![]() |
#3 |
Inventar
![]() Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552
|
![]() Das habe ich natürlich schon einmal gemacht (mit Ultraedit - DIFF)
Leider sind die Unterschiede nicht so klein. Außerdem habe ich keinen direkten Zugriff auf den kompletten Source (also inkl. Header & Co) des Mails! Man hat nur die Object-Properties (Subject, Body, MailFrom, ...) bearbeiten. Außerdem könnte es auch ein unerlaubter Newline Character (\n) od. ähnlicher nicht sichtbarer character sein sein. Auch wenn ich nicht glaube, dass das Schuld ist - da ich diese Probleme schon ausgebessert habe bzw. mir gerade nochmals den Source des Files angeschaut habe und Notepad keine fehlerhaften Newlines "meldet" (auch Ultraedit meckert nicht...) Habe inzwischen auch das Email-Format auf TXT umgestellt (es gibt auch ein TXT Template) und diese Mail ist durchgegangen - ich warte allerdings noch auf die Bestätigung der anderen Seite. |
![]() |
![]() |
![]() |
#4 |
Inventar
![]() Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552
|
![]() Also die Txt-mail ist definitiv durch gegangen.
--> es muss also am HTML File liegen (bzw. am Code der noch HTML-Code einfügt) |
![]() |
![]() |
![]() |
#5 |
Hero
![]() Registriert seit: 26.07.2001
Ort: Wien
Beiträge: 811
|
![]() das ist jetzt glaube ich eher schwer herauszufinden, da es demnach nicht an den zeilenumbrüchen liegt?! (txt-mails haben ja auch umbrüche) - oder?
"gültiges html" wird es ja eh sein? ![]() passt die codierung bzw. deren angabe?
____________________________________
nobody is perfect |
![]() |
![]() |
![]() |
#6 |
Inventar
![]() Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552
|
![]() Ja es ist eine sehr verflixte Sache.
Probleme mit falschen newlines (also kein CRLF bzw. \r\n) hatte ich wie gesagt schon - da warens ca. 30-40 Server die da gemeckert haben. Jetzt bin ich eben herunten auf diesen beiden. Hier noch ein paar Zusatzinfos, was bisher schon erledigt wurde bzw. was ich ausschließen kann: Hier ein Auszug aus meinem SMTP Log: Code:
- - 220+****0***************** HELO - mymailserver.mydomain.at - - 250+smtp.receipient2.at MAIL - FROM:<out@mydomain.at> - - 250+ok RCPT - TO:<office@receipient.at> - - 250+ok DATA - - - - 354+go+ahead Aja, hier noch ein Eintrag vom Logfile des Empfangsserver (ist eine Linux-Kiste vermutlich mit sendmail - was ich so ergoogelt habe): Jun 2 06:11:40 mail1 sm-mta-rx[22127]: l523BdMG022127: SYSERR(root): collect: read timeout on connection from gateway.domain.at, from=<versand@domain.at> Blackgelistet bin ich wohl auch nicht - da würden einige Mails bei ca. 500 Mails/Tag nicht ankommen. Auch reverse DNS müsste passen bzw. hats da auch kurz Troubles gegeben, die seit dem erstellten MX Eintrag ok sind. (wie man sieht, habe ich schon einige Sachen hinter mir ![]() |
![]() |
![]() |
![]() |
#7 |
Inventar
![]() Registriert seit: 27.02.2001
Beiträge: 1.967
|
![]() Hi!
Du kannst ja mal nachfragen, um welchen MTA es sich handelt. Das "go ahead" riecht sehr nach qmail, die Fehlermeldung passt zu sendmail. Nach kurzem googlen fand ich das: http://www.webservertalk.com/archive...4-1484825.html .. ein Bug in sendmail 8.13.6? Grüße Manx PS: Ich hab eine Qmail-Kiste am laufen, falls Du was Testen möchtest |
![]() |
![]() |
![]() |
#8 |
Newbie
![]() Registriert seit: 28.07.2007
Beiträge: 1
|
![]() Hallo,
habe seit einigen Wochen gleiches Problem. Nach Analyse eines betroffenen Mails das in der SMTP-QUEUE liegt: im Textteil der HTML-Nachricht befindet sich eine Zeile mit CRLF.CRLF Der MS-SMTP-Server von Win2003 SP2 kann diese Nachricht nicht übermitteln. (in beiden Log-Reports wird die Nachricht weder mit OK noch mit einem Error beendet) Habe es mit einem MS-SMTP-Server von Win2003 SP1 probiert - dort funkt es. Bei MS bis jetzt keine Info gefunden. Kennt jemand dieses Problem? Grüße Georg |
![]() |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|