SSI(Server Side Include)
SSIとは
WebページのHTMLコードの中に埋め込まれたコマンドを実行する機能の事です。
外部のプログラムではなくWebサーバーによって実行され、
記述したコマンドにもとに動的なWebページを作成できます。
SSIはプログラムのような難しい技術を必要とせず、
数種類のコマンドを使うだけで実行できます。
SSIが最も使われるのは、 ヘッダーやフッターなどのWebサイトに共通している内容を別ファイルに記述し、 そのファイルを読み込む場合です。 「include」コマンドと呼ばれ、 HTMLファイル中に次のようにinclude命令を記述します。
<!--#include file="header.html" -->
他にはクライアントやサーバーの環境変数を取得・挿入できる「echo」コマンドや、 条件分岐ができる「if」コマンド、 指定したプログラムやコマンドが実行できる「exec」コマンドなどがあります。
利用にあたって
SSIを使用する場合、各レンタルサーバによって条件が異なります。
SSIを利用するファイルの拡張子を「.shtml」や「.shtm」にする必要が
あったり、一部の機能が制限されたりします。
詳細はご利用中のレンタルサーバーのサイトで確認してください。
エックスサーバーとロリポップのSSIに関する記事のリンクを貼っておきます。
SSIとCGIの違い
SSIと似た仕組みにCGIがあります。
SSIとCGIはどちらも動的なWebページを作成できる仕組みと言う点では同じです。
ですがその実現方法が異なります。
CGIの場合は「Perl」などのプログラミング言語で作成した外部プログラムを
呼び出して実行します。
SSIの場合はWebサーバー自身がHTMLコードの中に記述されたSSIコマンドを
実行します。
このように外部のプログラムを実行するか、
Webサーバー自身が実行するかという違いがあります。