2011-06-28 9 views
6

次のコードを使用して、Multipart/Alternative HTMLとPlain Textの電子メールを送信しています。電子メールは賢明なコンテンツを賢明に送信していますが、そのうちのいくつかはスパムフィルタに巻き込まれています。これは私が使用しているコードです。HTMLとプレーンテキストの電子メールのマルチパート/代替メール

$notice_text = "This is a multi-part message in MIME format."; 
$plain_text = "Some Plain Text Here\n\n"; 
$html_text = '<html><head><title>Sample HTML Email</title></head><body>'; 
$html_text .= '<p>Some text will go here.</p>'; 
$html_text .= '<p><img src="http://www.mydomain.com/img/offers.jpg" /></p>'; 
$html_text .= '<p>Can\'t see the images? <a href="http://www.mydomain.com/print_offer.php?promo=' . $promo_code . '">Click here</a></p>'; 
$html_text .= '</body></html>'; 

$semi_rand = md5(time()); 
$mime_boundary = "==MULTIPART_BOUNDARY_$semi_rand"; 
$mime_boundary_header = chr(34) . $mime_boundary . chr(34); 

$from = "Test Email <[email protected]>"; 
$subject = "Get Your Offers Here"; 

$body = "$notice_text 

--$mime_boundary 
Content-Type: text/plain; charset=us-ascii 
Content-Transfer-Encoding: 7bit 

$plain_text 

--$mime_boundary 
Content-Type: text/html; charset=us-ascii 
Content-Transfer-Encoding: 7bit 

$html_text 

--$mime_boundary--"; 

mail($email, $subject, $body, 
    "From: " . $from . "\n" . 
    "bcc: " . $bcc . "\n" . 
    "MIME-Version: 1.0\n" . 
    "Content-Type: multipart/alternative;\n" . 
    "  boundary=" . $mime_boundary_header); 

迷惑メールフィルタにはどのような原因がありますか?平易なテキストとして電子メールを送信すると、彼らはうまくいっています。私がHTML電子メールを送信したときだけ、彼らは捕まえられています。どんな助けもありがとう。スパムフィルタの防止に役立つヘッダーを追加することは可能ですか?

+11

「ここであなたのオファーを取得する」 - 内部の迷惑メールフィルタを設定します。 –

答えて

5

多くのスパムフィルタは、受信メッセージが迷惑メールかどうかを判断するために累積スコアリングシステムを使用します。個々の「スパム性」問題は滑り落ちる可能性がありますが、特定の電子メールに複数の問題が存在する場合は、しきい値に達してメッセージが破棄されます。

あなたのメッセージの中で、私はあなたのスコアを増加させることができるいくつかのことを参照してください。

件名:「ここにあなたのオファーをゲット」

ソリューション:内容についての特定のテキストを含むてみてくださいあなたの会社名を含めることを検討してください。

および

投稿者: "Test Email:[email protected]";

解決方法:実際のメールアドレスを使用してください。不明

ソリューション:あなたのコンテンツを確認してください。また、コンテンツ

に(SPFを参照)

をあなたからのメールを送信しているサーバが適切に設定されていることを確認し、

具体的かつ関連性がある。メールが発信されたドメインを指すリンクがあることを確認してください。 「スパムの多い」キーワード(「提供」、「無料」、「@@k」、 など)をあまり使用しないでください。

自分のメールで嗅覚テストを行うことができます。あなたの会社や製品への参照をすべて削除し、一般的な用語を入力してください。メッセージがメールボックスに到着した場合、そのメッセージを削除するかどうかを確認します。

+0

徹底的な回答ありがとうございます。 Postiniのスパムフィルタで問題が発生していたことが判明しました。それはコンテンツと非常に繊細ですので、私は基本的に私の電子メールの内容と文言を再生してフィルタを通過させなければなりませんでした。 –

+0

これはありがとうございました。非常に参考になりました。 – itsricky

2

あなたのイメージファイルへの直接リンクもspamdarで非常に高い得点を記録しています。

+0

埋め込まれた画像を電子メールでどのようにお勧めしますか? –

+1

base64で画像をエンコードする –

関連する問題