🦁

[備忘録04]作って学ぶブラウザのしくみ / URLを分解する

2024/12/30に公開
1

URLとは

インターネット上にある特定のリソースにアクセスするための識別子。
本書ではhttpのみを実装する。(httpsは実装しない)

URLの分析

** http://<host>:<port>/<path>?<searchpart>**

スキーム(scheme)

URLのスキームとは、リソースにアクセスするために使用されるプロトコルの名前を示す。
スキームの後は**://**が続く
よく使われるスキームは HTTP, HTTPS, FTP, FILE, DATA

ホスト(host)

ホストとは、FQDN(Fully Qualified Domain Name,完全修飾ドメイン)、または、IPアドレスのこと。
完全修飾ドメインは、ネットワークに接続された機器を識別するための完全なドメイン名のこと。各ドメイン名は「.」で区切られている。例えば、www.example.comなどが完全修飾ドメイン名、つまりホストにあたる。

ポート番号(port)

URLのポート番号とは、サーバの特定のサービスやアプリケーションにアクセスするために使用される番号、同じIPアドレスを持つサーバ上で複数のサービスが動作している可能性がある。ポート番号はサーバのどのサービスに接続するかを特定するために使用される。
ポート番号は省略可能で、デフォルトのポート番号が割り当てられることがある。HTTPプロトコルのデフォルトポートは80です。(これらは**well-known-port**といって定義されています)

パス(path)

サーバ内の階層化されたリソースを指定するために使用する。各階層がスラッシュ(/)で区切られる。

クエリパラメータ(searchpart)

URLのクエリパラメータはキー=値というペアの形式で表現される。複数の場合は&で区切られる。これらの情報はwebサーバに対して要求する際に追加の情報を提供するために使用される。例えば、category=books&sort=ascのクエリパラメータを使用すると、サーバに対して、カテゴリが本で照準で表示させる等情報を送ることができる。

Discussion

kanaruskanarus
typo
  • URLnおスキームとは、リソースにアクセスするために使用されるプロトコルの名前を示す

    nお → の

  • 同じIPアドレスをぼつサーバ上で複数のサービスが動作している可能性がある

    ぼつ → もつ

  • ポート元興はサーバのどのサービスに接続するかを特定するために使用される

    元興 → 番号

  • 各再送がスラッシュ(/)で区切られる

    再送 → 階層

  • category=books&sort==asc

    == → =

  • サーバに対して、カテゴリが本で照準で表示させる等情報を送ることができる

    照準 → 昇順