« Stopdesignのエイプリルフール | メイン | デジタル一眼レフカメラが欲しい!! »
April 04, 2005
Redhat Linux 9のrpm版Apache 2.0.40のエラーメッセージ画面の文字コードを変更する
Redhat Linux 9 ftp ダウンロード版でインストール時に httpd を指定すると rpm 版の Apache 2.0.40? がインストールされると思います。
気づくと思いますが、rpm 版では Apache のエラーメッセージ画面(適当なファイル名を指定したときに表示されるページ)の日付が漢字表記になってます。漢字なのに head の charset が iso-8859-1 になっているので文字化けしてしまうのです。
これを解決するには、AddDefaultCharset を EUC-JP に指定する方法しかないかと思いましたがやっと解決方法を発見したのでメモ。
その前に、AddDefaultCharset を EUC-JP や none (←本当は none なんていう設定方法はありません[本家マニュアル 2.0.x の場合/ 1.3.x の場合])にしている場合は Off (Oは大文字で!)にするか、行自体をコメントアウトします。
変更したら、httpd を restart することを忘れずに。
# service httpd restart
このエラーメッセージ群の元ファイルはデフォルトでは /var/www/error/ にある拡張子 *.var のファイルです。
この *.var のファイルの中身を見てみると分かるとおり meta を含む <head> の記述がありません。
代わりに以下のような指定がされています。
<!--#include virtual="include/top.html" -->
これもまた別の定義ファイルを読み取っているということです。
*.var ファイルがおいているディレクトリ内にある include ディレクトリを見てみましょう。
その中にある top.html が <head> 関係を定義しています。
iso-8859-1 を発見できました。
変更をする前にオリジナルファイルをコピーしておきましょう。
# cp -p top.html top.html.backup
バックアップしたら、該当箇所の iso8859-1 を euc-jp に変更してしまいましょう。
これで、エラーメッセージの漢字の日付が正しく表示されるはずです。
投稿者 Kuro : April 4, 2005 11:09 PM
トラックバック
このエントリーのトラックバックURL:
http://www.kuroduction.com/blog/mt/mt-tb.cgi/427