• ベストアンサー

CGIエラー

ホームページにCGIを設定したら下記エラーが発生したのですが、どこの行がエラーになったかが表示されません… もしわかりましたら教えて下さい。 CGI Error The specified CGI application misbehaved by not returning a complete set of HTTP headers.

  • CGI
  • 回答数6
  • ありがとう数4

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

  • ベストアンサー
回答No.6

■結論 今回のサーバー(お名前.com の プレミアサーバー)では設置できません。 サーバーソフトは Microsoft-IIS/6.0 と、同じ様な内容の質問を見つけました。 参考になればいいのですが。。

参考URL:
http://www1.anx.co.jp/~kuwahara/cgi-bin/cgi/support/qa.cgi?mode=data&uid=01041
mytora1
質問者

お礼

ありがとうございます。 まさしく同じ状況に陥っている状態です…私もWindows ServerではなくUnix ServerでのレンタルServerを借ります。

その他の回答 (5)

  • runa_moon
  • ベストアンサー率34% (198/581)
回答No.5

えーっと、スクリプトの配布先というのはたとえば 大きいところで言えばKENTWEBさんとかそういうところで、 どこから借りられていますか?ということなんですが。 色々考えたのですがそちらのプレミアムサーバのHPのヘルプでCGIの設定をもう一度見られてはいかがでしょうか? そちらでは、相対パスがつかえず絶対パスしか使えないためにエラーが起こっているような気もします。 ・1行目のPerlのパスはあっていますか? ・設定ファイルの全てのパスはあっていますか?(jcode.plや./lib/pc.plなど) 一度ご確認くださいね。

mytora1
質問者

お礼

丁寧な対応誠にありがとうございます。 原因が判明致しました。私のレンタルServerの知識不足による設定不可能なServerに登録した事が判明しました…本当にお手数をおかけいたしました。

mytora1
質問者

補足

度々のご連絡ありがとうございます HELPを確認したところ下記記述が存在しておりました。 *行数一行目の#!/usr/bin/perlに関してはWindows2003の為、必要なし その為、#!/usr/bin/perlの削除を行いました。 *次に相対パスがつかえず絶対パスしか指定が出来ないためrequire 'config.pl';の部分をrequire './XXXX/XXXXX/config.pl';に変更を行いましたが現象はかわらない状態となっております…

  • runa_moon
  • ベストアンサー率34% (198/581)
回答No.4

再び登場です。 お名前COMのプレミアムサーバーとはどんなものか存じ上げないのですが そちらにCGIの設定についてかかれていないでしょうか? プロバイダーによってパーミッションの変更をしなくては成りません。 ちなみにスクリプト配布先はどこなのでしょうか? スクリプトによっても変わってきますが・・・。

mytora1
質問者

補足

お名前COMのプレミアムサーバーに関してなんですが、ベースがWindows Serverとなっております。 その為、パーミッションの設定に関しては不要のはずなんですが…ちなみにスクリプトの配布先なんですがcgi-binの中に設定してあります。

  • runa_moon
  • ベストアンサー率34% (198/581)
回答No.3

どこかのCGIを借りてきてされていますか? NIFTYとか特殊なプロバイダーの場合は変えないといけないところもありますし ソースがないとどこが間違っているかわからないです^^;

mytora1
質問者

補足

ご連絡ありがとうございます。 使用しているのはレンタルサーバーでお名前COMのプレミアムサーバーを使用しています。

  • Riruka
  • ベストアンサー率37% (51/137)
回答No.2

CGIの文法やパーミッションの設定をチェックしてくれるCGIを使ってみたらどうですか?

参考URL:
http://www.kent-web.com/utility/index.html
mytora1
質問者

補足

ご連絡ありがとうございます インストールして使用してみましたところ下記エラーが発生しました。 改行形式 LF (UNIX形式) Perlのパス #!/usr/bin/perl サーバのPerl とのチェック パスが不正のようです /usr/bin/perl パーミッション 実行権がありません 文法チェック これはどういう事なのかが上手く理解していないのですが…よかったら教えていただけないでしょうか?

回答No.1

ソースがあったほうが回答し易いかも知れませんね。

mytora1
質問者

補足

