• ベストアンサー

エラー表示の意味を解説してください

morichan7の回答

回答No.1

サーバーは何でしょう?? Apache+ActivePerlであれば、 #!/usr/bin/perlの行がおかしいんじゃないでしょうか?? 仮にPerlがc:\Perlにインストールしてあれば、 #!c:/Perl/bin/perl としなければPerlが起動しません。 お試しください。

bori
質問者

お礼

ありがとうございました。おかげで #!/usr/bin/perl の表示の意味が理解できました。このことのためにもう2日も悩んでいたのですっきりしました。

関連するQ&A

  • ブラウザの戻るができないようにしたい

    ページ内はHTMLファイルですが、そのページのiframe内にperlで動的ページを表示させています。 クリック自体はifream内の動的ページですが、ページのキャッシュが残っているらしく、ブラウザの戻るが有効になります。 戻るができないようにしたいのですが何か良い方法はありますか? 以下、効果はありませんでした。 ファイル1 test.html <html> <head> <title>HTML</title> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="Fri, 31 Dec 2004 23:59:59 GMT"> </head> <body> <ifream src="test.cgi"></ifream> </body> </html> ファイル2 test.cgi print "Content-type: text/html\n"; print "Pragma: no-cache\n"; print "Cache-Control: no-cache\n"; print "Expires: Thu, 01 Dec 1994 16:00:00 GMT\n\n"; print <<EOT; <html> <head> <title>CGI</title> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="Fri, 31 Dec 2004 23:59:59 GMT"> </head> <body> <a href="test.cgi">sample</a> </body> </html> EOT exit;

    • ベストアンサー
    • Perl
  • CGIでフォームからの入力内容を表示されない。

    初歩的な質問ですみません。 自宅サーバを使っています。 ■ActivePerl 5.8.8 Build 822 ■httpd142p ------------------------------ ■httpd142p ┗■cgi-bin  ┣■cgi-lib.pl  ┣■test.cgi  ┗■test.html ------------------------------- CGIは動作します。 一行目のパスもあっています。 --------------------------- 【test.cgi】 #!C:/perl/bin/perl #require './cgi-lib.pl'; #&ReadParse(*MYDATA) print "Content-type: text/html\n\n"; print "<HTML>\n"; print "<TITLE>RESULT</TITLE>\n"; print "<BODY>\n"; print "氏名 = $MYDATA{'simei'}\n\n"; print "住所 = $MYDATA{'jyusyo'}\n"; print "</BODY>\n"; print "</HTML>\n"; exit; -------------------------------- 【test.html】 <HTML> <HEAD> <TITLE>TEST</TITLE> </HEAD> <BODY> <P> <FORM ACTION="test.cgi" METHOD="POST"> 氏名:<INPUT TYPE="text" NAME="simei"> 住所:<INPUT TYPE="text" NAME="jyusyo"> <INPUT TYPE="submit" VALUE="送信"> <INPUT TYPE="reset" VALUE="リセット"> </P> </FORM> </BODY> </HTML> ---------------------------------- ■実行結果 氏名 = 住所 = ---------------------------------- どなたかご教授ください。

    • ベストアンサー
    • CGI
  • CGIの中で出力するテキスト内容をhtml側で表示する方法。

    htmlからCGIファイルを呼び出すと、そのCGIは動作はしているようですが、 print等でhtml形式で文字出力させている部分は、ブラウザ内に表示されません。 今やって失敗している方法です。どのようにするのが良いか教えて頂ければ幸いです。 1.CGIスクリプト(Perlで記述)を用意... test.cgi ----------------------------------------------------- #!/usr/bin/perl print "Content-type:text/html; charset=shift_jis\n\n"; print <<__EOD; <html lang="ja"> <head> <title>TITLE</title> </head> <div align=center> <a>テスト1</a><br> <a>テスト2</a><br> </div><br> </body></html> __EOD open(OUT,">a.tmp") || die "$!"; print OUT "aaaaa\n"; close(OUT); ----------------------------------------------------- 2.htmlを用意 ... test.html ----------------------------------------------------- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html> <head> <title>HTML TEST</title> </head> <body> <script src="http://xxx/CGI/test.cgi"></script> </body> </html> ----------------------------------------------------- 上記のとき、動作として、 ◆ブラウザからCGIのパス(http://svr1/CGI/test.cgi)に直接アクセスした場合、 「テスト1」「テスト2」の文字が表示され、a.tmpファイルも作成されている。 ◆ブラウザからhtml(http://svr1/test.html)にアクセスした場合、ブラウザ画面は何も表示されない (真っ白となる)が、a.tmpファイルは作成されている。 のようになってしまいます。 後者のようにして、htmlからCGIファイルを呼び出すと、そのCGIは動作はしているようですが、 print等でhtml形式で文字出力させている部分は、ブラウザ内に表示されません。 以上、よろしくお願い致します。

    • ベストアンサー
    • CGI
  • Perlで書いたページが表示されない

    以下の内容の「index.cgi」「test.cgi」という名前は異なるが 内容は同じファイルをIISを用いて表示させようとしています。 -------------------------------------------------------------- #!/usr/local/bin/perl print "Content-type: text/html\n\n"; print <<"htmss"; <HTML> <HEAD> <TITLE>CGI</TITLE> </HEAD> <BODY>今日からCGIを頑張って習得してきましょう。</BODY> </HTML> htmss -------------------------------------------------------------- この場合に、index.cgiは表示されるのですが、 test.cgiは表示されません。(サーバーが見つかりません、の表示) また、他の内容のcgiファイルも表示することができません。  ※最初は表示されていたが急に表示されなくなったり表示されたりを繰り返した結果、   見えない状態が続いています index.cgiもたまに表示することができない場合もあります。 これはIISのせいなのか、環境が不安定なせいなのか、困っています。 どなたか回答していただけると幸いです。

  • FedoraCore3の/var/www/html/に

    x.cgi: #!/usr/bin/perl print "Content-type: text/html\n\n"; print "<HTML>\n"; print "<HEAD><TITLE>world</TITLE></HEAD>\n"; print "<BODY>\n"; print "<H2>Hello</H2>\n"; print "<HR>\n"; print "</BODY>\n"; print "</HTML>\n"; を配置して他のPCからこのファイルを読みだしたのですがこのコードがそのまま表示されてしまい Perlが実行されません 何が原因でしょうか?

    • ベストアンサー
    • Perl
  • UTF-8でソースを書くとエラーになる

    WinXPにApache2.0とperl5.8を入れて動作させているのですが、perlCGIをUTF-8で書くと500エラーになり表示することができません。 該当のソースは #!/usr/bin/perl package HTML; sub HEADER{ print "Content-type: text/html\n\n"; print << " -----END-----"; <!DOCTYPE HTML PUBLIC -//IETF//DTD HTML//EN> <html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf8"> <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> <title>Test Program</title></head> <body>\n -----END----- } sub FOOTER{ print "</body></html>"; } &HTML::HEADER; print"テスト"; &HTML::FOOTER; 上と同じものをsjisで保存すると、こちらは正常に動作します。打って変わってこれをUTF-8で保存するとエラーが起こってしまいます。 error.logには C:/Apache2/htdocs/script/base.pl is not executable; ensure interpreted scripts have "#!" first line (9)Bad file descriptor: don't know how to spawn child process: C:/Apache2/htdocs/script/base.pl と記録されていて、これを頼りにググってみましたが有効そうな情報を見つけられませんでしたので、どうか原因と解決策を教えてください。

    • ベストアンサー
    • Perl
  • 私の作ったCGIスクリプトを見てください。どこが間違えていますか

    アクセスありがとうございます。 Red Hat Linux8.0でサーバを構築してCGIスクリプトを実行しようとしているのですが、どうもうまくいきません。 私が作成したCGIスクリプトは次のようなものです。 ファイル名「first.cgi」 #!/usr/bin/perl print "Content-type: text/html\n\n"; print "<HTML>\n"; print "<HEAD>\n"; print "<TITLE>First CGI</TITLE>\n"; print "</HEAD>\n"; print "<BODY>\n"; print "文字を表示するCGIです。\n"; print "</BODY>\n"; print "</HTML>\n"; そして文字コードを「EUC」、改行コードを「LF」に変換しサーバにアップロードしました。 その後SSHでサーバにログインし $ chmod 755 /home/burn/public_html/first.cgi と「first.cgi」に実行権限を追加し $ /home/burn/public_html/first.cgi と作成したCGIスクリプトをテストしてみたのですが : bad interpreter: No such file or directory とエラーメッセージが表示されてしまいます。 「そのようなファイルやディレクトリはありません」というような意味でしょうか。 しかし、そんなはずはないと思います。 $ ls /home/burn/public_html first.cgi と「ls」コマンドを実行すれば「first.cgi」が表示されるのですから。 他に何かする必要があるのですか。 このCGIスクリプトを動作させるにはどうすればいいのか教えてください。

  • CGI勉強中(初心者です)

    #!/usr/bin/perl print "content-type:text/html\n\n"; print "<HTML>\n"; print "<head><title>CGI</title></head>\n"; print "<BODY>\n"; print "<H1><FONT COLOR=\"#FF0000\">こんにちは</FONT></H1>\n"; print "</BODY>\n"; print "</HTML>\n"; というCGIつくりました。 プロバイダの説明には Perlの場所 /usr/bin/perl または /usr/local/bin/perl となっていますが、 どこにどう置いて(ホームディレクトリでしょうか?)、どうやって起動させてよいのかさっぱりわかりません。 ご教授ください。

    • ベストアンサー
    • CGI
  • TOK2で基礎的なCGIをUPしたが動かない。

    TOK2(http://tok2.com/)に「posttest2.cgi」をUPしました。 ファイルマネージャで確認すると、CGIのパーミッションは700、 CGIを設置するディレクトリーのパーミッションは701です。 以下 posttest2.cgiです。 -------------------START----------------------- #!/usr/bin/perl print "Content-Type:text/html\n\n"; print "<html>\n"; print "<head><title>テスト</title></head>\n"; print "<body>\n"; print "TEST"; print "</body></html>\n"; ------------------- END ----------------------- IEでこのCGIを開くと「500 Internal Server Error 」になってしまいます。。 なにが悪いのでしょう?

    • ベストアンサー
    • CGI
  • HTML上でcgiをイメージタグで呼び出すと×が出ます

    お世話になっております。 お分かりになる方いらっしゃいましたら、お手数ですがご教授願えますでしょうか? cgiを勉強しているのですが、以下のような感じで テストページを作ってみたところうまくcgiが呼び出せなくて困っています。 test.htmにてcgiをimgタグで呼び出そうとしています。 しかし、ブラウザで表示すると「×」が表示されてしまいます。 【test.htm】 --------------------------------------------------------------- <html> <head> <title>テスト</title> </head> <body> <IMG src="http://www.xxxxx.xx.xx/test.cgi" width="401" height="31" border="0"> </body> </html> --------------------------------------------------------------- ※「xxxxx.xx.xx」はドメイン名が入ります。 【test.cgi】 --------------------------------------------------------------- #!/usr/local/bin/perl print "Content-type: text/html\n"; print "\n"; print "<html>\n"; print "<head>\n"; print "<title>テスト</title>\n"; print "</head>\n"; print "<body bgcolor=\"#ffcccc\">\n"; print "これはCGIのテストです。\n"; print "</body>\n"; print "</html>\n"; --------------------------------------------------------------- となっています。 ちなみに設置の仕方は以下の通りになります。  html/(レンタルサーバのメインディレクトリ)  │  ├ test.htm ……………………… (755) テストcgi呼出しHTML  │  └ test.cgi …………………… (755) テストcgiファイル 直接test.cgiを指定すると問題なく表示されます。 何か原因が他にあるのでしょうか? お手数ですが宜しくお願いいたします。

    • ベストアンサー
    • HTML