ここでは,SSI (Server Side Include)やCGI (Common Gateway Interface),
Form機能の概念や記述の方法を説明し,アクセスカウンタや訪問者リストなど
の利用例を紹介する.これらの機能の詳細は,市販のマニュアルやWWWで公開
されているマニュアルページ(http://www.sfc.kei
o.ac.jp/Manual/index.ja.html)などを参照してほしい.
通常,ページの送信要求を受けると,WWWサーバはページのコピーをそのまま 送信する.しかし,ページの中でも拡張子が``.shtml''のファイルの送 信を要求された場合,WWWサーバはそのページの中の一部に,現在時刻や他の ページの内容などを挿入してからブラウザに向けて送信する.このように,送 信直前にページに何らかの情報を挿入する機能をSSI (Server Side Include) と呼ぶ(図 →).
ページの中にSSIを記述するには,次の書式を用いる.
<!--#COMMAND TAG1="VALUE1" TAG2="VALUE2" -->
来訪者リスト<p> <!-#INCLUDE FILE="list.html" ->
現在の時刻は <!-#EXEC CMD="date" -> です.<br> <!-#EXEC CGI="counter.cgi" ->
通常,ブラウザからページの送信要求を受けると,WWWサーバはページのコピー をそのまま送信する.しかし,CGIを利用したファイル(拡張子が ``.cgi'' などのプログラム) の送信要求を受けた場合,WWWサーバは そのプログラムを実行することで何らかの処理を行い,その結果生成されるペー ジや画像などをブラウザに向けて送信する(図→). また,Form機能によりユーザから送られてきた情報を処理する場合にもCGIを 利用する.
このように,CGIとはWWWサーバとそのサーバで実行されるプログラムとの橋渡 しをするインタフェースである.実際の処理はサーバのプログラムが行い,そ の結果をWWWサーバを通じてブラウザに送信する.このWWWサーバで実行される プログラムをCGIプログラム と呼ぶ.CGIプログラムを記述する言 語(Perl,Cなど) はWWWサーバで実行できるものであれば何 でもよいが,文字列の処理に優れていて,WWWサーバが変わってもプログラム を変更せずにそのまま実行できるという理由から,ここではPerlによるCGIプ ログラムを説明する.
% pwd<RET> /home/t98000tf/public_html % chmod a+x sample.cgi<RET> % ls -l sample.cgi<RET> -rwxr-xr-x 1 t98000tf 4103 Jun 30 07:11 sample.cgi % _
ここでは,CGIプログラムの利用形式を紹介する.
<A HREF="sample.cgi">ここ</A>をクリックするとCGIプログラムの結果が表示 されます.
<IMG SRC="sample.cgi">
Form機能を利用すると,ユーザが入力した文字などの情報をWWWサーバにある CGIプログラムに送信できる.これにより,CGIプログラムはユーザからの情報 に応じたインタラクティブな処理ができる.この機能を利用したページを作成 するには,<FORM>タグ,<INPUT>タグなどを使用する.
<FORM ACTION="CGIプログラムのURL"> <INPUT....> </FORM>
<INPUT TYPE="入力フィールドの種類" NAME="変数名" SIZE="数値">
ここでは,SSIによりCGIプログラムを実行する例として,アクセスカウン タの作成方法を紹介する.アクセスカウンタとは,それが埋め込まれたページ がアクセスされた回数を数える機能である.
アクセスカウンタを作成する際に必要となる2つのファイルを次に示す.これ らはWWWサーバによりアクセスされるので,public_htmlディレクトリ の下に作成し,さらに,用途に応じて各ファイルの保護モードをchmod コマンド(→)を使って変更しなければならない.
以上のファイルを準備したら,public_htmlディレクトの下にアクセス カウンタを埋め込むページを作成し,次の1行を記述する.なお,このアク セスカウンタはSSIを利用しているので,これを埋め込むページのファイル名 の拡張子は``.shtml''でなければならない.
あなたは<!-#EXEC CGI="counter.cgi" ->人目です.
ここでは,Form機能によりユーザが入力した文字などの情報をWWWサーバのCGI プログラムに送信する例として,訪問者リストの作成方法を紹介する.これに より,ページを見たユーザは自分の名前や電子メールアドレスをページに登録 できる.
訪問者リストを作成する際に必要となるファイルを次に示す.これらはWWWサー バによりアクセスされるので,public_htmlディレクトリの下に作成し, さらに,用途に応じて各ファイルの保護モードをchmodコマンド (→)を使って変更しなければならない.
以上のファイルを準備したら,ブラウザにページ`input.html'を表示し, 入力部分(図→)に文字を入力してから [Registration]を押す.すると,入力した文字情報がWWWサーバに送信され, WWWサーバはCGIプログラム`register.cgi'を起動して文字情報を渡す. このCGIプログラムは文字情報をlist.htmlに書き込んだ上で,``Thank you. Click here!''という文章を含んだページを生成する.このページをWWW サーバがブラウザに対して送信する.
WWWサーバから送られてきたページの中の``Click here!''という文字列には list.htmlへのリンクが設定されているので,この文字をクリックする と登録した情報が表示される.