Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
4
Help us understand the problem. What is going on with this article?

More than 3 years have passed since last update.

@awannavuamaaan

Web通信の仕組み-Web入門①-

はじめに

Web通信とサーバーについて、とても初歩的なところからまとめた覚書です。

WEB通信の仕組み

ブラウザは、インターネットに接続されたWebサーバーに「情報が欲しい」というリクエストを投げる。サーバーはレスポンス(リクエストに基づいた情報)をブラウザに返す。

サーバーはたくさんある

当たり前のことですが、世界中には星の数ほどWebサーバーが存在します。仮に「A」という情報が欲しいとした時、それがどこのどのサーバーにあるかはわかりません。そこで、URLという住所を利用します。

URL

URLとは、例えば http://www.example.com/index.htmlといったもの。このURLを分解すると、

  • スキーム:http
  • ホスト:www.example.com
  • パス:index.html

という3つに分けられる。

スキーム

httpは「これはWeb通信ですよ」ということを表す。

ホスト

サーバーは星の数ほどある

と言いましたが、その星の数ほどあるサーバーの中で自分の欲しい情報がどのサーバーにあるのかを知るために、ブラウザはホストに対応したIPアドレスを調べることができます。つまりサーバーはIPアドレスを所持していて、ブラウザはホストをもとにそれを探します。

パス

サーバーを特定することができたら、そのサーバーにあるどの情報にアクセスしたいのかを知らせる必要があります。そのために必要なのが、パスです。

つまり

ブラウザは、URLという住所をもとにサーバーというグリンゴッツ銀行を探します。そのグリンゴッツの管理人(ゴブリン)に「index.htmlください」って言います。
でもここで疑問が。
「index.html」ってどこにあったっけ?

TCP接続

TCP接続はバーチャルサーキットと呼ばれる仮想的な論理回線

なのですが、詳しいことは割愛します。
Webサーバーに通信したい場合には、一般にTCPの80番ポートを使っています。メールサーバーであれば25番ポートです。これは先ほどの例で言うと、部屋番号にあたります。

まとめ

普段何気なく行なっているWeb通信では、ブラウザがWebサーバーにリクエストを送り、情報を得ています。どのサーバーに接続すればいいかは、URLと言う住所、TCP80番ポートと言う情報を使って判断しています。
以上が、ブラウザがWebサーバーにどうやって通信しているかのまとめです。

次回は、サーバーに接続した後、どうやってWebページが表示されるのかをまとめます。

4
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
4
Help us understand the problem. What is going on with this article?