「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > ブラウザに URL を入力するとどうなりますか?

ブラウザに URL を入力するとどうなりますか?

2024 年 11 月 5 日に公開
ブラウズ:209

ブラウザに URL を入力して Enter キーを押したときに、舞台裏で何が起こっているのか考えたことはありますか?このプロセスは想像よりも複雑で、いくつかのステップがシームレスに連携して、要求した Web ページを配信します。この記事では、URL の入力から完全に読み込まれた Web ページの表示までの過程を探り、それをすべて可能にするテクノロジーとプロトコルに光を当てます。

What Happens When You Type a URL Into a Browser?

ステップ 1: URL を入力して IP アドレスに変換する

ブラウザに URL (例: www.example.com) を入力すると、旅が始まります。ブラウザの最初のタスクは、この人間が読める URL を IP アドレス (Web サイトをホストしているサーバーの数値アドレス) に変換することです。私たちはドメイン名を使用しますが、コンピューターは 192.0.2.1.

のような数値アドレスを使用して通信するため、この変換は非常に重要です。

IP アドレスを見つけるために、ブラウザはプロセスを高速化するためにいくつかのキャッシュをチェックします:

  • ブラウザ キャッシュ: 繰り返しの検索を避けるために、以前の IP アドレスを保存します。
  • オペレーティング システム (OS) キャッシュ: ブラウザのキャッシュに見つからない場合は、OS キャッシュをチェックします。
  • ルーターまたはローカル キャッシュ: ブラウザはルーターのキャッシュまたはローカル ネットワーク キャッシュをチェックする場合があります。
  • ISP キャッシュ: 最後に、インターネット サービス プロバイダー (ISP) は IP アドレスのキャッシュを保持します。

これらのキャッシュに IP アドレスが含まれていない場合、ブラウザは DNS (ドメイン ネーム システム) ルックアップを実行します。

ステップ 2: DNS ルックアップと IP アドレスの解決

IP アドレスがどのキャッシュにも見つからない場合、ブラウザは DNS ルックアップを開始します。 DNS をインターネットの電話帳と考えてください。DNS は、いくつかの手順を経てドメイン名を IP アドレスに変換します。

  1. 再帰的 DNS ルックアップ: DNS リゾルバーは、要求された IP アドレスが見つかるまで、さまざまな DNS サーバーに対して再帰的クエリを実行します。
  2. ルート DNS サーバー: リゾルバーは最初にルート DNS サーバーにクエリを実行し、ルート DNS サーバーはそれを TLD (トップ レベル ドメイン) DNS サーバー (.com や .org など) に転送します。
  3. 権威 DNS サーバー: TLD サーバーは、正しい IP アドレスを提供するドメイン (例: example.com) の権威 DNS サーバーを指します。

この情報を使用して、ブラウザは Web サーバーとの接続を確立できます。

ステップ 3: TCP 接続と HTTPS ハンドシェイクを確立する

ブラウザは IP アドレスを取得すると、HTTP (または HTTPS) リクエストを送信して Web サーバーとの通信を開始します。ただし、データを交換する前に、TCP 3 ウェイ ハンドシェイク:

と呼ばれるプロセスを通じて TCP (伝送制御プロトコル) 接続を確立する必要があります。
  1. SYN: クライアントは SYN (同期) メッセージを送信して接続を要求します。
  2. SYN-ACK: サーバーは SYN-ACK (同期確認) メッセージで応答します。
  3. ACK: 最後に、クライアントは ACK (肯定応答) メッセージを送り返し、接続を確立します。

HTTPS 経由で Web サイトにアクセスしている場合は、追加の手順である SSL/TLS ハンドシェイクが発生し、ブラウザとサーバー間で交換されるデータが確実に暗号化されます。

  1. サーバーは公開キーをブラウザに送信します。
  2. ブラウザは、この公開キーを使用してセッション キーを暗号化し、それを送り返します。
  3. サーバーは秘密キーを使用してこのセッション キーを復号します。
  4. 双方が安全な通信を進めるためにこのセッション キーを使用します。

ステップ 4: HTTP リクエストの送信

安全な接続が確立されると、ブラウザは HTTP リクエストを送信してサーバー上の特定のリソースにアクセスします。このリクエストには、ブラウザの種類やアクセスしようとしているページなどの詳細が含まれます。 HTTP リクエストは次のようになります:


GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36
Accept: text/html


サーバーはこのリクエストを処理し、リクエストされたリソースを送り返す準備をします。

ステップ 5: サーバーがリクエストを処理し、応答を送信する

リクエストの処理後、サーバーは、HTML、CSS、JavaScript、ページのレンダリングに必要な画像などのリソースを含む HTTP レスポンスを生成します。理想的には、この応答にはステータス コード 200 OK が含まれ、すべてがスムーズに完了したことを示します。

応答の例は次のとおりです:


HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Content-Length: 3485




Example Page


Welcome to Example.com!






ステップ 6: ページのレンダリング

ブラウザはこの応答を受信すると、HTML および CSS ファイルを解析し、これらのファイルに含まれる JavaScript コードを実行することによってページのレンダリングを開始します。このプロセスには、Web ページ上の要素がどのように構造化されているかを表すドキュメント オブジェクト モデル (DOM) の作成が含まれます。

レンダリング エンジンは、この DOM 構造とそれに適用される CSS スタイルに基づいて、画面上のピクセルを描画します。

結論

ブラウザに URL を入力すると何が起こるかを理解すると、最新の Web テクノロジーがいかに複雑でありながら効率的であるかがわかります。ドメイン名から IP アドレスへの変換から、安全な接続の確立、ページのシームレスなレンダリングまで、各ステップはコンテンツを迅速かつ安全に配信するために重要な役割を果たします。

次回オンラインで閲覧するときは、お気に入りの Web サイトでスムーズなナビゲーションを楽しめるように、これらすべての舞台裏のプロセスが連携して動作していることをじっくりと理解してください。

さらに読む

Web テクノロジーがどのように機能するかについて知識を深めることに興味がある方、またはより技術的な洞察を探している方向け:

  • DNS の仕組み
  • TCP/IP について
  • HTTPS 接続

これらのリソースを探索することで、デジタル世界がどのように運営されているかについてさらに詳しく知ることができます!

リリースステートメント この記事は次の場所に転載されています: https://dev.to/vyan/what-happens-when-you-type-a-url-into-a-browser-2mh2?1 侵害がある場合は、study_golang@163 までご連絡ください。 .comを削除してください
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3