動的ページ(どうてきページ、Dynamic Page)とは、アクセスするたびに、または利用者ごとに表示内容が変わるWebページのことです。あらかじめ用意された固定の内容をそのまま返す「静的ページ」とは異なり、サーバー側でその都度内容を組み立ててから返します。
現実世界に例えると、動的ページは注文を受けてから作る料理のようなものです。あらかじめ盛り付けておく前菜(静的ページ)とは違い、お客さんの好みを聞いてから調理して出すため、頼むたびに中身が変わります。
動的ページの仕組み
利用者がページへアクセスすると、Webサーバーはプログラムを実行し、データベースの中身や入力された条件をもとにHTMLをその場で組み立ててから返します。同じURLでも、いつ・誰がアクセスしたかによって表示される内容が変わるのはこのためです。
サーバー側で作る方法
動的ページを作る方法はいくつかありますが、代表的なのがPHPやRuby、Pythonなどのプログラム言語をサーバー上で動かす方式です。古くはCGIという仕組みが使われ、現在はより効率のよい仕組みへと置き換わっています。データベースへ問い合わせた結果をもとに、HTMLを一から組み立てて返すのが基本の流れです。
ブラウザ側で作る方法
近年は、サーバーからは最低限のデータだけを受け取り、ブラウザ側で動くJavaScriptが画面を書き換える方式も広く使われています。ページ全体を再読み込みせずに一部だけ更新できるため、SNSのタイムラインやチャット画面など、テンポの良さが求められる場面で好まれています。
静的ページとの違い
| 項目 | 静的ページ | 動的ページ |
|---|---|---|
| 表示内容 | 誰が見ても同じ | 状況に応じて変わる |
| 作り方 | あらかじめHTMLを用意 | サーバーがその場で生成 |
| 代表例 | 会社案内ページ | 検索結果、SNSのタイムライン |
動的ページのメリット
最大の利点は、利用者ごとに最適化された情報を届けられることです。ログイン後のマイページやショッピングサイトのおすすめ商品欄など、一人ひとりに合わせた表示は動的ページでしか実現できません。在庫や価格が変わる情報も、リアルタイムに反映できます。
動的ページの注意点
その場で組み立てる分、静的ページに比べて表示に時間がかかりやすく、サーバーへの負荷も高くなりがちです。アクセスが集中すると表示が遅くなったり、サーバーが処理しきれなくなったりすることもあるため、キャッシュを併用するなどの対策が取られます。
SEOへの影響
検索エンジンにも配慮が必要です。組み立てに時間がかかるページは検索エンジンのクロールが遅れたり、内容を正しく読み取ってもらえなかったりすることがあります。表示速度を上げる工夫や、重要な内容は早めに返す設計が、検索順位にも影響してきます。
よく使われる場面
掲示板やSNS、ECサイトの商品ページ、検索結果画面、ログインが必要な会員サイトなど、内容が利用者や状況によって変わるあらゆる場所で動的ページが使われています。今日見ているWebサービスのほとんどは、何らかの形で動的ページの仕組みを使っていると言っても過言ではありません。

コメント