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 (エックスサーバー)

SSIの利用について教えてください(ロリポップ)

SSIとCGIの違い

SSIと似た仕組みにCGIがあります。 SSIとCGIはどちらも動的なWebページを作成できる仕組みと言う点では同じです。 ですがその実現方法が異なります。 CGIの場合は「Perl」などのプログラミング言語で作成した外部プログラムを 呼び出して実行します。
SSIの場合はWebサーバー自身がHTMLコードの中に記述されたSSIコマンドを 実行します。
このように外部のプログラムを実行するか、 Webサーバー自身が実行するかという違いがあります。

関連記事

IT基礎知識