$2 ページの表示

2-1 世界一簡単なCGI

単に、「Hello!」という文字を表示するだけのCGIです。

注意:これからの例で、行の先頭の「1: 」とかの部分は、実際のPerlプログラムには書きません。 説明しやすくするためのものです。

  1: #! /usr/local/bin/ruby
  2: print "Content-type: text/html\n\n"
  3: print "Hello!"

1行目は、これから下に書いてあるプログラムは Rubyプログラムである、という意味です。 これがないとただのテキストファイルで、サーバーが内容をどう解釈していいのかわからなくなります。 具体的には、そのサーバーの中の、真の Rubyプログラム (テキストで書かれたプログラムを解釈して実行してくれる、「インタプリタ」と呼ばれる)の場所を書きます。 したがって、サーバーによって違うことがあります。

2行目は、このあと print 文で書かれることはHTMLファイルである、という意味です。 普通のページでは、ファイルの拡張子「.html」などで HTMLファイルか判断しますが、 CGIで作られるものは、そのままでは何かわからないのです。 そこで、この行を書くことでHTMLファイルであるということを宣言します。
(CGIでは、いろいろなデータを作りだせるので、例えばJPEGファイルを作る場合は、 Content-type: image/jpeg\n\n となります)

3行目は、実際にページに表示する内容、正確には「HTML文」ということになります。 ふつうのHTMLファイルに書くことを、print " " の クォート(「"」のこと)の中に書きます。 ただし、直接使えない文字もあるので(たとえばクォート文字)、注意は必要です。 そして、この「HTML文」として書かれるところを、プログラムで置き換えることによって、 ページの表示をいろいろ作りだすわけです。

ここまでだと、Perlとほとんど同じです。 Rubyの場合は、文末に「;」を付けなくていいです。


Next: 2-2 時間を使った表示

Previous: 1-1 Rubyって何?

Contents


Foundation of CGI Page

春風はるか haruka@harukaze.net