Namazu-win32-users-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

CGI として正しく動作しない



はじめて投稿させていただきます北野と申します。
試行錯誤しましたが結果としてうまくいかないため投稿させて
いただきました。ご教授いただきたくよろしくお願いいたします。

下記に問題の現象(2点)と動作環境について説明させていただきます。
------------------------------------------------------------------------
《問題の現象》

  (1)IIS4.0の「.cgi」に対するアプリケーションマッピングの設定
     があるとCGI(namazu.cgi)として実行してもエラーになる。

     [A]「.cgi」を「Perl.exe」と対応付けした場合

         <IISの設定>
           実行ファイル  :D:\Perl\bin\Perl.exe "%s" %s
           拡張子        :.cgi
           メソッドの除外:PUT,DELETE

         <実行時のエラーメッセージ>
           CGI Error
           The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are:
           Unrecognized character \x90 at D:\site\portal\member\search\namazu.cgi line 1.

     [B]「.cgi」を「PerlIS.dll」と対応付けした場合

         <IISの設定>
           実行ファイル  :D:\Perl\bin\PerlIS.dll
           拡張子        :.cgi
           メソッドの除外:PUT,DELETE

         <実行時のエラーメッセージ>
           'D:\site\portal\member\search\namazu.cgi' script produced no output

     [C]「.cgi」の対応付けをせずに実行ファイル名を「namazu.cgi.exe」
        として実行した場合、画面表示はされるが、よくよく調べると、
        下記(2)の現象が発生する。


  (2)CGI(namazu.cgi.exe)と同じディレクトリにある「.namazurc」が
     参照されず、「namazu\etc\namazu\namazurc」が参照されてしまう。

     → 上記(1)で動作しないため、一旦アプリケーションマッピングを
        削除し、CGI(namazu.cgi.exe)として実行したところ、画面は表示
        されたが、同一ディレクトリの「.namazurc」が参照されていない
        ようなので、「namazu\etc\namazu\namazurc」を削除して実行
        してみると以下のようなエラーとなり、明らかに「namazu\etc\
        namazu\namazurc」を参照しにいってしまう。

         <実行時のエラーメッセージ>
           D:\namazu\etc\namazu\namazurc: No such file or directory


《動作環境》

   OS        :Windows NT 4.0 Server (SP6a)
   httpd     :IIS 4.0
   ActivePerl:5.6.1.628
   Namazu    :2.0.6_1
------------------------------------------------------------------------

                                                                以  上