logo
 
cpacer

6.2 SSI

Webページにおかれているアクセスカウンタや訪問者リストなどは, SSI (Server Side Includes) の機能を利用して作成できます. ここではSSIの概念や記述の方法を説明し,利用例を紹介します.これらの機能の詳細は,市販のマニュアル などを参照してください.

6.2.1 SSIの機能

SSIとはHTML文書中にコメントを挿入することにより, サーバ側がその中身を解釈してコメントの場所を, 実行コマンドの結果や他ファイルに置き替えてくれる機能です.

通常,Webブラウザからページの送信要求を受けると,WWWサーバはページをそのまま Webブラウザに送信します.しかし,拡張子が`.shtml'であるファイルの送 信を要求された場合,ファイル中に次のようなコメントを挿入することにより, サーバ側がコメントの場所に実行コマンドの 結果などに置き替えてWebブラウザに向けて 送信します(図[*]).

図: SSIの機能

6.2.2 SSIの書式と実行例

ページの中にSSIの記述をするには,次の書式を用います.

<!--#COMMAND TAG1="VALUE1" TAG2="VALUE2" [.....]-->

COMMANDには次のものが指定できます.


図: configコマンドの例
<!--#config errmsg="エラーメッセージ"-->
SSIでエラーが発生した場合、ここで設定したメッセージが出力される。
<!--#config timefmt="%y/%m/%d/%H:%M"-->
#echoや#flastmodで日時を表示する際の形式指定。


図: echoコマンドの例
このファイルの名前は<!--#echo var="DOCUMENT_NAME" -->です.
現在時刻は<!--#echo var="DATE_LOCAL" -->です.


図: includeコマンドの例
来訪者リスト
<!--#include VIRTUAL="list.txt" -->


図: flastmodコマンドの例
このページは <p>
<!--#flastmod VIRTUAL="list.html" -->に更新されました.
link.htmlは<p>
<!--#flastmod VIRTUAL="/~t02000tf/link.html" -->
に更新されました.


図: execコマンドの例
現在時刻は<!--#exec cmd="date" --で>す<br>
あなたは<!--#exec cgi="counter.cgi" -->人目のお客様です.

SSIを利用するページのファイル名の拡張子(\pageref{file})は `{\ttfamily .shtml}'にしてください.