このページに載っているCGIソースを
コピーしました。
http://127.0.0.1/hello.cgi
これを打ち込んでCGIが出てこないのです。何故でしょうか?あと、perlが通ってないとはどういう意味なんでしょうか?
これで意味通じたでしょうか?
c:¥www¥perl¥
にperlをインストールしましたでしょうか?
コマンドプロンプトから
perl -v
として 「図9」のような 画面でました?
#!/usr/local/bin/perl
print ”Content-type: text/html¥n¥n”;
print ”<HTML><BODY>¥n”;
print ”<H2>Hello! WORLD</H2>¥n”;
print ”</BODY></HTML>¥n”;
exit;
#!C:/perl/bin/perl
これ変更でどうかな?
WEBサーバがAN HTTPDの場合、AN HTTPDは起動していますか?
または、AN HTTPDの設定はあっていますか?
コマンドプロンプトから、「perl -v」とやって
’perl’ は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。
と出なければ、perlにパスが通っています。
あるいは、AN httpdのオプション、一般タブのCGIを実行するの下の拡張し.cgiに実行プログラムのところにperlへのフルパスをいれてみてください。
http://www.st.rim.or.jp/~nakata/gbook/faq.html
AN httpd FAQ
「CGIがでてこない」という言葉から
1.「404ファイルが見つかりません」エラー
2.ソースファイルがそのまま表示される
3.「ファイル○○が見つかりません」エラーがでる。
4.ブラウザがアクセスしっぱなしになる
等々の状況が想像できそれぞれで原因が異なるわけです。
>perlが通ってない
perl.exeが検索path環境変数に登録されていないため、見つからない状態です。
「スタート」−「ファイル名を指定して実行」で command と入力しperl -v とうって
以下のメッセージが出たらパスが通ってます。
でない場合はパスが通っていません。
環境変数pathにperl.exeのあるホルダー名を追加してください。
C:¥DOCUME~1¥ADMINI~1.IP->perl -v
This is perl, version 5.003_07
Copyright 1987-1996, Larry Wall
+ suidperl security patch
Win32 port Copyright (c) 1995-1996 Microsoft Corporation.
All rights reserved.
Developed by ActiveWare Internet Corp.,
Perl for Win32 Build 316 - Built 09:44:44 Mar 13 1998
Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5.0 source kit.
:: KENT WEB - CGIスクリプト ::
追記。
実際にcgiをアップロードしたら
パーミッションの設定もあるので
perlを扱うならもう少しperlについての勉強が必要なようです。
がんばってください。
http://www.hatena.ne.jp/1101965537#
人力検索はてな - http://www.kent-web.com/www/anhttpd/www1.html このページに載っているCGIソースを コピーしました。 http://127.0.0.1/hello.cgi これを打ち込んでCGIが出てこな..
パスが通っていないというのは、参照ページの例でいうと
------------------ hello.cgi --------------------
#!/usr/local/bin/perl
print ”Content-type: text/html¥n¥n”;
print ”<HTML><BODY>¥n”;
print ”<H2>Hello! WORLD</H2>¥n”;
print ”</BODY></HTML>¥n”;
exit;
-------------------------------------------------
の
#!/usr/local/bin/perl
部分がyujihiroseさんがインストールした場所と違うのでは?
ということです。
でもってこの部分を
#!C:/perl/bin/perl
やってみてはいかがでしょう?
ちょっと試行錯誤してみます。