Webサイト(ホームページ)は、静的なものと動的なものが存在します。
ここでいう静的・動的というのは、文字や画像にアニメーション効果が付いているということではありません。ユーザーからのリクエスト(このページを見せて、という要求)に対し、既存のHTMLデータを返すのが静的なWebサイトです。一方で、リクエストを受けてからHTMLのデータを生成し、返すのが動的なWebサイトとなります。

静的なWebサイト

  1. ブラウザからURLを通じて、「このページを見せて」というリクエストが、サーバーに送られます。
    以下の図ではURLが「myshop.net/item3.html」となっているので「item3.html」をリクエストしていることになります。
  2. サーバーは、このリクエストに該当する「item3.html」を探し、そのデータをブラウザに返します(これをレスポンスと言います)。
    ブラウザは、サーバーから返ってきたHTMLのデータを解釈(レンダリング)して、表示させます。

動的なWebサイト

  1. ブラウザからURLを通じて、サーバーに対してリクエストが送られます。
    以下の例では「myshop.net/item/3」というURLになっています。
  2. サーバーでは、このURLから「3」番の商品をリクエストしていると判断し、データベースに対し3番の商品データを要求します。
  3. この要求に対し、データベースは3番の商品データを返します。
  4. 商品データをもとにHTMLのデータを生成します。
  5. 生成したHTMLデータをブラウザに返します。

このように、動的なWebサイトでは、ページの要求があってからHTMLを生成します。上図のように、データベースと連携してHTMLを生成するためプログラミング言語としては、PHP・Ruby・Javaなどが存在します。

それぞれのメリット・デメリット

静的なWebサイトでは、リクエストに応じて既存のHTMLデータを返すので、必然的にHTMLファイルの数が増えます。例えば、1000の商品を扱うショッピングサイトであれば、1000個のHTMLファイルを作成する必要が生じます。
一方で、動的なWebサイトでは、1つのテンプレートファイル(HTMLの元になるファイル)を用意しておくだけで、1000個の商品に対応することができます。

しかしながら、動的なWebサイトにもデメリットは存在します。それはリクエストを受けてから、HTMLを生成するので、静的Webサイトに比べ、レスポンスが遅くなってしまうという点です。
WordPressやWixで作られたWebサイトは、表示に時間がかかってしまうことがありますが、これらは内部的にPHPなどを利用している動的なWebサイトだからです。

Icons : www.flaticon.com

Last modified: 2021-06-13

Author