入社してからいろんなサーバーに出会って、どれがどんな役割だか一度整理するための自分メモ。
今日はWebサーバー。
ネットワーク上でデータを提供している側をサーバー、データを利用している側をクライアントと呼ぶらしい。
なのでWebサーバーもデータを提供する側。
配信プログラム Webサーバー
WebサーバーはWebブラウザからコンテンツの要求があると、必要なコンテンツをネットワークを通してWebブラウザに送る役割を持っている。コンテンツはWebサーバーによって配信されることでWebページと呼ばれるようになる。
要求されたコンテンツを持っていないときは「持っていない」というメッセージを返したり、別のサーバーに要求するように案内することもある。
よく名前を聞くWebサーバーは、Apache(アパッチ)、Nginx(エンジンエックス)。
WebブラウザとWebサーバーのやりとりはHTTP
Webページが表示されるには
①Webブラウザから「○✖️というコンテンツをください」と要求。
②Webサーバーから「○✖️だよ」と○✖️コンテンツを送信。
持っていない場合は、「○✖️は持っていないよ」とメッセージを送信。
というやりとりが行われる。
要求を送ってからコンテンツを受け取るまでの一連のやりとりは、HTTPというプロトコル(ルール)としてメッセージの送り方や書式まで細かく決められている。
プロトコルは世界共通
WebブラウザやWebサーバーには様々な種類があるが、HTTPという共通ルールがあるのでどれを使ってもやりとりすることができる。
参考
Webサーバーは、Webブラウザから要求されたページを、HTTPに従って送信する。
ブラウザはそれを受け取って表示する。
ブラウザはサーバーから送られてきたデータを利用して表示しているのでクライアント。
最初聞いたときは、ブラウザをクライアントというのに違和感があった。