昔から言語を勉強するときに最初に学ぶことは, 画面に「Hello, world」と出力するプログラムを作ることです。 日本語なら「こんにちは!」と出力すればいいでしょう。 Perl なら次のようになります。
#! /usr/bin/perl print "こんにちは!\n";
これを hello.pl というファイル名で作ります。
次に,このプログラムに実行許可を与えます。
chmod 755 hello.pl
hello.pl を実行するには次のように打ち込みます。
./hello.pl
画面に「こんにちは!」と表示されることを確認して下さい。
これはまだ CGI ではありません。 これを CGI にするには,次のように直します。
#! /usr/bin/perl print "Content-type: text/html\n\n"; print "こんにちは!\n";
念のためこれも実行してみましょう。
./hello.pl
うまくいったなら,これをサーバに送り,ブラウザで動作を確認しましょう。
★サーバによっては hello.cgi という名前にしないと後で CGI として実行できないことがあります。 また,プロバイダによっては CGI を禁止しているところがあります。 松阪大学のサーバでは現在 CGI を許可しています。
Windows の場合は FFFTP などの FTP ソフトでサーバに送ります。 このとき,テキストモード(アスキーモード)で送る必要があります。 バイナリモードで送るとうまくいきません。
その理由をちょっと説明しておきます。 パソコンの行末は CR LF ですが Unix の行末は LF だけです。 このため,パソコンで頭に #! /usr/bin/perl と書いたつもりでも Unix からは #! /usr/bin/perlCR と見えてしまい, /usr/bin/perlCR というコマンドはないというエラーになってしまうわけです。
print "Content-type: text/html\n\n"; を次のどちらかにしてみましょう。
print "Content-type: text/html; charset=SHIFT_JIS\n\n"; print "Content-type: text/html; charset=EUC-JP\n\n";
前者はシフトJIS(Windows で作った場合),後者はEUC(Linux で作った場合)です。
Last modified: 2004-12-24 12:50:56