多くのWebサイトでは、PHP / Ruby / Python / PerlなどのサーバーサイドスクリプトとMySQLなどのサーバサイドスクリプトデータベースを連携してHTMLを生成しています。
例えばPHPとMySQLを使ったサイトの場合、ブラウザでWebページを閲覧するまでに下記のようなフローをたどることになります。
—
①ユーザーがブラウザーからURLを通じてWebサーバにアクセス。
②サーバーでPHPを実行。
③PHPからMySQLにクリエ―を発行
④MySQLがPHPにクリエ―に応じたデータを返す
⑤データとPHPスクリプトを組み合わせてHTMLを生成し、ユーザーにレスポンスとして返す。
⑥HTMLからハイパーリンクが貼られたCSS / JS / 画像などのリソースをブラウザがリクエスト。
⑦リクエストに応じたリソースファイルをサーバがユーザーにレスポンスとして返す。
⑧ブラウザでWebページ表示される。
—
ブラウザーにURLを打ち込んでページを見るまでにこれだけの処理が行われています。もちろん、ブラウザにはキャッシュ機能が内蔵されているので、一度行った処理を省略することもできる。