apacheからapache2にすると、デフォルトのCharsetがISO-8859-1になって文字化けを起こすのは、良く知られている。
あちこちで書かれている対策は、/etc/apache2/apache2.confの中を
#AddDefaultCharset ISO-8859-1
とコメントアウトすることで各ページで
<meta http-equiv="Content-Type" content="text/html; charset=euc-jp" />
などと指定している文字セットになる...というものである。
当然、上記のような設定にしていたのだが、つい先ほどapt-get install apache2でapache2をupgradeしたら今回また化けた。
そこで、apache2.confで明示的に
AddDefaultCharset off
と書いてみた。
すると、文字化け解消。
うーん、defaultの動作が変わったのかなぁと思って/usr/share/doc/apache2/changelog.Debian.gzを見てみると、以下の記述が。
apache2 (2.2.3-1) unstable; urgency=low
* Remove mention of AddDefaultCharset from apache2.conf as this is now
in /etc/apache2/conf.d/charset.
なんですと~?
/etc/apache2/conf.d/charsetを見てみると
AddDefaultCharset UTF-8
とぬけぬけと書いてある(^^;
これを
#AddDefaultCharset UTF-8
AddDefaultCharset off
に修正して一件落着。
��apache2.confの中のAddDefaultCharsetの設定は、もとに戻した。
設定ファイルの場所を変えてもいいけど、決め打ちするのは勘弁。
ふはは!さっすがデビアン?!
返信削除あらゆる UTF-8 で統一するおつもりか...
おお、わたしもこれでハマってここに流れつきましたw
返信削除でも、force-reload してもあいかわらずUTF-8で送ってくるのは何故だ...
はじめまして。
返信削除私もハマってしまいました^^;
解決です!ありがとうございました。