目的と背景
私たちが自分のスマホやPCから読みたい記事やサイトにアクセスできるのは、「WEBサーバ」が裏で稼働しているからなんです。「WEBサーバ」がなければ、この記事も今こうして読むことはできないのです(本当にありがとう!,WEBサーバ)。
私たちがインターネット上のサイトにアクセスするには不可欠だと言いましたが、「WEBサーバ」がこの時にどういった役割を担っているのか、どんな仕組みで動いてるのか、この記事で解説します。
この記事では「WEBサーバ」がどういったものか、概念説明に留めて次回以降の記事で実際に構築してみます。
WEBサーバとは?
「WEBサーバ」とはざっくり言うと、「WEBページを表示するためのサーバ」です。
例えば、ユーザがWEBサイトを閲覧したいときには、ブラウザにURLを入力したり、該当のサイトをクリックすることでそのWEBページが表示されます。
この時、そのユーザに対して「WEBページを表示する機能」を担うのが「WEBサーバ」です。フロントエンドの役割を担います。
皆さんが有難いことに私のブログを見て勉強しようと思い、ブラウザに「LoveLab | エンジニア」と入力して記事にアクセスするとブログのホーム画面が表示されます。これも「WEBサーバ」のおかげです。
以下はユーザがWEBページにアクセスするまでの概要図です。

① ユーザがブラウザのURLに「lovelabengineer.com」と入力する。
② ブラウザがOSを経由して「DNSサーバ」にFQDN「lovelabengineer.com」に紐づいた「IPアドレス」を問い合わせる。
③ 「DNSサーバ」がIPアドレスを返答する。
④ 該当の「WEBサーバ」にWEbコンテンツを要求する。
⑤ 「WEBサーバ」は該当のWEBコンテンツが動的サイトであった場合、「アプリケーションサーバ」と通信する。「アプリケーションサーバ」は「データベース」と通信する。
*静的サイトの場合、⑤をスキップして⑥へ
⑥ 「WEBサーバ」がWEBコンテンツをブラウザに表示する。
なおこの上記の通信プロトコルは「HTTP/HTTPS」が使われています。
WEBページの種類
WEBページ(WEBコンテンツ)と一概に言っても大きく分けると2種類あります。「静的サイト」「動的サイト」です。どちらのWEBページを表示するかによって「WEBサーバ」の裏側での挙動は異なります。
静的サイト
静的サイトは「どのユーザがアクセスしたとしても同様に表示するWEBコンテンツ」です。例えば、会社のホームページやこの技術ブログがそれに当たります。どんな人がアクセスしたとしても必ず同じWEBコンテンツを表示します。
この場合、誰がアクセスしても同じページを表示するので該当のWEBコンテンツを「WEBサーバ」に配置しておき、ユーザがそのコンテンツにアクセスしてきたら、「WEBサーバ」はそれを表示します。
動的サイト
動的サイトは「それぞれのユーザ毎に表示するWEBコンテンツ」です。例えば、AmazonのWEBページがこれに該当します。私とあなたとではログイン後に同じコンテンツが表示されずに、それぞれのユーザに合わせたWEBコンテンツが表示されます。
なぜこれが実現可能なのかというと、「WEBサーバ」の他に「アプリケーションサーバ」「データベース」が裏で動いているからです。この3つが連携することでそれぞれのユーザに合わせたWEBコンテンツが提供されるのです。
*この辺りは別の記事で詳しく解説します
ここでは、動的サイトを提供するには「WEBサーバ」の他に「アプリケーションサーバ」「データベース」が必要であることのみ覚えておいてください。(逆に静的サイトでは不要、「WEBサーバ」のみでOK)
代表的なWEBサーバソフトウェア
どうすれば「WEBサーバ」を構築できるのかというと、単にサーバにWEBサーバ用の「ソフトウェア」をインストールするだけです。これによりサーバは「WEBサーバ」となります。
代表的なWEBサーバソフトウェアを以下です。
Apache(アパッチ)
- 1995年リリースの歴史あるOSS(オープンソース)
- 安定性が非常に高い(20年以上の実績)
- モジュールが120種類以上あり拡張性が高い
- OS対応が広い(Linux / Windows / macOS など)
- 動的コンテンツ(PHPなど)に強い
✔ 強み
- 情報量が圧倒的に多く、初心者でも扱いやすい
- 多くのレンタルサーバーで採用されている
- モジュールが120種類以上あり拡張性が高い
- OS対応が広い(Linux / Windows / macOS など)
- 動的コンテンツ(PHPなど)に強い
- 情報量が圧倒的に多く、初心者でも扱いやすい
- 多くのレンタルサーバーで採用されている
nginx(エンジンエックス)
- 2004年登場の高速Webサーバ
- イベント駆動方式で大量アクセスに強い
- 静的ファイル配信が非常に高速
- リバースプロキシ・ロードバランサとしても優秀
- 高トラフィックサイト向けの最適解
- メモリ使用量が少なく、同時接続数に強い
- CDNや大規模サービスで採用多数
IIS(アイアイエス)
- Microsoft製のWebサーバ
- Windows Server専用
- GUIで操作でき、初心者でも扱いやすい
- ASP.NETとの相性が抜群
- Windows環境での統合管理がしやすい
- セキュリティ機能が豊富
用途に合わせたWEBサーバ用のソフトウェアを使用します。次回以降では実際にApacheやnginxで「WEBサーバ」を構築してみます。
まとめ
「WEBサーバ」について本記事では解説してみました。サーバの挙動の仕組みを理解しておくことは実際に、実務で構築を行う際や運用を行う際に必ず役に立ちます。「WEBサーバ」はどんなシステムでも必須(私も実際に何回か構築したことあります)ですので覚えておいて損はないです。

コメント