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


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

 

[chat face="businessman6_bikkuri.png" name="Bさん" align="left" border="blue" bg="blue" style=""]え、まだよくわかってないんだけど…[/chat]

 

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

 

Webサーバとは


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

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

引用元:Wikipedia

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

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

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

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

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

 

Webサーバの仕組み


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

[jin_icon_check color="#e9546b" size="18px"]Webサーバ…Webサイトを公開させる役割

[jin_icon_check color="#e9546b" size="18px"]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です。

[jin_icon_check color="#e9546b" size="18px"]Apache(アパッチ)

[jin_icon_check color="#e9546b" size="18px"]Nginx(エンジンエックス)

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

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

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

[blogcard url="https://qiita.com/kamihork/items/49e2a363da7d840a4149"]

 

Webサーバの構築環境


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

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

 

[chat face="business_woman3_1_question.png" name="Aさん" align="left" border="red" bg="red" style=""]WindowsやMacじゃだめなの?[/chat]

 

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

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

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

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

[box06 title="あわせて読みたい"]
【簡単です】Linux環境を構築する方法【Virtual Box,teraterm】
【Apacheで簡単】Linux上にWebサーバを構築してみた
[/box06]

 

Webサーバとは:まとめ


[box03 title="Webサーバまとめ"]

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

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

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

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

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


Posted from my blog with SteemPress : https://komodblog.com/web-server/

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now