症状: ブラウザで普通に日本語が表示されるがページ中、一文字程度の二バイト文字が化けてしまう。全体的には99.8%以上の文字は正常に表示される。
環境: Windows XPの英語版、SP2適用、IE6.0最新パッチ適用
IEの設定: 文字コード(日本語自動判別)、言語設定(日本語)
推測: 文字化けをするのはS-JISのページだけで、EUCのページは化けない。Windows 2000のベータから英語版で使っているが、日本語が化けたことは無かった。今回新しいパソコンで最初からXPのSP2適用されているマシンを利用している。
ページ全体に対する日本語自動判別エンコーディングは正常に機能して、エンコーディングでのページ全体の文字化けは発生していない。
S-JISの二バイト文字に一部に含まれるストップコードによる文字化けに似た症状です。
よろしくお願いします。
http://support.microsoft.com/default.aspx?scid=kb;ja;886778
Windows XP SP2 を適用すると Web ページで文字化けが発生する
これでしょう。解決困難ですが。
これはPerl上の問題なのですが、「表示」や「能率」などの一部の漢字が化けるバグがあります。
EUCではこの問題は発生しないので、このようなバグがどこかにあるのかもしれません。
プロキシなどを通している場合、途中で変換されている可能性があります。それをXPでは元に戻せなかった、ということも。
どこの文字がどのように化けているか、(例:侮ヲ)それが解決のきっかけになりそうです。
コメント(2件)
私もKBを検索して、該当ページを見ていたのですが、抽象的すぎる表現だったので、関係ないものと思ってしまっていました。
http://support.microsoft.com/kb/886677/en-us
を見ると完全にSHIFT-JISの場合に発生すると記載されています。11月19日にリリースされたパッチなので、とりあえずは二週間ほどまってから適用したいと思います。
私の設定ミスじゃないことが確認できて助かりました。
http://support.microsoft.com/kb/886677/en-us
丁寧なお礼をいわしでいただいて有難うございます。
(該当ページに関しては、「文字化け」という表現をつかってくれればピンときそうで、だれにも役に立ちそうな気がします。)
この問題に対するhotfixが出ていることには気づきませんでした。情報有難うございます。Shift_JISに限定、という部分まで特定できませんでしたが、たしかに自分の環境で再現したときもShift_JISでした。
パッチ適用は確かに用心深くしたほうがよさそうですね、個人的には(2000用ですが)KB835732が大きい教訓です。