Deprecated :  The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php  on line 456 Apache2.0で文字化けする。 
■Apache2.0で文字化けする。 
[原 因] 
Apache2.0では、デフォルトで強制的にISO-8859-1(UTF-8)キャラクタセットで表示するようになっており、下記のようにコンテンツのMETAタグで「charset=Shift_JIS」等の指定をしていても文字化けしてしまう。
[対 策] 
対策方法は、サイトのコンテンツで使用している文字セットにより異なり、httpd.confのAddDefaultCharsetディレクティブの設定(デフォルト:AddDefaultCharset
ISO-8859-1)で調整する。おやじのサイトでは、MRTGでサーバの稼動状態をグラフ表示しているが、このコンテンツはEUC-JPで自動生成されている。他はShift_JISであるため、3の方法で設定している。フリーのCGI等でMETAタグが出力されないものがあり、その場合は改造している。サイト全体で文字セットを統一できない場合は、3以外の方法はない。
設定を変更して試験するときは、ブラウザのキャッシュをクリアしてから試験をしないとキャッシュを見ていることになり確認ができないので注意が必要である。
  サイトのコンテンツが全てシフトJISの場合 サイトのコンテンツが全てEUC-JPの場合 サイトのコンテンツのキャルクタが統一できていないが、全てMETAタグで「charset=Shift_JIS」等で指定されている場合  
LanguagePriority は、ここでいう文字化けとは関係なく、MultiViews 環境でブラウザが言語の優先順位を提供してない場合の優先度を指定するもので、通常はコンテンツも対応していないので変更不要。なお、ブラウザとのネゴシエーションで日本語を優先させるため、LanguagePriorityディレクティブのjaを先頭に移動しておく。(デフォルトは単にアルファベット順に並んでいるだけ) 
LanguagePriority en da nl et fr de el it ja  kr no pl pt pt-br ltz ca es sv twja  en da nl et fr de el it kr no pl pt pt-br ltz ca es sv tw Top Pageへ      戻る