長く使用しているメールアドレスには、spamメール(迷惑メール)がたくさん送られてきます。
一番いい対策は、新しいメールアドレスに変更することなんですが、面倒でやっていません。
いずれやらなければいけないとは思ってるのですが・・・。
現在は、Thunderbirdというメーラーの機能を使って対応しています。
迷惑メールフィルターとメッセージフィルターです。
ただ、以前から気になっていることがあります。
メッセージフィルターをすり抜けているメールがあるのです。
メッセージフィルターとは、条件に合うメールに対し、設定した処理を行うというものです。
「メール本文にあるキーワードがある場合、そのメールを削除する」というような使い方をしています。
今回は、メッセージフィルターをすり抜けているメールの原因を調べ、対策をしてみました。
メッセージフィルターすり抜けメールの特徴
○ メッセージを検索・・・できない
○ ページ内検索・・・できる
メッセージフィルターに引っかからないのは、フィルターで設定しているキーワードがダメなのかもと疑問を持ちました。
そこで、問題のキーワードを使い「メッセージを検索を実行してみました。
「メッセージを検索」の場所
【編集】-【検索】-【メッセージを検索】
すると、普通に検索できています。
すり抜けメール以外は・・・。
この時点で、キーワードがダメという訳ではなさそうです。
ちなみに、「ページ内検索」だとすり抜けメールでも検索できます。
「ページ内検索」の場所
【編集】-【検索】-【このメッセージ内を検索】
すり抜けメールの共通点から原因を探す
文字を認識できていないのかもと思い、すり抜けメールのソースを表示して比べてみることにしました。
メールのソースの表示
【表示】-【メッセージのソース】
文字が関係してそうな所は
Content-Type:text/plain; charset=”shift_jis” です。
全てのすり抜けメールがこのようになっていました。
すり抜けメール以外の場合
Content-Type: text/plain; charset=iso-2022-jp となっていました。
どうやら違いを突き止めたようです。
念のために「メッセージを検索」で
Content-Typeにshift_jisを含むという条件で全てのメールを検索してみました。
すると、すり抜けメール以外のものまで出てきました。
何で?と思いメールのソースを確認。
通常メール
Content-Type: text/plain; charset=Shift_JIS
すり抜けメール
Content-Type:text/plain; charset=”shift_jis”
違いはダブルクォーテーション(”)が使われているかどうかと、大文字が使われているかどうかです。
とにかく、すり抜けメールだけが”shift_jis”と記述されているのです。
「メッセージフィルター」や「メッセージを検索」ができない原因かどうかまではわかりませんが、違いを見つけることができました。
すり抜けメールにメッセージフィルターを適用する
本文での判定はできない。
といって、何もやらないというのでは、メールチェックに時間がかかってしまいます。
幸い、Content-Typeに特徴があるので、それを使ってフィルターの設定をしてみます。
一応、パソコンに残っている800通のメールに対し、Content-Typeに”shift_jis”が含まれていないか検索してみました。
その結果、spamメールしか引っ掛かりませんでした。
設定は
Content-Type に次を含む ”shift_jis”
この設定をしてからは、メール受信時・手動のどちらでも機能しているようです。
原因を見つけるのに少し時間がかかったけど、何とか解決できたようです。