#!/usr/bin/perl require 'config.pl'; #■HTMLのタグ(<html>~</html>まで) $HTML_TAG = " <html><head><title>$TITLE</title></head> <body> <form method=post action=$TM_CGI> <input type=hidden name=M value=S> <input type=hidden name=U value=N> □掲示板<HR> □登録ユーザー<BR> □ユーザー名<BR> <input name=NAME size=8><BR> □パスワード<BR> <input name=PASS size=8 istyle=4><BR> <input type=submit value=入室> </form><HR> □<a href=$IMG_CGI>画像設定</a><BR> □<a href=$R_CGI?M=PC1>パスワード確認</a><BR> □<a href=$R_CGI?M=SD1>仮登録キャンセル</a><BR> □<a href=$R_CGI?M=PT1>ポイント追加申\請</a><BR> □<a href=http://www.hotspeed.jp>ホームへ</a><BR> </body> </html> \n"; ############################### #ここから下は変更しないでください ############################### #▼時刻取得(時間毎でユニークなID作成) ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time); $wday = ('日','月','火','水','木','金','土')[$wday]; $DATE1 = sprintf("%02d/%02d(%s)%02d:%02d",$mon +1,$mday,$wday,$hour,$min); $DATE2 = sprintf("%02d%02d%02d%02d%02d%02d",$year-100,$mon+1,$mday,$hour,$min,$sec); $DATE3 = sprintf("%02d%02d%02d",$year-100,$mon+1,$mday); $LOGFILE="$LOG$DATE3.txt"; $HOST = $ENV{'REMOTE_HOST'}; $ADDR = $ENV{'REMOTE_ADDR'}; $UA = $ENV{'HTTP_USER_AGENT'}; if ($HOST eq '') { $HOST = $ADDR; } if ($HOST eq $ADDR) { $HOST = gethostbyaddr(pack('C4',split(/\./,$HOST)),2) || $ADDR; } ($d,$d,$AGEN,$d) = split(/\//,$UA); if ($AGEN eq "") { $AGEN="Other";} &lock; if (!open(OUT,">>$LOGFILE")) { &error('error'); } print OUT "$DATE1,$HOST,$ADDR,$UA,$AGEN\n"; close(OUT); if (!open(IN,"$CNT")) { &error('error'); } $CT = <IN>; close(IN); $CT++; if (!open(OUT,">$CNT")) { &error('error'); } print OUT $CT; close(OUT); unlink($LOC); print "Content-type: text/html\n\n"; print $HTML_TAG; exit; #▼ロックファイル sub lock { $symlink_check = (eval { symlink("",""); }, $@ eq ""); if (!$symlink_check) { $c = 0; while(-f "$LOC") { $c++; if ($c >= 3) { &error("error"); } sleep(2); } open(LOCK,">$LOC"); close(LOCK); } else { local($retry) = 3; while (!symlink(".", $LOC)) { if (--$retry <= 0) { &error("error"); } sleep(2); } } } sub error { if (-e "$LOC") { unlink($LOC); } print "Content-type: text/html\n\n"; print "<html><head><title>$TITLE</title></head>\n"; print "<body>\n"; print "■エラー<hr>\n"; print "$_[0]\n"; print "</body></html>\n"; exit; }

