🍑あわもり教室🫧 クラウドの「手前」を、ちゃんとやる。 はじめる
SET 0015分

Webサイトが表示されるまで

ブラウザへURLを入力してから、Webサーバーの応答が画面に表示されるまでを順にたどります。

このレッスンのメニュー

ブラウザへWebサイトのURLを入力すると、少し待つだけでページが表示されます。 その間に、ブラウザは接続先を調べ、Webサーバーへページを要求し、返ってきたデータを画面に表示しています。

ブラウザからWebサーバーへ送る要求をリクエスト、Webサーバーから返す結果をレスポンスと呼びます。 一回のやり取りを段階に分けると、ページを開けないときにどこまで成功したか確認できます。

ブラウザが接続先を調べ、TCPで接続し、TLSで暗号化の準備を行い、HTTPリクエストを送ってレスポンスを受け取るまで
ブラウザとOSが順番に処理を進め、Webサーバーから受け取った結果を画面へ表示します。

URLから接続先を調べる

URLは、ブラウザへ接続方法と要求先を伝える表記です。 たとえばhttps://example.com/docsには、HTTPSを使うこと、example.comへ接続すること、/docsを要求することが書かれています。

example.comのような接続先の名前をホスト名と呼びます。 ブラウザはOSへ名前の検索を頼み、OSはDNSという仕組みを使って、ホスト名に対応するIPアドレスを調べます。

IPアドレスは、ネットワーク上の通信先を指定する情報です。 OSと途中のルーターは、宛先のIPアドレスを見てデータを次の機器へ渡します。

Webサーバーへ接続する

IPアドレスが分かると、ブラウザはOSへWebサーバーとの接続を頼みます。 OSはTCPという通信の決まりに従い、相手へデータを順番どおり届けるための接続を作ります。

一台のサーバーでは複数のプログラムが通信を待てます。 ポート番号は、その中でどのプログラムへ届けるかを指定する番号です。 HTTPSでは通常、443番ポートへ接続します。

暗号化してページを要求する

HTTPSでは、ブラウザとWebサーバーがTLSという決まりに従い、通信相手を確認して暗号化の準備をします。 そのあと、ブラウザはHTTPという決まりに従って「/docsを取得したい」というリクエストを送ります。

Webサーバーはリクエストを受け取り、HTMLなどをHTTPレスポンスとして返します。 ブラウザがHTMLを読み、文字や画像を配置すると、ページが画面に表示されます。

どこまで成功したか確かめる

段階起きていること失敗したときの例
名前を調べるホスト名からIPアドレスを得る接続先の名前が見つからない
接続するOSが指定されたポートへTCP接続を作る接続を拒否される、応答を待ち続ける
暗号化を準備するブラウザとWebサーバーが相手を確認する証明書の警告が表示される
ページを要求するHTTPリクエストとレスポンスを交換する404や500などの結果が返る
画面を作るブラウザが受け取ったデータを表示するレイアウトや画像だけが崩れる

404などのHTTPレスポンスが返った場合、名前の検索、TCP接続、TLSの処理、HTTPリクエストの送信までは進んでいます。 表示された結果から一段ずつ戻ると、確認する設定やログを絞れます。

後のネットワーク基礎では、IP、TCP、ルーター、通信を許可する設定を個別に扱います。

このレッスンは完了

このページで扱った流れを確認したら、次の内容へ進みます。