投稿日:2002年05月10日 作成鷹の巣

No.2996 CGIについて教えて下さい。



CGIについて教えて下さい。

No.2996 投稿時間:2002年05月10日(Fri) 15:00 投稿者名:non-man URL:

こんにちは!鷹の巣様
CGIについてご質問があります。自宅サーバーの接続には成功したのですが
掲示板を作りたく、フリーのCGIをDLして試したのですが、うまくいきません。
Perlをインストして、CGIの変更設定をし、http://ドメイン/bbs/xxx.cgiを
指定したところトップの画面は出るのですがいざ書き込んで送信をすると「HTTP 500 サーバー...」
のエラーが出て書きこめません!HTTPは、AN HTTPD (CGI は、Active Perl )を使用しました。
どこか、設定がおかしいのでしょうか?CGIの中身の#!/usr/bin/perl(?違うかな?)の記述が怪しいような
気がします。どうか、お助言願えなしでしょうか?宜しくお願い致します。


書込み権限が付与されていないと考えます。

No.2997 投稿時間:2002年05月10日(Fri) 19:03 投稿者名:鷹の巣 URL:http://sakaguch.com/

> CGIについてご質問があります。自宅サーバーの接続には成功したのですが
> 掲示板を作りたく、フリーのCGIをDLして試したのですが、うまくいきません。
> Perlをインストして、CGIの変更設定をし、http://ドメイン/bbs/xxx.cgiを
> 指定したところトップの画面は出るのですがいざ書き込んで送信をすると「HTTP 500 サーバー...」


http://www.kent-web.com/support/faq/index.html
をご参照願います。


> のエラーが出て書きこめません!HTTPは、AN HTTPD (CGI は、Active Perl )を使用しました。
> どこか、設定がおかしいのでしょうか?CGIの中身の#!/usr/bin/perl(?違うかな?)の記述が怪しいような


OSが何か不明ですが、POST(書き込み)時のエラーのようですから、ファイルに書き込める権限が付与されていないと考えます。


メールに添付させていただきます。見てはくださいませんか?

No.3027 投稿時間:2002年05月12日(Sun) 10:47 投稿者名:non-manさんの代理投稿(鷹の巣) URL:http://sakaguch.com/

i-mode用の掲示板を設置したいのですが書きこみがうまくいきません。
フリーのCGIをそのまま使いました。(初期設定は多少変えました。管理者パスetc)
perlは、c:\perl です。

>> OSが何か不明ですが、POST(書き込み)時のエラーのようですから、
> ファイルに書き込める権限が付与されていないと考えます。
と返答がありましたが、kent-webでみてもよくわかりません。
因みにOSは、Windows98SEです。
私の設定orCGIの不具合なのかさっぱりわかりません。
CGIのテキストをメールに添付させていただきます。見てはくださいませんか?
お忙しいところ誠に恐縮です。

宜しく、御願いいたします。m(_ _)m


ezimode.txtの空のファイルを作成して下さい。

No.3028 投稿時間:2002年05月12日(Sun) 10:53 投稿者名:鷹の巣 URL:http://sakaguch.com/

> > のエラーが出て書きこめません!HTTPは、AN HTTPD (CGI は、Active Perl )を使用しました。
> > どこか、設定がおかしいのでしょうか?CGIの中身の#!/usr/bin/perl(?違うかな?)の記述が怪しいような


この行は、通常無視出来ます。


> i-mode用の掲示板を設置したいのですが書きこみがうまくいきません。
> フリーのCGIをそのまま使いました。(初期設定は多少変えました。管理者パスetc)
> perlは、c:\perl です。


ezimode CGI(Ver.2_1)
http://www.net-easy.com

http://sakaguch.com/cgi/test/ezimode.cgi
に仮設置しましたので、アクセスして見てください。


> 因みにOSは、Windows98SEです。


このOSでは、アクセス権の問題は生じません。


> 私の設定orCGIの不具合なのかさっぱりわかりません。


上記のtestフォルダには、
cgi-lib.pl
jcode.pl
ezimode.cgi
ezimode.txt
のファイルだけをダウンロード状態で設置しています。

※確かにezimode.txtがないと書き込み時にエラーが発生します。
ezimode.txtの空のファイルを作成して下さい。


# テキストファイルは、ワードパッドでなく、メモ帳で
# 書いた方が良いと思います。


