OLD Sled | INDEX | INDEX(1) | NEW Sled

WindowsでCGI  投稿者:とみー  投稿日:1999年05月28日(金) 16時04分51秒 

この掲示板で使用されているHyperBBSをWindows上で実行したいのですが、
アクセスすると「サーバーが見つからないか、または DNS エラーです。」とブラウザに出ます。

http サーバー:HTTP Daemon Ver.1.6b
BBSのCGI:HyperBBS 2.5

です。

このとき、httpdのエラーログは、
Fri May 28 07:27:10 1999 Can't create file for stdin in spawnProcess().
Fri May 28 07:27:10 1999 Error Response 500 Thread 0(ID= -1584133) for "/cgi-bin/bbs_001/hyperbbs.cgi"

cgiの説明部分に「WWWCフラグファイルはcgiが自動的に生成します」
とありますが、なんらファイルが生成されないんです。

Windowsサーバーなのでパーミッションは設定できないのですが、このエラーはどう対処したらいいのでしょうか。

御教授宜しくお願いします。

  1. re: 黒騎士隊長 さん 投稿日:1999年05月28日(金) 18時18分17秒
    CGIが実行できてないようですが、
    /cgi-bin/bbs_001へのアクセス権は設定されてますか?
    httpdの設定を確認するのがいいかもしれません。

  2.  
  3. re: とみー さん 投稿日:1999年05月29日(土) 01時07分38秒
    黒騎士隊長さん、ありがとうございます。
    httpdの画面を見ると、一瞬「CGI実行中」って表示が出てるので、アクセス権限は問題ないような気がします。
    実行中に問題が起こったというところでしょうか。

    httpdのアクセス制御の設定を確認しましたが、制限はありませんでした。
    う〜ん。なぜでしょう。

    ちなみに、hyperbbs.cgiの最初の部分に、「パーミッションをXXXに設定せよ」という記述がありますが、この設定はWindowsだとどうすればいいのでしょう?

  4.  
  5. re: えがちゃん さん 投稿日:1999年05月29日(土) 04時00分22秒
    レスになってないですが、参考までに..

    パーミッションに付いてはここが、参考になるかも
    http://www.st.rim.or.jp/~eyez/httpd/help/perm.html

    また、HTTPDですが、
    http://www.st.rim.or.jp/~nakata/
    こちらの物でよく実験してました。

    パールは、ここ
    http://www.harukaze.net/~mishima/perl/win/jperl.html

    今は、UNIX環境で実験してますが、上記の物はWin環境で実験するのに
    非常に助かりましたよ。

  6.  
  7. re: えがちゃん さん 投稿日:1999年05月29日(土) 04時04分20秒
    あ、ゴミレスの追加です(ToT

    CGIスクリプトの中に
    jcode.plって書いてあるとこいっぱいあるでしょ?(ここのスクリプトはまったく見てないので見当ですが)
    そこを、Win用パールに書き直したような気が..(うろおぼえです、間違ってるだろうな)(ToT

  8.  
  9. re: えがちゃん さん 投稿日:1999年05月29日(土) 04時52分11秒
    も一個追加(マジでもう寝ます&でてきません)(ToT

    ”jcode.plって書いてあるとこいっぱいある”..いっぱい無いと思います(ToT
    Win用パールをいれた場合、そこを、コメントアウトでよかったと思います。
    あと、sleep関数がありますよね?ない?
    あったらコメントアウトしてみて下さい。
    では(ToT)/〜

  10.  
  11. re: PELA さん 投稿日:1999年05月29日(土) 06時54分58秒
     Win98 + an-httpd + perl for win32 の環境で、基本的には、HyperBBS2.5のHyperBBS.CGIの先頭部分の各種パスを設定するだけで動きます。(実際動いてます。) お使いの環境がわかりませんが、Win9xに関しては、パーミションの設定はありません。
     WinNT4.0 + IIS +perl for Win32 の場合でも同様ですが、この場合、IISの設定でcgiのあるディレクトリに実行権限を与えてください。
     perl for Win32では、sendmailはつかえません。そこだけがひっかかるはずです。また、perl for win32のほうが、柔軟(アバウト)な感じがします。perl for Win32で動いてもperl(UNIX)で動かなかったりするし。がんばってください。

  12.  
  13. re: とみー さん 投稿日:1999年05月29日(土) 12時17分52秒
    みなさん、たくさんのレスをありがとうございます。

    hyperbbs.cgiに関しては、1行目ですが
    #! C:/Perl/bin/Perl.exe
    として、ここにPerl for Win32を入れてあります。

    httpd側で他に設定項目があるのでしょうか。

    sleep jcode.plをコメントにしてみましたが、やはりダメでした。


  14.  
  15. re: PELA さん 投稿日:1999年05月29日(土) 14時50分56秒
     http サーバー:HTTP Daemon Ver.1.6b がどんなものか、知識がないので、ちょっと見当がつきませんが、(ちなみにAn-HTTPDは、フリーで現在の最新は、Ver1.16b)

    autoexec.batのPATHにC:/Perl/bin/を追加する。
    (etc. PATH=C:\ C:\WINDOWS;C:\Perl\bin\;)

    An-HTTPD 1.16bでは、
     「一般」のタブ内の設定で、
      四角で囲まれていない部分については、
      「HTTPサーバ機能」と「リモートホストを取得−取得しない」のみにチェック。
      「ドキュメントルート」などの場所の確認。
      2つの四角の中の設定では、すべてチェックをはずし、
      「.pl .cgiの実行プログラム」に[perl]と記入。
      「#1の行を調べる」チェックをはずすと、CGIの先頭行は無視されるので
      「#! C:/Perl/bin/Perl.exe」は何でもいい。
     「エイリアス」のタブで、
      「実行パス」、「一般パス」にCGIを置くパスを追加。
    これだけで、動くはずです。

     おそらく、「リモートホストを取得−取得しない」にチェック。ここだと思うのですが。

     あと、HyperBBS.CGIの中で、「Perl for Win32」で機能しないのは、sendmail関連だけで、jcode.plに関するものは動きます。

  16.  
  17. re: とみー さん 投稿日:1999年05月29日(土) 18時14分37秒
    httpd、バージョン1.16bでした(汗)

    設定を行いました。
    依然としてブラウザからは「ページが表示されません」と表示されます。

    一方an httpd側では、
    「CGI/SSIプロセスを起動中」→「プロセス終了待ち」→「接続要求待ち」
    の順に表示され、ログファイル(errors.log)を読んでも、エラーにはなっていません。

    httpd.logの方には

    127.0.0.1 - - [29/May/1999:18:08:30 +0900] "GET /cgi-bin/bbs_001/hyperbbs.cgi HTTP/1.0" 200 86

    と書いてあります。

    はて。。サーバー側からは正常処理しているように見えているようですが・・・??

    皆さん、お手数をおかけしております。

  18.  
  19. re: Tambo さん 投稿日:1999年05月29日(土) 18時46分32秒
    ちょっと違う話なんですが。
    私は、AN HTTPDではうまくいかなかったので、既にインストールしてあったWinProxyで動かしてます。WinProxyの方が設定が簡単でした。Windows98+IE5+WinProxyのWebサーバー機能+Perl for Win32です。
    外部に公開しているわけではないですが、ローカルでCGIのテストをする分には十分だと思っています。
    #たぶんゴミです(^^;

  20.  
  21. re: PELA さん 投稿日:1999年05月29日(土) 20時59分00秒
    AN-HTTPDのインストールディレクトリをC:\WWW\、自分のディレクトリをC:\www\myhome\HyperBBS.cgiの設置ディレクトリをC:\WWW\myhome\cgi-bin\hyperbbs\、とすると、通常、
     C:\www---\myhome---\cgi-bin---\hyperbbs---\count.txt
     *****************|**********|***********|-hyperbbs.cgi
     *****************|**********|***********|-hypinit.cgi
     *****************|**********|***********|-log.txt
     *****************|**********|***********
     *****************|**********|-jcode.pl
     *****************|
     *****************|-index.html(wwwc用のものではなく自分のHP)

     HyperBBS(最新バージョンは2.5a)の解凍したまんまで上記のように設置し、hyperBBS.cgiのなかの以下の2行だけ直せばとりあえず動くのですが。(ver. 2.5aでは24 26行目)

    $bbsdir = 'http://127.0.0.1/myhome/cgi-bin/hyperbbs/';
    $webhome = 'http://127.0.0.1/';

    上と重複しますが、An-HTTPD 1.16bでは、
     「一般」のタブ内の設定で、
     ☆四角で囲まれていない部分については、
     「HTTPサーバ機能」→チェック
     「ドキュメントルート」→[C:\WWW]
     「ポート」→[80] 「デフォルトインデックス」→[index.html]
    「チェックボックス」をチェック [/myhome]→ドキュメントルート\[myhome]
     「リモートホストを取得」→[取得しない]にチェック。
     「ドキュメントルート」→「C:\WWW」 「ポート」→「80」
     ☆その下のの四角の中の設定では、
     「.pl .cgiの実行プログラム」に[perl]と記入。
    後のチェックはすべてはずす。「ヘルパープロセス」と「CGI出力を検査」は付けてもOK
     ☆さらにその下のの四角の中の設定では、
    後のチェックはすべてはずす。

     「エイリアス」のタブで、
     「実行パス」、「一般パス」に以下のパスを追加
    [仮想パス /myhome/cgi-bin ローカルパス C:\WWW\myhome\cgi_bin]

    です。これで、ブラウザに[htttp://127.0.0.1/myhome/cgi-bin/hyperbbs/hyperbbs.cgi]といれれば、表示されます。

     あと、DOS窓で[perl -cw C:\www\myhom/cgi-bin/hyperbbs/hyperbbs.cgi]は、ちゃんと実行できますか?(PERLがちゃんとインストールできていれば、CGIのエラーがでるはずです。)
     もう一息だと思います。がんばってください。

  22.  

OLD Sled | INDEX | INDEX(1) | NEW Sled

NamaLog Viewer SuperLite Ver-0.0.2β by K.O.T.B.GRIFFON / GRIFFON Works Software