ssi

SSIとは

HTMLファイルに埋め込めるプログラム。
もう少し小難しく書くと

HTMLファイルに特定の書式で処理を記述することで、サーバ側でその処理を実施してからクライアント側に応答を返す技術のこと
です。 image piyo

 詳しく書くよ

一言で言ってしまえば「HTMLファイルプログラムを埋め込む技術」が「SSI」です。
Server Side Include(サーバ・サイド・インクルード)」の略でSSIね。

元々HTMLファイルの中身は、ただ目印を付けただけの文章です。プログラムとか一切関係ありません。
普通のホームページは、サーバにおいてあるHTMLファイルを見る人のコンピュータに送り、見る人のコンピュータの中にあるWebブラウザさんが見た目を整えて画面に表示してくれます。

SSI

ただそれだけです。

しかし時代の進歩と共に「ただ元から書いてある内容を表示するだけじゃなくて、いろいろやりたいよね」という欲求が大きくなりました。
そこで生まれた……かどうかは知りませんが、HTMLファイルでちょっとしたプログラムっぽいことをやるために出てきた技術が「SSI(エスエスアイ)」です。
SSIはHTMLファイルの中に書かれていて、サーバさんはその処理を実行してから見る人のコンピュータにHTMLファイルを送ってくれます。

SSI2

実際のSSIは例えば以下のように書きます。

<html>
<head></head>
<body>
「hoge.html」は<!–#flastmod file=”hoge.html” –>に更新しました。
</body>
</html>

「<!–#flastmod file=”hoge.html” –>」の部分がSSIです。
この例では「hoge.html」ファイルの最終更新日時を表示してくれます。

JavaScriptみたいなもの?」と思う人がいるかもしれませんが、似て非なるものです。
JavaScriptが見る人のコンピュータ上であれこれ動くのに対し、SSIはサーバ上で動きます。
JavaScriptが、

J-1.サーバから見る人にファイルが送られる

SSI3

J-2.Webブラウザさんが中身を解析してJavaScriptを動かす

SSI4

流れになるのに対し、SSIは

S-1.Webサーバさんが中身を解析してSSIを動かす

SSI5

S-2.サーバから見る人にファイルが送られる

SSI6

の流れになります。
SSIは、どちらかと言えばPHPさんとかPerlさんのお仲間ですね。

SSIを使うためには、サーバ側で設定しなくてはいけません。
またHTMLファイルにSSIを埋め込むことによって、ページの表示が遅くなったりします。余計なお仕事が増えますからね。
さらに、悪い人によってSSIのコードを埋め込まれて変なことをされてしまうリスクもあります。
※変なことの詳細は用語「クロスサイトスクリプティング」の解説をご覧ください。
さらにさらに、わざわざSSIを使わなくてもPHPとかで似たようなことはできてしまいます。
そのため、現在ではあまり使われていない技術だと思います。

image piyo2

 一言でまとめるよ

まぁ「SSI」って単語が出てきたら「HTMLファイルにプログラムを埋め込む技術なんだな~」と、お考えください。

一番上に戻るよ

スポンサーリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です