• ベストアンサー

IISでCGIの設定がうまくいきません

すみません質問させてください。 今、XPでIISをインストールしてCGIが動くようにしてるんですが うまくいきません。 http://localhost/hello.cgi というurlで実行できると思うんですが、 いつまでも読み込んでるだけで、実行されない感じです。 実行するCGIはHELLOと表示する単純なものです。 また、.cgiファイルは実行プログラムをC:\perl\bin\perl.exeに 指定しています。 IISでは、規定のWEBサイトのプロパティ>ホームディレクトリの 「構成」で.cgiの実行ファイルをC:\perl\perl.exeに指定しています。 とりあえずやるだけやったと思ってるんですが、うまくいかないのはどうしてでしょう。 よろしくお願いします。

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

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

1.CGIのperlのファイルの最初の1行目の記述に注目してみてください。その記載されたパスとはあなたの機械のperlの位置と同じでしょうか?同じでないと実行してくれません。 2.cgiファイル・フォルダのパーミッションはどうなっているのでしょうか?一般ユーザに対して実行許可を与えないとうごきません。XPはどうやってパーミッションを与えるのか知りませんが・・・多分右クリック プロパティーだと思いますが・・・いいかげんなアドバイスですいません。

elmar
質問者

補足

アドバイスありがとうございます。 一行目のperl位置ってどうやってわかるんですか? コマンドプロンプトでwhich perlとしても反応無しです。。 perl -vはちゃんと戻ってくるんですけども。

その他の回答 (2)

回答No.3

kumfさんのアドバイスは多分正しいです。「hello.cgi」というファイルをメモ帳(notepad)で開いてみてください。 その一行目に unixなら #!/usr/local/bin/perl  #!/usr/bin/perl 多分 windows版のperlは #!C:\perl\bin\perlis.dll てな感じでpathが通っています。perlというプログラム言語でかかれたhelloと出力する簡単なプログラムがあるはずです。いずれにしろ。「hello.cgi」というファイルをメモ帳で開いてみると新しい世界が開かれてきて楽しめます。訳がわからなくても一読すると楽しいです。 スタートボタンを右クリック ゴミ箱を右クリック マイコンピュータを右クリック マイドキュメントを右クリックなどで スタート プログラム アクセサリー エックスプローラ とクリックしても立ち上がります。  エックスプローラをたちあげれば、perl.dllの居場所はすぐ見つかると思います。またエックスプローラから検索をかければみつかります。インターネット・エックスプローラではありません。

noname#83007
noname#83007
回答No.2

Perlがどのバージョンかはわかりませんが… C:\perl\perl.exe これを私は、ActivePerlで C:\perl\bin\perlis.dll にしています。

elmar
質問者

補足

ありがとうございます。 perlis.dllですか、そんな方法もあるんですね。 僕の状況ですが、cgi呼び出しの結果、 CGI Timeout The specified CGI application exceeded the allowed time for processing. The server has deleted the process. という反応が返ってきました。 コレは難でしょう?? あと、cgiを入れておくフォルダって、プロパティから 「アプリケーションの許可:実行」を選ぶんですよね? どこがおかしいのかなぁ。

関連するQ&A