[PHP/MIME] Mime verkeerd weergegeven

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
lo,

Druk bezig met het schrijven van een php class die MIME email genereerd. Naar mijn idee genereer ik correcte headers, maar om een of andere reden wordt de email bij sommige mailservers niet goed weergegeven.

Als de mail verstuurd wordt naar een @home addy bijvoorbeeld, geeft OE een stukje van de mime headers weer (vanaf X-Sender) alszijnde de body van het bericht, met dus ook de (encoded) body parts. (@home voegt een aantal headers zelf in, zie onderstaande voorbeeld). Ik vermoed dat het door deze headers komt, maar wat doe ik eraan?

Eerst maar even een verkorte versie van het script:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?
$headers = "From: " . $this->from_name . " <" . $this->from_adress . ">" . "\r\n";
$headers .= "Reply-To: <" . $this->reply_adress . ">" . "\r\n";
$headers .= "Return-Path: <" . $this->from_adress . ">\r\n"; 
$headers .= "MIME-Version: 1.0" . "\r\n";
$headers .= "X-Sender: " . $this->from_name . " <" . $this->from_adress . ">" . "\r\n"; 
$headers .= "X-Mailer: " . $this->mailer . "\r\n";
$headers .= "X-Priority: 3\r\n";
$headers .= "Content-Type: multipart/alternative;" . " boundary=\"" . $this->boundary . "\"" . "\r\n";
//Example html message
$headers .= "--" . $this->boundary . "\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
$headers .= "Content-Transfer-Encoding: base64\r\n\r\n"; 
$headers .= chunk_split(base64_encode($this->data)) . "\r\n";
//End
$headers .= "--" . $this->boundary . "--" . "\r\n";
//Send it
mail($this->to, $this->subject, "", $headers);
?>

Als ik dit nu gebruik om een email te versturen naar een adres dat bijvoorbeeld op deze server draait, krijg ik de volgende data (server shiz eraf gehaald, enkel de relevante data)

To: xxx@xxx.nl
Subject: Een test mime mail
From: Test <xxx@xxx.nl>
MIME-Version: 1.0
X-Sender: Test <xxx@xxx.nl>
X-Mailer: Test Mailer
X-Priority: 3
Content-Type: multipart/alternative; boundary="bd_f44ef0648ec2ef021fea3efb464375df"
Message-Id: <20031117172121.A50782371DC@xxx.nl>
Date: Mon, 17 Nov 2003 18:21:21 +0100 (CET)

--bd_f44ef0648ec2ef021fea3efb464375df
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: base64


PGgyPkRpdCBpcyBlZW4gdGVzdCBtYWlsPC9oMj48cD5EZXplIGVtYWlsIGlzIG9wZ2VtYWFrdCBt
ZXQgSFRNTCwgZW4gdmVyem9uZGVuIG1ldCBNSU1FPC9wPg==

--bd_f44ef0648ec2ef021fea3efb464375df--

Helemaal prima zover ik kan zien, OE geeft het bericht ook netjes weer.. (hotmail ed ook btw).. Alleen bij de @home server krijgt het bericht ook nog extra headers, namelijk:

X-AtHome-MailScanner-Information: Neem contact op met support@home.nl voor meer informatie
X-AtHome-MailScanner: Found to be clean

Dit wordt ingevoegd na de "Date: Mon, 17 Nov 2003 18:21:21 +0100 (CET)" regel, en zorgt er dus blijkbaar voor dat OE het bericht weergeeft vanaf 'X-Sender', als plaintext...

Al met al een vrij lange post geworden, maar beter teveel dan teweinig info ;)
Waarom heeft OE hier moeite mee? en wat doe ik eraan?

Acties:
  • 0 Henk 'm!

  • Crazy-
  • Registratie: Januari 2002
  • Laatst online: 11:26

Crazy-

Best life ever

ik denk dat je aan dit topic wel wat hebt:

[rml][ PHP/IIS/MAIL] Geen inhoud ?[/rml]

12,85kWp - ZB 7,5m2/400l - 5kW Pana H WP (CV&SWW) - 13,8kWh accu


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Na wat prutsen en zoeken het antwoord kunnen vinden..
Sommige virus scanners zoals die van @home blijken problemen te hebben met de newlines (\r\n), waardoor je custom headers in de body gefloept worden.
Een oplossing die bij mij prima werkte was een spatie ertussen (\r \n)...

Acties:
  • 0 Henk 'm!

  • stekkel
  • Registratie: Augustus 2001
  • Laatst online: 17-09 08:05
Verwijderd schreef op 17 november 2003 @ 20:27:
Na wat prutsen en zoeken het antwoord kunnen vinden..
Sommige virus scanners zoals die van @home blijken problemen te hebben met de newlines (\r\n), waardoor je custom headers in de body gefloept worden.
Een oplossing die bij mij prima werkte was een spatie ertussen (\r \n)...
Dat is geen oplossing :?

Wanneer gaan de mesnen nu eens eerst rfc2822 en rfc2045-2049 te lezen alvorens met dit soort projecten te beginnen.

Ik zie nu voor de zoveelste keer in een paar dagen dat er niet begrepen wordt wat een rfc822 header is, wat de body van een mail is en dat de body van de mail de mimeheaders EN message parts bevatten.

[ Voor 29% gewijzigd door stekkel op 18-11-2003 00:34 ]