頑張って下さいね。


やっぱり駄目です。

No.3031 投稿時間:2002年05月12日(Sun) 12:53 投稿者名:non-mam URL:

>http://sakaguch.com/SubDomain.html#WWWserver
>の「CGI (Common Gateway Interface) 関係のインストールと設定例は、以下の所に
>あります。 」
>の表の中に拡張子の関連付けをするリンク先がありますので、
>cgiとplの拡張子の関連付けを行って下さい。また結果をお知らせ願います。

> http://sakaguch.com/cgi/test/ezimode.cgi

↑確かに送信できますね!

私は、相変わらず送信できません。鷹の巣様が添付してくださった
ファイル4つを上書きしてやってみましたが、
白地に

'C:\WWW\public_html\bbs\ezimode.cgi' script produced no output

と出ます。no output ですから書きこみできないみたいですね!なぜ?
perlがちゃんとインストールされていないのでしょうか?
4つのファイルは、何も変更せずそのまま上書きしましたからOKだと思います。
cgiを置く場所も問題ないと思われます。
HTTPの設定もたぶんあってると思うのですが......
(~ヘ~;)ウーン わかりません。
> ※テキストファイルは、ワードパッドでなく、メモ帳で
> 書いた方が良いと思います。
ちゃんとしました。cgiがあるところ C:\WWW\public_html\bbs\ezimode.cgiに置いて
ますし
何が悪いのでしょうか?
>CGI (Common Gateway Interface) は、Active Perl
(Windows95/98の方は、win95用mfc42.dll と MSI(Microsoft Windows Installer)が必要)
上記の事も再インストし直してやってみました。
お手上げです。再度、ご助言を.....


cgiとplの拡張子の関連付けを行って下さい。

No.3033 投稿時間:2002年05月12日(Sun) 13:42 投稿者名:鷹の巣 URL:http://sakaguch.com/

> >http://sakaguch.com/SubDomain.html#WWWserver
> >の「CGI (Common Gateway Interface) 関係のインストールと設定例は、以下の所に
> >あります。 」
> >の表の中に拡張子の関連付けをするリンク先がありますので、
> >cgiとplの拡張子の関連付けを行って下さい。また結果をお知らせ願います。


cgiとplの拡張子の関連付けを行って下さい。また結果をお知らせ願います。


AnHTTPDの設定が悪いように思います。

No.3036 投稿時間:2002年05月12日(Sun) 16:03 投稿者名:水芹 URL:http://www.dream-seed.com

水芹です。

AnHTTPDの設定が悪いように思います。
設定をもう一度見直して見てください。

1.AnHTTPDにPerlのフルパスを指定する。
2.#!の行をチェックするのチェックを外す。
3.EXE形式の実行をチェックする。

ぐらいでいいと思います。


報告です。

No.3039 投稿時間:2002年05月12日(Sun) 18:04 投稿者名:non-mam URL:

皆さん、ご報告いたします。
ezimode.cgiは残念ながらやっぱり駄目です。皆さんにいろいろ助言頂きましたが...
しかし、他のcgiを試したところすんなり送信できました。なぜに?
私の設定が悪かったのでしょうか?それとも、cgiの不具合か?でも、鷹の巣さんはOKですし....
因みに使ったcgiはaska.cgiです。http://www.kent-web.com/bbs/aska.html その中の一番下の
おすすめページ→i-mode対応バージョン → Aska2iです。
とりあえず、これが使えるのでこれにしておきます。
皆さん、有難うございました。また、何かわかりましたら掲示御願いいたします。


実行プログラムが PerlIS.dll になっていると思います。

No.3041 投稿時間:2002年05月12日(Sun) 19:51 投稿者名:中田昭雄 URL:http://www.st.rim.or.jp/~nakata/

> 私の設定が悪かったのでしょうか?それとも、cgiの不具合か?でも、鷹の巣さんはOKですし....

水芹さんが言う通りで、AN HTTPD の設定が悪いので ezimode.cgi のエラーの原因がわからなかったのだと思います。

まず、
'C:\WWW\public_html\bbs\ezimode.cgi' script produced no output
というのは、PerlIS.dll(ISAPI DLL) を使っているときにのみ出るエラーメッセージです。

