人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

IISサーバでCGIが正常に動作せずに困っております。Linux環境で問題なく動作していた簡単なCGIを、Windowsサーバ(Windows Server 2003 R2_Standard Edition,IIS 6.0)に設置したところ、エラーメッセージは一切出ないのですが、本来パスワード認証のためのID、パスワード入力画面が出るべきところ、まったく白紙のページが表示されてしまいます。CGIは本体とは別に、jcode.plとcgi-lib.plを使用しています。どのような原因が考えられるでしょうか?よろしくお願いいたします。

●質問者: mathematician
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:CGI IIS LIB Linux Windows
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● tezcello
●35ポイント

文字コード(エンコード)の不一致がありませんか?(HTTPヘッダの指定や、スクリプト、サーバの内部エンコードなど)

また、jcode.pl はユニコードに非対応だったのでは? Jcode.pm で対応されたのだったと思いますが、最新の Perl でしたら、Encode として標準装備になっていたと思います。


cgi-lib.pm は過去に使った事がありましたが、バージョンが違いで生成されるHTMLコードが異なってた記憶があります。(何らかの修正があって然るべきなので、その事自体が問題ではないのですが)

それが今回のよく分からない動きの原因ではないのかは確認してみてもよいでしょう。


パスワードの入力画面は、スクリプトが生成したHTML表示しているのでしょうけれど、これ以外のページも同じような状態なのか、このページにのみ起こる問題なのかが解決の糸口になりませんか?

例えばスクリプトが生成するHTMLコードをファイルに保存してみる

スクリプトで生成予定のHTMLをハードコードしてみる

単純な Hello World だとかを表示してみる

etc.

ひょっとすると、別のブラウザ(FFとか)ではチャンと表示できたりして...


エラーが一切でない(「表示されない」ではなく、エラーログとして残らない)のは、エラーではないから でしょう。

空白のページが返ってくるという事は、サーバ的には一応処理を完了しているのでしょうから。

(CGIから表示すべきデータが返って来なかっただけ。)

スクリプト側で、パスワードファイルをオープンできなかった時(パーミッションなど)のロジックは大丈夫でしょうか?(テスト用に強制終了していたりとか)

◎質問者からの返答

早速のご回答ありがとうございます。まず文字コードを確認してみます。


2 ● mouitchou
●35ポイント

ブラウザからソースを確認して、何か出力されていないでしょうか。

それをキーに、現象を切り分けるのがいいと思います。

WEBシステム開発 : Webサーバー構築:IIS-5.1(WindowsXP Professional)の設定

まさかと思いますが、ActivePerlなどがインストールされていないということは無いでしょうね。

◎質問者からの返答

ご回答ありがとうございます。紹介いただいたページを参考に、IISの設定を再度チェックしてみます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