MozillaZine.jp フォーラム https://forums.mozillazine.jp/ |
|
「メッセージを検索」で検索できないアドレスについて https://forums.mozillazine.jp/viewtopic.php?f=3&t=2592 |
ページ 1 / 1 |
作成者: | wire [ 2006年12月24日(日) 15:23 ] |
記事の件名: | 「メッセージを検索」で検索できないアドレスについて |
Win2KSP4でThunderbird 1.5.0.9を使用しています。 以前から「メッセージを検索」で差出人のメールアドレスが検索でき ないときがあったのですが、検索できるときとできない時の違いが わからずここで聞くこともできず困っていました。 それがこの度、たまたま違いらしいものが見えてきましたので、この 件についてどなたかご存知の方いらっしゃいましたらお教え願います。 「メッセージを検索」で「差出人」、「が次を含む」、「xxx@yyy.zzz」 を指定して検索したとき、差出人のメールアドレスが以下のように 「ほげ」の部分がMIMEではなくiso-2022-jpで書かれているメッ セージが検索できないようです。 ほげ <xxx@yyy.zzz> これは仕様なのでしょうか? |
作成者: | kiki [ 2006年12月25日(月) 17:08 ] |
記事の件名: | Re: 「メッセージを検索」で検索できないアドレスについて |
wire さんが書きました: 「メッセージを検索」で「差出人」、「が次を含む」、「xxx@yyy.zzz」
を指定して検索したとき、差出人のメールアドレスが以下のように 「ほげ」の部分がMIMEではなくiso-2022-jpで書かれているメッ セージが検索できないようです。 ほげ <xxx@yyy.zzz> Windows XP Pro SP2,Thunderbird 1.5.0.9 日本語版で試してみました。 「メッセージを検索」で「差出人」、「が次を含む」、「xxx@yyy.zzz」でヒットして抽出 しました。 *「xxx@yyy.zzz」は適当に変えてみました。 「ほげ」の部分ですが、 From: =?ISO-2022-JP?B?XXXXXXXXX=?= <xxx@yyy.zzz> という事でしょうか。 上記のケースでも検索してくれました。 ヘッダーでは下記のようになっているが、 Content-Type: text/plain; charset="iso-2022-jp" Content-Transfer-Encoding: 7bit 実際にはShift_JISで書かれている(エンコードされている)メッセージでしょうか。 セーフモードでも同様ですか。 |
作成者: | wire [ 2006年12月25日(月) 19:36 ] |
記事の件名: | |
早速のお返事ありがとうございます。 こちらでも別のマシン(Windows XP Pro SP2,Thunderbird 1.5.0.9)で 確認してみましたが同じ症状でヒットしませんでした。 セーフモードでも症状は変わりません。 念のためそのメッセージのFrom行をhex-dumpしてみたところ以下のように なっていましたのでiso-2022-jpであることは間違いないと思われます。 「ほげ」→ 0x1b 0x24 0x42 0x24 0x5b 0x24 0x32 0x1b 0x28 0x42 試しにこの「ほげ」の部分だけを削除してやると後続の「xxx@yyy.zzz」でヒット して正常に抽出することができました。 失礼ですが、kiki様のところでは上記の文字列が入っていても検索ヒットしてい るのでしょうか? |
作成者: | kiki [ 2006年12月25日(月) 21:28 ] |
記事の件名: | Re: 「メッセージを検索」で検索できないアドレスについて |
wire さんが書きました: セーフモードでも症状は変わりません。 了解しました。 wire さんが書きました: 試しにこの「ほげ」の部分だけを削除してやると後続の「xxx@yyy.zzz」でヒット して正常に抽出することができました。 ほげ <xxx@yyy.zzz> という条件で検索していたわけではないですよね? wire さんが書きました: こちらでも別のマシン(Windows XP Pro SP2,Thunderbird 1.5.0.9)で 確認してみましたが同じ症状でヒットしませんでした。 という事は、アドオンやプロファイル、本体には問題ないように思えますね。 wire さんが書きました: 失礼ですが、kiki様のところでは上記の文字列が入っていても検索ヒットしてい るのでしょうか? ダンプされた文字列を加えただけでは問題ありませんでしたよ。 検索でヒットしないメッセージとヒットするメッセージをソース表示で開いてヘッダーを よく見比べてみてください。 何か違いがありませんか。 引用: From: =?ISO-2022-JP?B?XXXXXXXXX=?= <xxx@yyy.zzz>
Content-Type: text/plain; charset="iso-2022-jp" Content-Transfer-Encoding: 7bit 「ほげ」の部分が日本語の場合、通常は=?ISO-2022-JP?B?XXXXXXXXX=?=と なっていると思います。 がしかし、上記のエンコード指定が無くそのままでは? よって<xxx@yyy.zzz>までもがおかしなエンコードになっていて検索では認識できない のではないでしょうか。 *つまり文字列として認識できない文字エンコードになっている。 ちなみにその検索でヒットしないメッセージに対して返信しようとした場合、宛先アドレス には「 ほげ <xxx@yyy.zzz> 」が現れますか? *一体どんなメールソフトから送られたメッセージなんでしょう。スパム? |
作成者: | wire [ 2006年12月25日(月) 23:36 ] |
記事の件名: | |
お返事ありがとうございます。 kiki様の環境でこの症状が再現できない件は説明できませんが、From行に MIMEではなくiso-2022-jpで記述されていると文字列中に「(」が現れるため 検索ができなくなることが当方で確認できました。 Thunderbirdも含めて普通のメーラでそのようなメッセージは送信できませ んのでメッセージをインポートして確認しています。 試しに<xxx@yyy.zzz>で検索ヒットしているメッセージのFrom行に「(」の 1文字を加えると検索できなくなりました。 恐らくは、RFC 822の「3.4.6 BRACKETING CHARACTERS」で「(」以下 はコメントとして無視されるとなっているので、それに絡んだ振る舞いではない かと勝手に推測しております。 因みに、このFrom行にiso-2022-jp文字が入るのは古いメッセージで他の メーラからインポートしてきたものみたいなので、恐らくはインポート時のミス だと思われます。(または機械からの自動生成メールかも知れない。。。) 普通のメーラは送信時にMIMEエンコードしてくるのでiso-2022-jpな文字 がFrom行に直接入ってくることはありませんね。 取り合えずThunderbirdの振る舞いがわかったので、適当なツール等を使用 して全フォルダ内のFrom行(To行も?)のiso-2022-jp文字をMIMEに変換 して対処したいと思います。 どうもありがとうございました。 |
作成者: | kiki [ 2006年12月26日(火) 21:34 ] |
記事の件名: | Re: 「メッセージを検索」で検索できないアドレスについて |
結局のところ、どういう振る舞いが判明したのか・・・。 Thunderbirdはきちんと文字エンコードが指定されていないデータは気を利かして 認識してくれないという事でしょうか。 |
作成者: | wire [ 2006年12月26日(火) 22:06 ] |
記事の件名: | |
ThunderbirdはFrom行にiso-2022-jpでエンコードされたかな文字が混ざっているとその後に ある<xxx@yyy.zzz>といったメールアドレスの検索ができないこということです。 (少なくとも私の環境ではそのように見えています) kiki様のおっしゃっている文字エンコードの指定というのは、Content-Typeのことを指しています でしょうか? 今回はFrom行つまりヘッダの件についての話ですので、Content-Typeは無関係ではないでしょ うか? From行にはContent-Typeで指定されているからといってiso-2022-jpな文字を入れるとRFC 違反になると思います。 念のため申し上げますが、=?ISO-2022-JP?B?XXXXXXXXX=?=というのはMIMEエンコード されていますのでiso-2022-jpとは呼びません。 このような文章でご理解頂けますでしょうか? |
作成者: | kiki [ 2006年12月26日(火) 23:00 ] |
記事の件名: | Re: 「メッセージを検索」で検索できないアドレスについて |
wireさんがおっしゃっている事を誤解しているわけではありませんので。 ただ当方の知識(検証)不足があるだけです。 私はThunderbirdはヘッダ部分(To,From等)がMIMEエンコードされていないと賢く認識して くれないと理解しています。(自分でテストしていないので自信なしです^^) ですからFrom行に単純にiso-2022-jpでエンコードされた文字が直接入っている場合は不具合 を起こす振る舞い(検索等で)になるのではと思います。 =?ISO-2022-JP?B?XXXXXXXXX=?=というMIMEエンコードされたデータであれば問題ない と理解しています。 ですので最初に、 Premier さんが書きました: 「ほげ」の部分ですが、 と書かせていただきました。From: =?ISO-2022-JP?B?XXXXXXXXX=?= <xxx@yyy.zzz> という事でしょうか。 wire さんが書きました: 普通のメーラは送信時にMIMEエンコードしてくるのでiso-2022-jpな文字 がFrom行に直接入ってくることはありませんね。 そうだと思います。 今回はThunderbirdで受信したメールではなくてインポートされたメールのようでしたが、世の中 にはいろんな解釈に沿ったメールソフトがあるという事でしょうか。 wire さんが書きました: 今回はFrom行つまりヘッダの件についての話ですので、Content-Typeは無関係ではないでしょうか?
テストしていないので自信なしですが、Content-TypeがISO-2022-JPでヘッダ部分が Shift_JISでMIMEエンコードだったり、何もMIMEエンコードされていなかったら表示では おかしくなると思います。 ひょっとしたらそのあたりも影響するのかも? |
作成者: | kiyo4_k [ 2006年12月27日(水) 00:32 ] |
記事の件名: | Re: 「メッセージを検索」で検索できないアドレスについて |
From:など、ヘッダはMIMEとは関係ない符号化ですよ。 でもコードはcharsetで指定されたものと同じじゃなければなりません。 > いろんな解釈に沿ったメールソフトがある と言うんじゃなくて、間違った解釈により間違った実装のメールソフトも有るということですね。 追記) 他の人が読んで誤解しないように書いておきますけど、 From:など、ヘッダはMIMEエンコードとは言いません、単に「符号化」です。MIMEエンコードのやり方の副産物(後ろにあるcharsetを見るので)と言えると思いますが基本的にヘッダ部分はascii文字以外は書けないわけです。MIMEの処理は「MIME-Version: 1.0」というヘッダより後ろの部分のはずです。 で、ヘッダ部分をSJISのまま送信してしまうメールソフトは間違った実装です。ThunderbirdはMIMEと符号化の約束に忠実に実装されているらしいので、この部分が正しくないメールは文字化けします。 |
作成者: | wire [ 2006年12月27日(水) 00:34 ] |
記事の件名: | Re: 「メッセージを検索」で検索できないアドレスについて |
了解しました。 私が乱暴にThunderbirdの振る舞いを推測したことも手伝って、私の意図がうまく伝わらなくなっ てしまったようで反省しています。 基本的に私の認識とkiki様の認識に大きなずれは無いと思います。 kiki さんが書きました: 今回はThunderbirdで受信したメールではなくてインポートされたメールのようでしたが、世の中
にはいろんな解釈に沿ったメールソフトがあるという事でしょうか。 これについて補足させてください。 私がインポート時のミスと書いたのは、Thunderbirdを使用する前に使用していたのはメッセージ が1つ1つのファイルに分かれているMH(Mail Handler)系のメーラだったのですが、そのメッ セージファイルをThunderbirdへインポートするために人の書いたツールや自分で書いたツール を組み合わせて使ってmbox形式へ変換しました。 その時に各メッセージファイルのヘッダ部分がボディ部分と同じiso-2022-jpで保存されているの に気が付かずそのままThunderbirdへインポートしてしまったようなのです。 従いまして、インポート作業を行った私のミスということです。 また、メールソフトについてはLinuxやFreeBSD等のmailコマンドを使ったりSMTPポートに直接 話しかければ何でもありだと思ったので、「機械からの自動生成メールかも...」などという書き方を してしまいました。 本当にわかり難い稚拙な文章で申し訳ありませんでした。 |
ページ 1 / 1 | All times are UTC + 9 hours |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |