投稿日:2006年6月20日 レベル:初級 ソフトウェア:−
HTMLについて再び学びたかったら、The Web Developer’s Resource Library のHTML Primerなどはとてもよいと思います。しかし、基本的にHTML(Hyper Text Markup Language)はテキストやイメージをブラウザを通して、どのようにディスプレイに表示するかを決定する方法です。HTMLはページのレイアウトを”HTMLタグ”と呼ばれる、説明をつかって体系化するのです。ウェブブラウザはその、見にくいHTMLタグの羅列を、美しいウェブページに翻訳しているわけです。
この小さなアイコンのことを”ファビコン”と呼んでいて、Explore 5以上のバージョンで有効となります。それより古いバージョンを使用している場合は、ファビコンは無視されるだけです。

まず、少しの説明が必要なる用語を挙げておきます。
このコラムでは、”クライアント”という言葉を、HTMLをウェブページとして表示するために、Netscape Navigator、Internet Exploreのようなウェブブラウザを使う人という意味で使っています。
ウェブサーバーはハードウェア(全てのHTMLファイルを格納する実際のコンピュータ)とソフトウェア(ウェブブラウザからの要求をハードウェアにアクセスして実現するプログラム)によって構成されます。
ウェブブラウザとウェブサーバーは、効率良く、わかりやすい標準通信形式であるHTTP(Hyper Text Transfer Protocol)を使用して通信します。本質的には、HTTPはウェブブラウザを、ウェブ上にあるウェブサーバーに接続し、必要なドキュメントを引き出します。サーバーがブラウザに情報を送り返すことも同じことです。
CGIがおこなえることの多くは、SSI (Server Side Include)によってもおこなえます。SSIはHTML文書に、あるコマンドを実行するウェブサーバーソフトウェアによる技術です。ここではSSIについて十分な説明はできませんが、このチュートリアルで話す程度の範囲では、CGIと同じ働きをすると考えてよいでしょう。
あなたがソフトウェアを購入すれば、それが”Macバージョン”や”Windowsバージョン”であると思います。これは、すなわち”プラットフォーム依存”ということになり、WindowsからMacにPCを代えれば全く動作してくれません。ウェブプログラムの素晴らしさは、一般的に”プラットフォーム独立”であるということです。あなたのPCがMacであろうがUnixであろうがプログラムは正常に動作します。
CGIはサーバーサイドスクリプトとして有効なだけではありません。例えば、NetscapeのLive Wireはオンラインのウェブサイトマネージメント、クライアントサーバー開発環境を提供しています。これはCGIプログラムに似たサーバーベースアプリケーションを開発するためにJavascript、Netscapeのスクリプト言語を使用します。
CGIをユニークで独立した一般的なスクリプトとしてのインスタンスと考えることができます。これを”インスタンス”と呼ぶわけは、ウェブサーファー、全員が同時にCGIスクリプトを実行することができるのです。それぞれのウェブサーファーはおなじ一般的なCGIスクリプトを使用するにもかかわらず、各々のスクリプトのインスタンスがウェブサーファーに対して、個人化されているのです。つまり、あなたは全く同じ、10個のスクリプトのインスタンスを同時にウェブサーバーのハードウェア上で走らせているかもしれないのです。
隠された変数によって、HTMLの”Hidden”タグの使用を可能にします。これはウェブブラウザ上では、HTMLのソースに現れない記述を加えることができます。ユーザーはブラウザ上で記述を見れませんが、CGIスクリプトにはユーザー供給データとともに転送されます。タグは下記のようなものです。
<INPUT TYPE = "HIDDEN" NAME = "first_name" VALUE = "selena">
<INPUT TYPE = "HIDDEN" NAME = "last_name" VALUE = "sol">
CGIスクリプトがHTMLフォームに入力された情報を処理するとき、変数”first_name”の値である、”selena”と”last_name”の”sol”を受け取ることになります。
ユーザーがサイトをナビゲートするためにFORMタグを使用しなかったとき、URLエンコードのためのHTTP標準を使用して、管理者はURL内の情報をエンコードできるのです。例えば、下のようなハイパーリンクが上記と同じ情報をCGIスクリプトに送るとします。
<a href="www.extropia.com/test.cgi?first_name=selena&last_name=sol">click here</a>
変数が受け渡され、クエスチョンマークの後に、name/valueのペアが別々にアンパサンドマークを挟んでリストされているのがわかります。また、変数名、変数値はイコールによって分けられています。
最後に、CGIスクリプトはサーバー上で情報を書き出し、ファイルの場所を前に説明したような方法で通過します。これは記述された大量の情報があるときに最適といえるでしょう。
ところで、記述を保存することはNetscape Cookiesでおこなえますが、ここでは触れていません。それを説明すると、長くなるので、別の回ですることにします。
引用:Web Design Library著者:Selena Sol翻訳:atuk