関連するQ&A

  • CGIのエラー

    やっとIISにPerlを組み込むことができたのですがエラーが出て先に進めません cgiを実行すると CGI Error The specified CGI application misbehaved by not returning a complete set of HTTP headers. と表示されます 何が何だかさっぱりわかりません ご指導願います

  • CGIエラー

    CGI Error The specified CGI application misbehaved by not returning a complete set of HTTP headers. というエラー表示がデスクトップに出てきたまま消えなくなりました。再起動してもだめです。 グループウェアの掲示板に貼り付けてあったWebページを見ようとしたところ、開けなかったうえこういったエラーが出てしまいました。 どなたかお願いします。

    • ベストアンサー
    • CGI
  • CGI ErrorでCGIが動かない。。

    Windows2000上で、IISでCGIを動かそうとしているのですが、 「CGI Error The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are: 」 (are:の以下には何も無い) とブラウザに表示されて動きません。何が考えられますか? 実行権限も与えているし、ファイル名を間違ってもいないのですが・・・

    • 締切済み
    • CGI
  • たびたび表示される”CGI Error”

    フリーのCGIや、PHPをレンタルサーバで動かしているんですが、 以前は問題なかったのに、最近下記のエラーメッセージが頻繁に出る用になりました。 --------------------- CGI Error The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are: --------------------- しかも、再読み込みをしなおせば、CGIもPHPも動作しています。 これはプログラム側の問題でしょうか? それともサーバ側の問題でしょうか? ご存知の方、教えてください~~。

    • 締切済み
    • CGI
  • CGIエラー

    アクセス解析のCGIを設置しようとしてるのですが、動作確認の際に、以下のエラーが出ます。 The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are: Can't locate config.pl in @INC (@INC contains: C:/Perl/lib C:/Perl/site/lib .) at C:\daishin_www\cgi-bin\access\accview.cgi line 83. CGIを設置するのはこれが初めてなので、このエラー文が何を言いたいのか、どこを直せば動くようになるのか、ぜんぜんわからずに困っています。 どなたか教えて頂けませんか? サーバーは自社サーバーでWindowsです。

    • ベストアンサー
    • CGI
  • PHPの動作確認の際にエラー表示されます。

    PHPの動作確認の際にエラー表示されます。 OS XP PHP ver5.2.0 上記環境でサイトを作成しているのですが下記エラーメッセージが表示されてしまい どこを見たらいいのか分からない状態です。 The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are 上記メッセージのみ表示されています。 他のサイトを見ると何行目がおかしいか表示されているみたいなのですが・・・ どこを直したらいいのか教えていただけますでしょうか。

    • 締切済み
    • PHP
  • Windows2003サーバーでのexeのCGI

    Windows2003サーバー(正確にはSmallBusinessServer)のIISにて、C++で作成されて、exeになったCGIを動作させると、「CGI Error The specified CGI application misbehaved by not returning a complete set of HTTP headers」 というエラーが発生し、なにをどう設定しても直りませんでした。 当のexeファイルは、Windows2000ServerやXPのIISでは正常に動作しております。 多分アクセス権や、実行許可などの設定の問題と思い、いろいろとやってみたのですが、うまくいきませんでした。 やり方をご存じの方は、なにとぞご教授お願いします。

  • WindowsサーバーでのCGI設置について

    Windowserver上にCGIを設置しようとしています(某レンタル領域サービスにて) windowsserverにCGIを設置するのは初めてで パーミッションを設定しなくていいとか、全てのパスは一番上から書くとか、初めて知りました。 ですが、どうしてもCGIが正しく動かないのです。 サポートは同じことの繰り返しのみで (パスが間違っているのでは?とか・・・) あまり解決にはなりません。 CGIの書き込み画面などは表示されるのですが いざ書き込むとエラーになってしまいます。 どのCGIスクリプトを使用しても同じなので 何かWindowsサーバー用の設定や書き換えが 必要なのかと思いました。 ちなみにエラーメッセージは CGI Error The specified CGI application misbehaved by not returning a complete set of HTTP headers. です。 よろしくお願いします。

  • windows2003でcgiを動作させるには

    社内イントラネットを開設しようと思っています。 windows2003サーバにIISをインストール後、Perlをインストールしました。 が、htmlは見る事が出来るのですが、cgiが開けません。 cgiを開くと、エラーメッセージが出てきます CGI Error The specified CGI application misbehaved by not returning a complete set of HTTP headers どのようにすれば、cgiが動作するのか、ご教授願います。 cgi・plファイルのマッピングから、IISの拡張機能での「許可」の設定もしてみましたが、できません。 *active perlをインストールした際、plファイルについては、マッピングが自動的にできていませんでした。拡張機能にもperl関係のものがなく、自分でネットを見て記入してみました。 ご教授、よろしくお願いします。

  • Movable Type サムネイル作成でのエラー

    Movable Typeでファイルをアップロードし、サムネイルを作成にチェックを入れて、ポップアップ、埋め込みを選ぶと、以下のようなCGI errorが出ます。 The specified CGI application misbehaved by not returning a complete set of HTTP headers. 原因はImage Magickにあるのでしょうか。Movable Typeにあるのでしょうか。 サムネイルを作成にチェックを入れなかった場合はうまく動作します。 また、全てのファイルでエラーが出るわけではなく、一部のファイルでエラーがでます。200KBでうまくいくファイルもあれば、140KBでエラーが出るファイルもあるので、ファイルの大きさは関係ないと思うのですが。。。 よろしくお願いします。

専門家に質問してみよう