$2 ページの表示

2-1 世界一簡単なCGI

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

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

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

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

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

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

ここまでだとPerlとほとんど同じです(実際に文章をコピーしてます・・)。 Pythonの場合は、文末に「;」を付けなくていいです。


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

Previous: 1-1 Pythonって何?

Contents


Foundation of CGI Page

春風はるか haruka@harukaze.net