人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

お気に入りのホームページがたまにですが文字化けします。

以前はそんなことなかったのに、2週間前くらいから急になりだしたのですが、その頻度もたまにですが、
なぜそうなるのか気になります。

文字化けも漢字のようなものではなくて、テキスト部分が全て??????となり、そのページは?だらけになります。

他のページへ飛んで戻ってくると直っていますが、とっても気になります。
エンコードは自動選択にしています。
会社のパソコンで見ても同じようにたまになります。

何が原因でこういう症状がおこるのか、お分かりの方教えてください。

●質問者: taru4162
●カテゴリ:インターネット ウェブ制作
✍キーワード:お気に入り たま エンコード テキスト パソコン
○ 状態 :終了
└ 回答数 : 5/5件

▽最新の回答へ

1 ● Ryu0117
●20ポイント ベストアンサー

Webアプリケーションエンジニアやってます。


会社のパソコンで見ても同じように文字化けするのなら、

かなりの確率で閲覧先のサイトに原因があると思います。


文字化けの原因はいくつか考えられるので、断定はできませんが、

主な原因として考えられるのは、エンコードの相違です。

下記(1)と(2)で相違がある時に、文字化けが起こります。


(1)閲覧先サイトのHTMLファイルのエンコード

(2)HTMLソースのHEADタグ内で指定されているエンコード


まず、(1)についてですが、閲覧先のサイトの管理者が、

HTMLファイルを編集し、保存したときの文字コードのことを指します。


次に(2)についてですが、HTMLソースを見てもらえるとわかるのですが、

最初の方に、下記のような記述があると思います。

※もしくは記述が無いかもしれません


<meta http-equiv="content-type" content="text/html; charset=utf-8">


上記の場合は、

「このページは文字コードUTF-8で保存しているから、表示する時もUTF-8で開いてください」

という宣言です。ブラウザのエンコードが自動選択の場合、

ここの記述を元にブラウザが判断してページを表示します。



文字化けが起こる原因についてですが、

例えば、(1)HTMLファイルはSJISで保存されているのに、

(2)の指定がUTF-8だったという場合に起こります。



また、「たまに」起こったり、他のページに行って戻ってくると直っているのは

推測ですが、ブラウザのキャッシュが残っているのはないかと思います。

簡単に言うと、文字化けせずに見えている時の設定が残っていて

その設定が適用されているのではないか?ということです。



参考サイトのリンクを貼っておきます。

http://www.mozilla.gr.jp/standards/webtips0022.html

◎質問者からの返答

Ryu0117様

ご丁寧に分かりやすく解説していただいて、本当にありがとうございます。

素人の私も大変理解しやすかったです。

ソースをみるとまさに

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

という記述がありました。

ということは、閲覧先サイトのHTMLファイルのエンコードがUTF-8ではないということですよね。

参考サイトもとても勉強になりました。

ありがとうございました。


2 ● masanobuyo
●20ポイント

ブラウザも文字コードを判定ミスしてしまい,そのため文字化けが起こり得ます。

http://www.kaiteki-net.com/nettrouble/mojibake/mojibake3.html

◎質問者からの返答

masanobuyo様

早速のご回答ありがとうございます。

ブラウザも判定ミスをすることがあるということは、エンコード自体ではなく、(私の場合)IEが判定ミスを

して文字化けすることもあるということですよね。

ということは、私のお気に入りのホームページだけでなく、他のホームページでもこの文字化けは起こりうると

いうことなのでしょうか。

参考サイトのご紹介もありがとうございます。

ものすごく詳しく解説してくれていてびっくりしました。

その中で文字化けの種類がビンゴなものがありましたので、じっくり読み込みたいと思います。

絶対自分では探せなかったです。(今までさんざん探していたのですが)

ありがとうございました。


3 ● online_p
●20ポイント

相手のHPに文字コードが混在していると思われます。あるいはUTF-8であっても非常に特殊な記号のゴミなどがあって、それで日本語ではないとブラウザが判断するためでしょう。

http://www

◎質問者からの返答

online_p様

ご回答、ありがとうございます。

色々な要因で文字化けというのは起こるのですね。

たーまに文字化けするということは、ブラウザもたーまにその特殊な記号のゴミを感知して、そう判断するということなのでしょうか。

どうもどうもありがとうございました。


4 ● tama213
●20ポイント

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

という記述がありました。

ということは、閲覧先サイトのHTMLファイルのエンコードがUTF-8ではないということですよね。

たぶん違います。閲覧先のサイトのHTMLはUTF-8だと思います。

IEの場合、エンコードを変更できますので、そのページを明示的にIEでUTF-8で表示して

文字化けしなければ閲覧先はUTF-8です。

この状態でたまに文字化けするのなら、IEの文字コードの判断ミスです。

文字化けした時に、右クリックでメニューをだして

そこでエンコードを選べば、IEは現在どの文字コードで表示してるかわかります。

これがUTF-8以外になってると思います。

以前はそうでなく、そのページも更新されていないようでしたら

WindowsUPDATEなどでIEにパッチが当たって動作が少し変わった可能性があります。

◎質問者からの返答

tama213様

ご回答ありがとうございます。

文字化けしたときに右クリックでエンコードをみてみました。

すると、UTF-8になっていたんですよね・・・

で、改めて文字化けの状態を見ると見事に全て??????????????になっていました。

少しくらい違う記号みたいなものも混じりそうなものなのに・・・

数字だけ少し表記されてます(一部ですが)

もう一度windowsUPDATE やってみます。

どうもありがとうございました。


5 ● yamahide1967
●20ポイント

「以前はそんなことなかったのに。。。」というところが気になって書きました。

参考になるかどうかわかりませんが、以前制作したサイトで同じようなことがありました。

WEBを公開してしばらくは問題なかったのですが、ある日を境に文字化けが始まり、ファイルの文字コード、ソースの文字コード全てチェックしても問題はありませんでした。

途方にくれてレンタルサーバーの会社に聞いてみると、共用サーバーの場合、同じサーバーで運営されている他のサイトの影響で、まれに文字化けが起こるのだとか。

そこでレンタルサーバー内の一番上の階層のフォルダに.htaccessで運営するサイトの文字コードを指定してやると、それ以降文字化けが起こらなくなりました。

◎質問者からの返答

yamahide1967様

ご回答ありがとうございます。

そうなんです、以前はそんなことなかったんです。一回も。

なるほど、サーバーの問題である場合もあるのですね。

そうなると、もう仕方がないですよね。頻度の問題もありますが、そんなに頻繁にでてくるわけではないので。

windowsUPDATE しようと思ってもなんだか途中でエラーがでて「できませんでした」って出てくるし、

私のパソコンにも問題があるのかもしれません。

どうもありがとうございました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