解決済みの質問

perlがうごきません

htmlファイルには
<html>
<form action="form2.cgi" method="get">
食品名1<input type="text"name="form1">
<br>
食品名2<input type="text"name="form2">
<input type="submit"value="送信">
</form>
</html>

cgiファイルには

#! /usr/bin/perl

require "cgi-lib.pl";

&ReadParse();

print "Content-type:text/html\n";
print "\n";
print "<html>\n";
print "<head>\n";
print "<title>フォーム</title>\n";
print "</head>\n";
print "<body>\n";
print "おいしい$in{'form1'}\n";
print "まずい$in{'form2'}\n";
print "</body>\n";
print "</html>\n";
exit;

cgi-lib.plはサーバーにいれております。

どうしてうごかないのでしょうか。
perlの場所も正確です。

投稿日時 - 2006-10-26 17:22:33

QNo.2498909

すぐに回答ほしいです

質問者が選んだベストアンサー

 以下補足要求
1.エラーが出るのならステータスコードを教えてください
2. FTP転送時にasciiモード(FTPソフトによってはtextモードとも言う)で送りましたか?
3. パーミッションは取り合えず最も普遍的な 755にしてみてください
4.  2.3.を確認しても駄目なら スクリプトの末尾に
BEGIN{use CGI::Carp qw(fatalsToBrowser);}
と追加してみてください
表示されたメッセージがあれば 補足に貼り付けてください

##以下、上の説明
1. ステータスコードとは サーバーから返される 404、500などの数字ですが
http://www.studyinghttp.net/status_code <=ここが詳しい
ブラウザのタイトル欄に表示されなければ
 MSIEの場合なら ツール>インターネットオプション>詳細設定>
 「HTTPエラーメッセージを簡易表示する 」<=これのチェックを外してからMSIEを再起動し 問題のCGIにアクセスし直してください

2. windows、MAC、UNIXの改行コード(Content-type: text/html\n\n の\n がそれです)
 はそれぞれ違います。
 上の書き方ではwindowsは \r\n macは\rだけ unixは\nだけ
 asciiモードで転送しないと そのまま送られてしまいますので例えばwindowsからだと 正しいperlのパスであっても
#! /usr/bin/perl\r\n となり unixは/usr/bin/perlではなく /usr/bin/perl\r を探しに言ってしまい、当然見つかりませんのでエラーに成ります。

3. サーバーによっては .cgiのパーミッションが700でも動いたり
  777でも動いちゃったりします(<=これはすごく危険ですが)
  あるいはごく稀にグループ権限で動く場合もあるらしいです
 それらの場合でも最大公約数的に755なら動きます

4. これは perlのエラーメッセージを画面に表示するルーチンです
  デバッグが終了したら消去しても構いません。
http://perldoc.jp/docs/modules/CGI.pm-2.89/CGI/Carp.pod

投稿日時 - 2006-10-26 19:01:33

ANo.2

0人が「このQ&Aが役に立った」と投票しています

[  前へ  |  次へ ]

ベストアンサー以外の回答(1件中 1~1件目)

ANo.1

リスト見た限りでは何が悪いのか発見できなかったので、コピペして手元のテスト用サーバで実験してみましたが、やはり正常稼動しました。
・CGIは許可されているのか
・ファイル名は間違えていないのか
・パーミッションは正確に設定されているか
・確認時のURLは正確か
・動かないとはどういう症状か
状況を正確にお願いいたします。

投稿日時 - 2006-10-26 18:32:05

あわせてチェックしたい
  • html文を書く時の print の中の\"について。 ...
  • cron は動作しているのですが、一部動作していない命令が・・ ...
  • Perl+DBI+Apacheの動作 ...
PR

OKWaveのオススメ

教えて弁護士さん!

お金の悩みQ&A特集はこちら