phpで送ったメールのヘッダーが本文にはみ出す
表題のことでこまっております。
phpでメールフォームを作ったのですが、送ったメールをOutlookExpress(OE)で受信したときに、ヘッダーの一部が本文に表示されてしまいます。
OEで受信メールのプロパティを開くと下記のようになっております。
Return-Path: <xxx@xxx>
Delivered-To: xxxxx_xxxxx@xxxx.xxx
Received: (qmail 16291 invoked by uid 48); 1 Feb 2007 16:26:13 +0900
Date: 1 Feb 2007 16:26:13 +0900
Message-ID: <20070201072613.16290.qmail@xxxx.xxx>
To: yyyyy@yyyy.yyy
Subject: =?iso-2022-jp?B?
From: zzz@zzzz.zzz
X-Mailer: ContactForm
MIME-Version: 1.0
Content-Type: text/plain;charset=ISO-2022-JP
Content-Transfer-Encoding: base64
本文にはみ出るのは最後の3行(MIME~base64)です。
原因は空行が入っているためだと思いますが、OEのメールソースでは空行はありません。
プログラムのソースは
$header ="From: $from\r\n";
$header ="CC: $cc\r\n";
$header .= "X-Mailer: $mailer\r\n";
$header .= "MIME-Version: 1.0\r\n";
$header .= "Content-Type: text/plain;charset=ISO-2022-JP\r\n";
$replyheader .= "Content-Transfer-Encoding: base64\r\n";
$Subject='=?iso-2022-jp?B?'.base64_encode(mb_convert_encoding($Subject,'JIS','SJIS')).'?=';
@mail($from,$Subject,$Message,$header);
hotmailなどのwebメーラーで見たときにははみ出していません。
これはなぜでしょうか?宜しくお願いします。
お礼
ある企業からのメールを(Received: 以下をコピペし)試しに解析した所、確かには解析出来ました。 すると「このメールは送信元を偽装していないようです。」とか 下の方に「safe」とたくさん表示されました。 これでこれから怪しいメールをaguseで解析する事が出来ます。どうもありがとうございました。