• ベストアンサー
  • 困ってます

#!/usr/bin/perl --でも不安定です

  • 質問No.999953
  • 閲覧数271
  • ありがとう数5
  • 回答数5

お礼率 74% (280/378)

#!/usr/bin/perl
ですと全く表示されず、Internal Server Error.
#!/usr/bin/perl --
でも30%ぐらいしか画面表示されません。
サーバのファイルをTeraTermで見てもおかしなファイルが見当たりません。
問題のファイルを調べる方法はありますでしょうか?
Carpモジュールをuseしても相変わらずInternal ServerError.でさっぱり見当がつきません。

質問者が選んだベストアンサー

  • 回答No.3
  • ベストアンサー

ベストアンサー率 57% (24/42)

(1)perlの確認
telnetで
 where perl
とやって、perlの場所を確認。

(2)プログラムの確認
  perl -c test.cgi
等として、エラーが無いか確認。

(3)出力の確認
  perl test.cgi
として、ちゃんと意図した物が出力されるか確認。

(4)出力内容の確認
良くあるのはCGI呼び出しなのに、先頭の
 content-type:text/html\n\n
が無いなどをチェック。

そもそもCGIなのか、実行するだけなのか判りませんが、
CGIで、プログラムがOKで、それでもだめな事を確認してから

apacheあたりの設定を疑うのが良いかと思います。
その場合、

!/usr/bin/perl
print "Content-type: text/html\n\n\n";
print "<html><body>test</body></html>\n";
exit;

ぐらいのプログラムでお試しを。

その他の回答 (全4件)

  • 回答No.5

ベストアンサー率 30% (6/20)

ANo.4 の情報修正です。

Catch.pmではなく、KCatch.pmでした。
詳しくは、下記参考URLでご確認下さい。
  • 回答No.4

ベストアンサー率 30% (6/20)

Catch.pmがきっとあなたを救ってくれることでしょう。

Perlの開発から離れて随分経っており、手元に資料が
見当たらないので、後はご自身でお調べいただくしか
無いのですが、私の記憶では、このモジュールをcgiの
先頭でuseしておくと、Perl実行中に発生した問題を
HTMLに変換してブラウザに表示してくれた、と思います。
  • 回答No.2

ベストアンサー率 66% (80/121)

>#!/usr/bin/perl
>ですと全く表示されず、Internal Server Error.
>#!/usr/bin/perl --

改行コードが違っているのでは?

>問題のファイルを調べる方法はありますでしょうか?

httpdのerror_logを調べるのが一番早いと思いますが。。。
(termで直接見るか、cgiでそれっぽいファイルを探して)
お礼コメント
natsuyori

お礼率 74% (280/378)

なるほど。改行コードを検索してみるのも面白そうです。
いいアイディアありがとうございます。
ログも見てみます。
投稿日時:2004/09/15 18:47
  • 回答No.1

ベストアンサー率 32% (598/1831)

print "Hello Perl";

くらい簡単なものを設置して、これでも
サーバーエラーが出るのであればサーバが悪い。
サーバ管理者に連絡したほうがいいと思います。
お礼コメント
natsuyori

お礼率 74% (280/378)

シンプルな方法ありがとうございます。試してみます。
投稿日時:2004/09/15 18:48
関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