Webサイトを公開するときには、Webサーバが必要となります。そもそも、Webサイトはどのようにして表示されているのか、Webサーバはどのような役割をしているのかを知らなければ、適切なサーバを選ぶことはできません。今回は、Webサイトの表示の仕組みとWebサーバの役割について説明します。

サーバってなに?

サーバという言葉は、データやソフトウェアを格納するハードウェアを指す場合と、Webサーバやメールサーバといったプログラムを指す場合があります。

今回の記事では、Webサーバというソフトウェアではなく、「Webサーバというソフトウェアがインストールされたサーバ」をWebサーバと表現して説明します。

Webサイトはどのようにして表示されるのか

Webサイトを閲覧するときにはInternet ExplorerやGoogle Chrome、Safariといった「Webブラウザ」を利用します。

WebブラウザでWebサーバにアクセスして、WebブラウザがWebサーバから画像やテキストなどのデータを受け取ります。受け取った情報をWebブラウザが解釈し、普段見ているWebサイトの形で表示されます。

Webブラウザは何をしているのか

Webサイトを表示するときには、WebブラウザはHTMLドキュメントというデータを受け取ります。

その中にテキストや画像、ページのデザインやレイアウトを指定するCSS、ページ内で動きをつけるJavaScriptなどが指定してあり、Webブラウザはそれらを解析し整理します。

それらを画面に描画(レンダリング)することで、Webサイトを表示しています。

ちなみに、Webサイトを制作するときに問題になる、ブラウザによる表示崩れはレンダリング方法が異なることが原因であることがほとんどです。特にInternet Explorerはバージョンが変わる毎にレンダリング方法が変化し、どのバージョンまで対応すべきかの判断が重要となります。

Webサーバは何をしているのか

Webサーバは、最終的にはWebブラウザに対してデータを返しますが、データを返す仕組みは大きく分けて2つあります。

保管しているファイルを返す(静的なサイト)

これは単純で、サーバが保管しているHTMLドキュメントを返す仕組みです。普段、仕事に利用しているパソコンと同様にWebサーバもデータを保管しています。「test.html」というファイルへのリクエストがあれば、そのままそのファイルを返します。

その後は、先ほど説明した通り、そのファイルをWebブラウザが解釈してWebサイトが表示されます。

実行した結果を返す(動的なサイト)

2つ目は、Webブラウザからのリクエストに対して、Webサーバが何らかの処理をして実行結果を返す仕組みです。いわゆる、「動的な処理」を行なうサイトではWebサーバはこの仕組みを持っています。

商品等の検索やフリーワード検索、リアルタイムの人気記事ランキングといったコンテンツを表示する場合には、Webサーバが何らかの処理を行ない、リクエストに答えるWebドキュメントを生成してWebブラウザに返します。

かつては、単純なWebサイトが多く、1つ目のようなデータを保管して返すという仕組みを持ったWebサーバでこと足りました。しかし、現在では検索機能を含め、様々な動作をするWebサイト(動的なサイト)が求められ、このような仕組みを持ったWebサーバを構築する必要性が増えています。

 Webサーバはどのように選ぶのか

Webサーバを選ぶときには、まずどのような仕組みのWebサイトを作るのかが決定している必要があります。

単純に置いているファイルを返すだけの役割(静的サイト)が必要な場合には、共用サーバで十分です。ただ、アクセスが膨大であったり、一時的に大量のアクセスがあるサイトの場合は、VPSやパブリッククラウドを検討する必要があります。
動的なサイトの場合には、Javaやphpといった言語を用いて動的な処理を行なうので、それらの言語に対応しているサーバを選ぶ必要があります。共用サーバの多くは対応しておらず、VPSやパブリッククラウドを検討することになります。

まとめ

今回はWebサイトを表示するときの、WebブラウザとWebサーバの役割について説明しました。Webサイトを表示する大まかな流れは、Webサイトを運営するうえで、理解しておく必要があります。Webブラウザが何を行なっているかを理解し、適切なWebサーバ選びを行ないましょう。