文字コード総合スレ part7
■ このスレッドは過去ログ倉庫に格納されています
0431デフォルトの名無しさん
2011/12/22(木) 14:16:57.94ソースをダウンロードしてみたら、chamamail.cgi(perl code)はシフトJISで書かれていた。
更に改行コードがCR+LFなので、Windows環境で開発された物と思われる。
>■設定設置方法
の部分を見るに文字コードについては一切の指定が無い。
どうやら作った人間は、そういう事まで頭が回らない人間と思われる。
ソース中に、
print "<META http-equiv=\"Content-Type\" content=\"text/html; charset=Shift_JIS\">\n";
というハードコーディングがなされているので、シフトJISのままサーバーに設置する物なのだろう。
ソースに書かれた日付を見ると、どうやら最後にメンテナンスされたのは2001年頃らしい。
2001年頃に、サーバー側にインストールされていたperlのバージョンを考えると、
最新でも5.6.0、ちょっと古ければ5.5.0、5.0.xxx、下手すればperl4の可能性だってある。
シフトJISのまま動かない理由としては、perlはバージョンが変わると、
使用可能なリテラルが変わったり、エスケープしなければならない文字が変わるので、
シフトJISで書かれたコードは上記の制限に該当しやすいのでエラーが発生し、
それはCGIでは結果的にInternal Server Errorを引き起こす。
これは元々シフトJISに対応していないperlで、
無理矢理シフトJISを使う事による弊害なので、perlが悪い訳でも無い。
修正したいならエラー出力に、問題となった箇所が出力されている筈なので、
httpdのerrorログを見てソースを修正すれば良い。
あとは↓のスレに行ってやれ。
http://toro.2ch.net/test/read.cgi/tech/1319953460/
■ このスレッドは過去ログ倉庫に格納されています