つまり、.pl,.cgi の実行プログラムが PerlIS.dll になっていると思います。
エラー500 など CGI実行時のエラーが出るときは perl.exe を使うようにしないと原因はわかりません。
ActivePerl をデフォルトの C:\Perl にインストールしたのなら実行プログラムを C:\Perl\bin\perl.exe にします。
C:\Perl\bin\PerlIS.dll にしてはいけません。

その上で、「CGI出力を検査」にチェックを入れてなければ、チェックを入れておきましょう。

そうしてから、ezimode.cgi で書き込みをしてみてください。
エラーの原因を示すエラーメッセージが表示されるはずです。


AN HTTPDの設定を変えてもエラー500番が発生しました。

No.3042 投稿時間:2002年05月12日(Sun) 20:55 投稿者名:non-man URL:

中田さん、ご助言有難うございます。おっしゃる通りのHTTPの設定を変えました。
しかし、ezimode.cgiでは

ページを表示できません

検索中のページには問題があるため表示できません。

HTTP 500 - 内部サーバー エラー
Internet Explorer

↑が出てしまいます。これで問題がわかるでしょうか?
返信を御待ちしております。


もう少し詳しいエラー表示を教えて下さい。

No.3053 投稿時間:2002年05月13日(Mon) 09:04 投稿者名:鷹の巣 URL:http://sakaguch.com/

> 中田さん、ご助言有難うございます。おっしゃる通りのHTTPの設定を変えました。
> しかし、ezimode.cgiでは
>
> ページを表示できません
>
> 検索中のページには問題があるため表示できません。
>
> HTTP 500 - 内部サーバー エラー
> Internet Explorer
>
> ↑が出てしまいます。これで問題がわかるでしょうか?


もともと、「http://ドメイン/bbs/xxx.cgiを指定したところトップの画面は出るのですが
いざ書き込んで送信をすると「HTTP 500 サーバー...」のエラーが出て書きこめません。」
ということでしたが、上記は、
1.http://ドメイン/bbs/xxx.cgiとするとCGIのページは、表示される。
2.「送信」ボタンを押すと、上記のエラーが起こると考えて良いですね。


# ブラウザの「ツール」-「インターネット オプション」の「詳細設定」タブのブラウズで、
# 「HTTPエラーのエラーメッセージを簡易表示する」のチェックは、外してありますでしょうか。


上記のエラー表示は、AN HTTPDで、「CGI出力を検査」 にチェックを入れた結果とは思えません。
もう少し詳しいエラー表示がなされないと
http://homepage1.nifty.com/yito/anhttpd/error.html#500
等のデータが役に立ちません。


●ついでで申し訳ないのですが、ezimode.cgiの送信メソッドの選択をGETにしてテストして、結果をお知らせ願います。


# ezimode.cgiのソースファイル内で、「ezimode.cgi」を検索しますと、「ezimode.cgi」と「./ezimode.cgi」の二種類で、記述されています。
# ちょっと頼りないので、perl -c C:\WWW\public_html\bbs\ezimode.cgi のような感じで、CGIの文法をテストして見ました。
# C:\WWW\public_html\bbs\ezimode.cgi syntax OK となって、CGIの文法は、一応正常でした。


ホームページにアクセスできなくなりました。

No.3064 投稿時間:2002年05月13日(Mon) 17:54 投稿者名:non-man URL:

皆さん、色々有難うございます。
しかし、ここ2、3日 HTTPを弄くっていたらホームページにアクセスできなくなりました。
どうしよー!!


再インストールした方が早いと思います。

No.3070 投稿時間:2002年05月13日(Mon) 23:10 投稿者名:鷹の巣 URL:http://sakaguch.com/

> しかし、ここ2、3日 HTTPを弄くっていたらホームページにアクセスできなくなりました。


原因が解るまで、徹底的に調べたいところですが、
windows 98SEのレジストリエディタ(regedit.exe)にて、HKEY_LOCAL_MACHINE\Software\AnHttpd以下の
レジストリデータを一旦削除して、再インストールした方が早いと思います。
ダウンロード先は、こちら
http://www.vector.co.jp/soft/dl/win95/net/se044252.html
に安定バージョン1.37dがあります。

変更するところは、基本的に「一般」タブの拡張子「.pl,.cgi」行の実行プログラムを
「perl」から、「C:\Perl\bin\perl.exe 」にするだけで、良いと考えます。


|目次|掲示板|過去ログ目次|▲頁先頭|