iモード用のウェブページ(HTML)を作っています。
文字コードをシフトJISにして、ページ冒頭に、
<html><head>
<meta http-equiv=”Content-Type” content=”text/html; charset=Shift_JIS”>
<title>〜
と書いているのですが、なぜかFOMA機種で読むと、文字化けしてしまいます。つまり文字コードがシフトJISではなく、「UTF-8」だと勘違いしているようなのです。機種側の操作で「文字コード変換」をすると、正常に読めるようになりますが、ページが移るたびにこれをしないといけない状態です。
(ちなみに、movaだとなんの問題もなく表示されます)
どうやったら、FOMAに「今から読むページは、Shift-JIS」であることをわからせることができるのでしょうか。
なお、状況は↓この質問をされた方と同じなのですが、
http://okwave.jp/kotaeru.php3?q=1224708
この方は、最後に「サーバの設定ミス」だったと、質問を閉じてしまいました。彼にとっての解決策が見つかったんだと思いますが、その意味がわかりません。
どなたか教えてくださいませんか。
http://www.atmarkit.co.jp/fjava/rensai3/mojibake01/mojibake01.ht...
@IT:Javaの文字化け対策FAQ(1)
HTTPサーバが返すHTTPヘッダのContent-TypeにUTF-8等のShift_JIS以外の文字コードが設定されているのでは無いでしょうか?
自分でサーバを管理できるのであれば、サーバの設定を調べて見てください。
レンタルサーバだと、サーバの設定にあわせてコンテンツ側の文字コードを変えるしか無いかも。
http://tech.bayashi.net/pdmemo/chara2.html
HTML,CGIでの文字コード指定について[Apache/Perl]
http://www.itmedia.co.jp/help/tips/linux/l0194.html
ITmedia エンタープライズ : Linux Tips「ApacheであらかじめHTMLの文字コードを指定しておく」
サーバ側の設定ミスだとすれば、ヘッダー情報のContent-Typeヘッダが原因だと思います。Apacheを使っているならAddDefaultCharsetを指定するかもしくは、AddTypeなどを使って設定してみてはいかがでしょう
なるほど。具体的ですね。
ありがとうございます。
自前のサーバで、Apache等を使っているのであれば
httpd.confの設定を
AddDefaultCharset=Off
にすることで直るかもしれません。
もし自前のサーバでないのなら
.htaccessで変更できるかもしれません。
なるほど。よくわかりました。
ありがとうございました。
なるほど。よくわかりました。