こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

NTでapacheとperlをインストールしてCGIテスト

WINDOWS NTの環境でネットに繋がっていない状態でCGIテストをしようと、apache_1_3_12_win32.exe (Apache 1.3.12 for Win32) とActivePerl 623をダウンロードしセットアップしました。
Apacheの動作確認までできました。
ところが、CGIが動きません。
DOSで「xx.pl」は動いているのに、「xx.cgi」をテストしようとブラウザでみてもエラーが出てしまいます。
セットアップした2つの場所は、c:\www\perl\ と、c:\Apache\です。
何が間違っているのでしょうか?
どなたか詳しく教えて頂ける方がいらっしゃいましたら、大変ありがたいです。

ブラウザのエラーは
「Internet Server Error The server encountered an internal error or misconfiguration and was unable to complete your request~」というような表示です。

また違う者が前にsendmailを入れたようなのですが、その中にもapacheが入っていました。
またperlもcドライブに入っているのですが、これはまずいでしょうか?

お助けください。よろしくお願いします。

投稿日時 - 2001-01-10 14:53:39

QNo.26472

すぐに回答ほしいです

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

とりあえず、DOSのコマンドラインでPerlのエラーチェックしてみてください。
ちゃんとPATHが通っていれば、"perl -h" でコマンドラインオプションのヘルプが出てきます。

それと、ブラウザでCGIの動作確認したときにInternal Server Error が出たら、Apacheをインストールしたフォルダ内の logs ってサブフォルダに error.log というログファイルが出来上がります。
多少詳しいエラーメッセージが記録されていますので、参考にしてください。

参考URL:http://www.harukaze.net/~mishima/perl/

投稿日時 - 2001-01-11 01:18:55

補足

ありがとうございます。
"perl -h" でヘルプができてきました。
error.logの中身をみてみました。見ても分かりませんでしたが、なんとかこれも検証してみます。

投稿日時 - 2001-01-11 13:45:36

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.4

> error.logの中身をみてみました。見ても分かりませんでしたが、なんとかこれも検証してみます。
その、エラーメッセージの内容を見せてもらえると分かるかもしれません。
また、『DOSで「xx.pl」は動いているのに、「xx.cgi」をテストしようとブラウザでみても』
とは、どういう事でしょうか。
DOS窓で xx.pl の動作確認後、xx.cgi をApacheから
起動させても、動作確認の意味が無いと思いますが...
DOS窓で c:\www\perl\bin\perl.exe xx.cgi と、動作確認するべきではないかと想像するのですが。

> またperlもcドライブに入っているのですが、これはまずいでしょうか?
perlが、どこにあろうと スクリプトの1行目にちゃんとその perlまでのPATHを書けば動きますので大丈夫です。

投稿日時 - 2001-01-13 15:33:16

ANo.2

 Apacheの設定はどうなっていますか?
 httpd.confの内容を確認してみて下さい。

 また、エラーの内容は、『サーバで内部エラーが出て動かないぞ』って言っていますので、サーバの設定を確認して見てください。
 その他としては、ユーザ権限の問題も出ているのだと思います。

 Apacheの動作確認とは、ブラウザで表示が出来たって事なのでしょうか? サービスとして起動しているだけなら、cgi以外のページを表示するかどうか確認して見て下さい。

投稿日時 - 2001-01-10 15:34:13

補足

ご丁寧なご回答ありがとうございます。
httpd.confの内容は変更の確認しました。大丈夫だと思います。

また大変お手数ですが、宜しければサーバの設定の確認とユーザ権限の確認の仕方を教えて頂けないでしょうか?

Apacheの動作確認と言いましたのは、Apache.exeを起動してから、Apacheの下に置きましたフォルダの中に作りました「index.html」と「xx.cgi」をブラウザで表示して確認したところ index.htmlは表示するのですが xx.cgiが上記のようなエラー表示で動かなかったのです。
cgi以外のページを表示するかどうかというのは、このindex.htmlの表示確認以外のものでしょうか?

分かりづらい内容で大変申し訳ないのですが、教えていただけるとありがたいです。
よろしくお願いします。

投稿日時 - 2001-01-10 16:55:35

ANo.1

初めまして:-)

まずインストされたPerlのパスを調べるわけですが、
DOSプロンプトから「PATH」と打ち込んで、
インストされた場所が出てきますでしょうか?

また、作動させようとしているCGIプログラム内容の
一番上の行に「uer/bin/perl」のような事が
書いてあるかと思いますが、その辺はどうでしょうか?

回答ではないですが、一度ご確認下さい:-)

投稿日時 - 2001-01-10 15:22:40

補足

こんにちは。初めまして。
インストした場所は出てきました。
プログラムの上の部分のパスも「www/perl/bin/perl」とあってると思うのですが。。
とても速いご回答ありがとうございます。

投稿日時 - 2001-01-10 16:49:29

あなたにオススメの質問