はじめに
こんにちは。アメリカで独学でエンジニアを目指している者です。
現在、ネットワークについて学んでいるのですが、その中で「URLとURIの違いって何だろう?」という疑問がわきました。名前が似ていてわかりづらいため、本記事でまとめてみました。
URI (Uniform Resource Identifier)
皆さん、URLについてはご存じだと思いますので、今回はURIについて説明していきます。
URIはリソースを一意に(重複しないように)識別するための文字列全般を指します。
ここでいうリソースとは、ウェブページ、画像、ファイル、APIエンドポイントなど、インターネット上でアクセスできるものを指します。
URIは大きく2つのタイプに分けられます
- URL (Uniform Resource Locator): リソースの場所(アドレス)を指定する。
- URN (Uniform Resource Name): リソースの名前を指定する。
URNの例としては、本を識別する「ISBN番号」が挙げられます。
なお、URLについては以前記事を書いたので、詳しく知りたい方は以下をご覧ください
これらの違いを一般的な比喩で表すと、URL・URN・URIはそれぞれ「住所」「名前」「宛先」と捉えることができます。
- URL(住所):東京都新宿区西新宿2丁目8-1
リソースが「どこにあり」、「どのようにアクセスするか」を具体的に示します。 - URN(名前):東京都庁(場所の詳細はわからないが、名前で識別可能)
リソースの「名前」を示しますが、その「場所」や「アクセス方法」は含まれません。 - URI(宛先)
リソースを一意に識別するための「総称」。URLやURNを含む広い概念です。
宛先には住所(URL)や名前(URN)が含まれるため、住所だけでなく、ほかの識別方法も許容します。
まとめ
今回は主にURIについて、一般的な例えを使いながらイメージしやすく解説しました。
ウェブを扱ううえでURNが登場する場面は少ないので、実際には「URI=URL」をイメージしても、そこまで大きくはずれないと思います。