0

同じcgi-binフォルダーに2つのcgiファイルがあります。1つの複雑な300百行のスクリプトは正常に機能しますが、この単純なcgi-scriptに関しては次のようになります。

#!/usr/bin/perl -w
print "Content-type: text/html\n\n";
print "<html><head>";
print "<title>CGI Test</title>";
print "</head>";
print "<body><h1>I just wrote a web page using Perl!</h1>";
print "</body></html>";

Webページは500内部サーバーエラーを返します...

なぜ?:(

編集: わかりました、問題は1つのサーバーで解決されました、cgiは正常に動作します。しかし...
今、私はcgi-scriptsを別のサーバーで動作させようとしていますが、何をしても「内部サーバーエラー」メッセージが表示され続け、エラーログには何も表示されないようです。助言がありますか?

4

4 に答える 4

2

2つの可能性が思い浮かびます。

  • 単純なスクリプトに実行権限が設定されていません
  • test.cgiサーバー構成によって他の場所にリダイレクトされる特別な名前です

test.cgiコマンドラインから実行できますか?

于 2011-02-17T21:07:15.630 に答える
2

詳細については、Webサーバーのログを確認してください。

ほとんどの場合、そのアクセス許可の問題は、このスクリプトを実行するためのアクセス許可だけでなく、たとえば一部のWebサーバーは、セキュリティ上の理由から、デフォルトで777またはその他の書き込み可能なアクセス許可を使用してスクリプトを実行することを拒否します。

そのファイルに644のアクセス許可を設定してみてください。

于 2011-02-17T21:19:01.207 に答える
0

私はホスティング会社と話をしましたが、彼らは「CGI/PERL」スリップホスティングを提供していないと言っていました...

だから、問題は解決しました...(一種)。

レッスン:ホスティングパッケージを購入する前に、常に注意深く読んでください:D

于 2011-02-21T13:26:08.070 に答える
0

次の質問について:他のサーバーはどのようなサーバーですか?また、問題は特定のスクリプトですか、それともすべてのスクリプトですか?cgi-binでスクリプトを使用できますか?そうでない場合は、仮想ホストが適切に構成されていないか、perlが別の場所にインストールされている可能性があります。

于 2011-02-21T07:29:47.283 に答える