CGI-BBS > CGI > Perl > Perlについて自作CGI動作不良を直したい。


カレッヂ
カレッヂ


質問者 小野塚貴弘  投稿日 10/18(土) 17:50:43
下記のようにCGIを作ってみました。設置してみたところ、サーバーエラーになってしまいます。
どこが悪いのか分かりません。もし、詳しい方で教えていただけると幸いです。よろしくお願いします。



#!/usr/bin/perl

# -----------レイアウトの設定-----------

#■文字の色の設定
$text_c = '#000099';

#■背景色の設定
$bg_C = '#FFFF88';


# -----------戻り先URLの設定-----------
# 戻り先の指定はフルパスで!!
# (例)http://www.zyforce-inc.com/index.html

#■i-modeの戻り先
$back_i = 'http://www.zyforce-inc.com/index.html';

#■J-skyの戻り先
$back_j = 'http://www.zyforce-inc.com/index.html';

#↑↑↑↑↑↑↑↑設定はココまで↑↑↑↑↑↑↑↑

#----------------#
#  ブラウザ判別  #
#----------------#
$HTTP_USER_AGENT = $ENV{'HTTP_USER_AGENT'};
if ($HTTP_USER_AGENT =~ /DoCoMo/i)
  { &imode; }      #imode用
elsif ($HTTP_USER_AGENT =~ /J-PHONE/i)
  { &jsky; }     #jphone用
else
  { &pc; }      #パソコン用

exit;

#----------------#
#  i-mode表示部  #
#----------------#

sub imode{ 
print "Content-type: text/html\n";
print "<html>\n";
print "<head>\n";
print "<title>TEST</title>\n";
print "</head>\n";
print "<BODY bgcolor=\"$bg_C\" text=\"$text_c\">\n";
print "<center>\n";
print "iモードからアクセスしました。<BR>\n";
print "<CENTER><A HREF=\"$back_i\">戻る</A></CENTER>\n";
print "</body></HTML>\n";
}

#----------------#
#  j-sky表示部   #
#----------------#

sub jsky{ 
print "Content-type: text/html\n";
print "<html>\n";
print "<head>\n";
print "<title>TEST</title>\n";
print "</head>\n";
print "<BODY bgcolor=\"$bg_C\" text=\"$text_c\">\n";
print "<center>\n";
print "JSKYからアクセスしました。<BR>\n";
print "<CENTER><A HREF=\"$back_j\">戻る</A></CENTER>\n";
print "</body></HTML>\n";
}

#----------------#
#  PC表示部     #
#----------------#

sub pc{ 
print "Content-type: text/html\n";
print "<html>\n";
print "<head>\n";
print "<title>TEST</title>\n";
print "</head>\n";
print "<BODY bgcolor=\"$bg_C\" text=\"$text_c\">\n";
print "PCからアクセスしました。<BR>\n";
print "</body></HTML>\n";
}

プロバイダ参照:http://www.zyforce-inc.com/
サーバのOS:UNIXサーバ
パソコンのOS:WinNT系
エディタ:メモ帳
FTPソフト:NextFTP
サーバ移転:していない
改造:している 改造前不動
CGI習熟度:beginner

回答者 m7  [削除]  投稿日 10/18(土) 19:10:29
print "Content-type: text/html\n";
↓
print "Content-type: text/html\n\n";

空行が必要です。

このページは終了したので返信(回答)は書きこめません
 


Web裏技