Building Network and Services
(=>本節は次回にまわします)
(補足資料 も読んでおいて下さい)
WebサーバソフトウェアとしてApache, Nginx などが広く使われているが、 これらのサーバに拡張機能として導入された、サーバ上でプログラムを動作させ 技術(サーバーサイドプログラミング)が加わった。
その結果、Webで提示されるコンテンツは、ファイルとして用意されたもの (静的コンテンツ)から、リクエストの都度プログラムが動作して生成される コンテンツ(動的コンテンツ)に幅が広がった。
さらに、HTML とともにサーバから送られる JavaScript(など)のプログラムコード をブラウザ内で実行するメカニズムも加わり、
またクライアントサイドプログラムの中で(ページ遷移を伴わずに)サーバ側と通信を行う機構(Ajaxと呼ばれる)も使われるようになり
(という状況を前提としつつ、まずは今回は当初の単純なWebのしくみに基づいて サーバの動作を理解するための作業を行ってみたい)
=> CGIについては次回にまわします
やや柔軟性のあるWebサーバ
=>ここは次回
Webサーバソフトウェアが動作するコンピュータでは、右図のように DocumentRootが設定され、OSが管轄するファイルシステム(つまり コンピュータがデータとして保持している木構造全体)のうちの一部 (DocumentRootより下のサブツリー領域)だけが クライアントからの要求に応じて提供される、という原理を理解されたい。