Webサイトのフォームや、動きのあるページを作るために、Perlを使った簡単なCGIプログラミングを覚えましょう。最後には「美人時計」ならぬ「美描時計」を作ってみます。
動きのあるページは、現在だと JavaScript でもかなり色々な事ができますが、JavaScript はユーザのブラウザによっては期待通り動作しない場合もありますので、サーバ側で確実にコントロールできる CGI プログラミングも覚えておくと便利です。
CGIプログラミングのための準備
まず、CGIプログラミングのための準備として、Perlの他に開発テスト用のWebサーバをインストールして下さい。このページでは、Webサーバの準備が済んでいるものとして話を進めます。
CGIプログラミングと通常のプログラミングの違い
CGIプログラミングと今まで練習してきた通常のPerlプログラミングの違いは、以下の3点です。
- CGIプログラミングの場合は、ファイル内に「Perlのパス」を書く
- CGIプログラミングの場合は、表示したい内容の前に「HTTPヘッダ」も出力する
- CGIプログラミングの場合は、ファイルに実行パーミッションを付ける(Unix系OSとMacの場合)
では、簡単なサンプルを見ながら、これらの点を確認していきましょう。
Windows環境でテストを行っている方は、以下の内容を以下の内容を C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\test.cgi として保存して下さい。
Mac環境の方向けのサンプルコードは後で掲載しますが、ひとまず解説もしてしまいますので飛ばさず読み進めて下さい。
Windows環境でのテストプログラム
#!C:\strawberry\perl\bin\perl.exe -- use utf8; binmode STDOUT, ':encoding(utf8)'; #Windows でもutf8 print "Content-Type:text/plain;charset=utf-8\r\n"; print "\r\n"; print "こんにちは";
Windows環境の方はブラウザから http://127.0.0.1/test.cgi にアクセスすると「こんにちは」と表示されるはずです。
>次は: CGIプログラミングのポイント1:「Perlのパス」を書く