Webの基礎

【サーバの基本】Webサーバとは?分かりやすく解説します!

システム開発をする上で、Webサーバの仕組みは必ずと言っていいほど知らなければいけません。

 

Bさん
Bさん
え、まだよくわかってないんだけど…

 

本記事では、Webサーバについて図を交えながら分かりやすく解説していきます。難しいものではないので、エンジニア初心者の方やWebサーバについてよく知らない方はこの機会に理解していきましょう!

 

Webサーバとは

Webサーバについて、Wikipediaにはこのように記されています。

Webサーバ(ウェブサーバ、英:Web server)は、HTTPに則り、クライアントソフトウェアのウェブブラウザに対して、HTMLやオブジェクト(画像など)の表示を提供するサービスプログラム及び、そのサービスが動作するサーバコンピュータを指す

引用元:Wikipedia

つまり、HTMLファイルや画像などのコンテンツを提供するサーバということです。

もっと言うと、Webサイトを公開させる機能を持つミドルウェアがインストールされているサーバが“Webサーバ”です。

Webサーバが公開するコンテンツには、HTMLファイルや画像などの静的コンテンツと呼ばれるものと、アプリケーションなどの動的コンテンツと呼ばれるものがあります。

公開するコンテンツによってシステムの構成は変わってきますが、どちらにせよコンテンツを公開しているはWebサーバのなので、システム開発をする上でWebサーバの理解は重要なのです。

そもそも「サーバってなんだっけ?」ていう方は、こちらの記事をどうぞ。

 

Webサーバの仕組み

Webサーバの仕組を理解する上で、出てくる登場人物は以下の2つです。

Webサーバ…Webサイトを公開させる役割

Webクライアント…Webサイトを閲覧する役割

Webクライアントとは、Webサーバにアクセスするためのソフトウェアです。

 

気づいたと思いますが、このソフトウェアは皆さんが良く使っているWebブラウザです。

  • Internet Explore
  • Chrome
  • Firefox
  • Safari

などはWebクライアント(Webサイトを閲覧する役割)に当たります。

 

それぞれの役割とし仕組みについてみていきましょう。

  1. ブラウザ(Webクライアント)からWebサイトにアクセスする
  2. ブラウザ(Webクライアント)からの要求(リクエスト)をWebサーバが受け取る
  3. Webサーバは、要求(リクエスト)に応じたコンテンツ(HTMLファイルや画像)のデータを探す
  4. Webサーバは、ブラウザ(Webクライアント)にデータを渡す(レスポンス)

要は、ブラウザからの要求をWebサーバが返すというだけです。

 

Webサーバの種類

Webサーバにも様々な種類がありますが、まずは以下の代表的は2つを覚えておけばOKです。

Apache(アパッチ)

Nginx(エンジンエックス)

この2つはWebサーバを構築する上で、必ずと言っていいほど名前が上がるミドルウェアです。

構築するシステムによってどちらを使うかは変わってきますが、仕組みは同じです。

ApacheとNginxの違いについて知りたい方はこちらの記事か参考になります。

 

Webサーバの構築環境

先ほど紹介したApacheやNginxはOSSというもので、無料で使用することができます。

勉強用にWebサーバを構築しようとしている方は、Linuxで環境を構築することをおおすすめします。

 

Aさん
Aさん
WindowsやMacじゃだめなの?

 

WindowsやMacでも構築できますが、基本的にWebサーバはLinuxで構築することが多いので、より実践的な知識を身につけたければLinuxで構築するのが良いでしょう。

VirtualBoxというツールを使えば、Linux環境でWebサーバを簡単に作ることができます。

VirtualBoxでLinux環境を構築する方法はこちら

ApacheでWebサーバを構築する手順はこちら

 

Webサーバとは:まとめ

Webサーバまとめ
  • Webサーバとは、Webクライアントからの要求(リクエスト)を受けって、その結果を返すサーバのことである
  • 日常的に使用しているブラウザは、Webクライアントである
  • Webサーバの種類は、とりあえずApacheとNginxを覚えておけばOK
  • WebサーバはLinuxで構築する方が実用的である

いかかでしたでしょうか。

ここまで読めば、Webサーバについて理解できたのではないかと思います。

基本的な部分は知ることができたので、細かい部分は実際に使いながら調べていくのがいいでしょう。

最後まで読んでいただきありがとうございました。

RELATED POST