[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:38995] Re: Apache1.3.26でCGIが出力する情報が文字化けする



杉浦です。
既に debian 固有では無くなっていますが……

>>> In Message "[debian-users:38994] Re: Apache1.3.26でCGIが出力する情報が文字化けする"
>>>            <001301c3bfbd$eb95e7e0$8101a8c0@xxxxxxxxxxxx>,
>>> 山脇 \(Rinku-Server\) <yamawaki@xxxxxxxxx>  said;
> 杉浦さんの指摘の点を検証してみましたが、やはりヘッダ出力は正しくなりま
> せん。
> また、今回文字化けが発生しているサーバでは、同様の CGI が多数動作してお
> り、CGI 側を1つ1つ修正して行くというのは現実的ではありません。

うーむ。一体どうやって検証したのでしょうか?
是非その手順と結果などを全部書いて下さい。
そこに非常に重要な情報が沢山含まれています。
# 逆に書いてくれないと何がなんだか分かりません

CGI は何で書かれた物なんでしょうか?
今まで正しく(?)動作していた環境はどういう物なんでしょう?
potato から upgrade したらおかしくなったとか?

> そこで、できれば Apache 側での設定で問題を回避できないかと考えているの
> ですが…

そもそもこのヘッダが何処で出力されているのかを突き止めないと
対策しようがありません。
AddDefaultCharset を off にしても付くなら apache は関係ない
可能性が高いです。
# 個人的には perl の CGI.pm がつけてるんじゃないかと思うのですが。

その CGI をコマンドラインから実行したらどうなりますか?
もしそこで ISO-8859-1 なヘッダが出力されるなら CGI を直さないと
どうしようもありません。逆に出力されないなら、apache の設定が間違
っていると言うことになります。

コマンドラインから実行できないような物なら、以下の内容
----------------------------------------------------------
#!/bin/sh

echo -e "Content-Type: text/html\r\n\r"

echo "<html><head><title>charset test</title><head>
<body>charset test</body></html>"
----------------------------------------------------------
を charsettest.cgi 等の名前で保存して、これを apache 経由で
叩くとどんなヘッダが出力されるか試してみて下さい。

-- 
Tatsuki Sugiura   mailto:sugi@xxxxxxxxxxxxxxxxxxxxxxxxxxx