ブラウザにURLが入力されたときにどのような処理が行われてページが表示されているのか
自分なりにざっくりまとめてみました。(間違えているところがありましたらご指摘ください)
全体的なイメージがつかめればと思います。
ページが表示されるまで
登場人物と役割
- クライアント
- ブラウザ: chrome, firefox, IEなど
- サーバー
- DNS(DSNキャッシュサーバー・DNSサーバー): ドメイン名を管理。ドメイン名に紐づくIPアドレスをクライアントに返す
- Webサーバー:webページの表示に必要な情報をクライアントに返す
処理の流れ
- ブラウザはDNSに対してユーザに入力されたURL(ドメイン名)を送り、IPアドレスを要求する
- DNSはブラウザに対してドメイン名に紐づくIPアドレスを返す
※ドメイン名に紐づくキャッシュがあればキャッシュの情報をブラウザへ返す。なければDNSサーバーからIPアドレスを取得しブラウザへ返す。 - ブラウザはDNSから受け取ったIPアドレスを持つwebサーバーに対して接続を行い、Webページの情報を要求する
- Webサーバーはブラウザに対してページ生成に必要な情報を返す
- ページを画面に表示する
参考
https://blog.knowbe4.com/what-happens-when-you-type-in-a-url-in-an-address-bar-in-a-browser
https://github.com/tetz-akaneya/what-happens-when-JA
https://www.urban-project.jp/blog/recommended/433/
https://www.rworks.jp/system/system-column/sys-entry/21249/
https://developers.google.com/web/fundamentals/performance/critical-rendering-path/constructing-the-object-model