NTサーバーでこのラウンジを動作させるには?

[上に] [前に] [次に]
みにら [E-Mail] [HomePage] 1999/11/04(木) 00:30:03
みなさんこんばんは。
私の利用しているプロバイダーはNTサーバーで,CGIは許可されているのですが,とほほ氏のこのラウンジをアップしたところ「500エラー」が出てしまいました。

実は同じようにとほほ氏のwwwcounterと,wwwboardも使わせていただいているのですが,こちらのほうは〜.cgiを〜.plに変更した上でwwwcount.cgiの2行目に
chdir("C:/www/contents/ディレクトリ/cgi-bin/");
のように、wwwcount.cgi を設置したディレクトリを指定することで動作しています。そこで当ラウンジについても同じような方法を試みようとしましたが,動作しませんでした。

500エラーの詳細は
Message: CGI output from C:/www/contents/hp/kazu/teacher/cgi-bin/wwwlng.pl
contained no blank line separating header and data

とのことなのですが,どなたか原因のわかる方いらっしゃいませんでしょうか。よろしくお願いします。

とくめい 1999/11/04(木) 05:39:16
>contained no blank line separating header and data
「ヘッダーとデータ本体が分離できなかった」
と言っている様なので、httpヘッダーと本文の間に空行が無かった
のでは無いでしょうか。

ただし、スクリプトのエラーでヘッダーを出力する前にエラーメッ
セージが吐き出されるケースも考えられるので以下のスクリプトで
エラーをチェックしてみては?

#!/bin/local/perl   ←適当に変更してね
print "Content-type: text/plain\n\n";
$|=1;
open (TEST, "スクリプト名 2>&1|");
print "$_\n";
close TEST;

それからたしか、WinNTはFlockが使えないと思ったけど、その
スクリプトにflockは無い?

とくめい 1999/11/05(金) 13:10:07
嘘かいてるなぁ・・・

#!\perl\bin\perl ←直してね
print "Content-type: text/plain\n\n";
$|=1;
open (TEST, "perl wwwlng.cgi 2>&1|");
@_=<TEST>;
foreach (@_){ print ;}
close TEST;

です。正常ならHTMLソースが出力されます。

ちなみにこちらの環境でラウンジはNTでも動きました。
WinNT
Apache 1.3.6
ActivePerl 5.005_03

みにら [E-Mail] 1999/11/05(金) 18:09:37
とくめいさん,こんにちは。
丁寧なアドバイスありがとうございます。

うーん,やはり動かないです。
上記のスクリプト試してみたのですが,
このスクリプトもやはり,500エラーなのです。
contained no blank line separating header and data
…ラウンジのときと同じですね。。(^^;)

σ(゜-゜)に何か基本的に間違いがあるような気がしないでもないのですが…もう少しいろいろとチェックしてみます。
あと、frockはこのスクリプトにはありませんでした。

またよろしくお願いします。それでは。m(_ _)m

[上に] [前に] [次に]