先日、PHPカンファレンスで購入した「Webを支える技術」を読んでいて、
URIとURLの違いを今更あんまり理解できてないとわかったので、まとめてみます。
URLとURIの意味は?
- URL …Uniform Resource Locator(統一リソース位置指定子)
- URI …Uniform Resource Identifier(統一リソース識別子)
もう一つ似た言葉があります!
- URN …Uniform Resource Name(統一リソース名)
URLとは?
リソースの場所を示すもの。
URNとは?
ドメイン名に依存しない、独立したリソース名。URLがドメイン更新切れだったり、サーバの障害でアクセスできないときに、恒久的にIDを振るための仕様。
しかし、URLは永続的にアクセスできるべきという考えから、URNは使うまではないことが多くなり、普及していない。
URIとは?
リソースを識別するもの。
URIが位置的なものを示したい時はURL、URIが名前を示したいときはURN
→URIは、URLとURNの両方の意味を含むもの
まとめ
- URL⇄URIと読み替えても、だいたいはok。
- 詳しく言うと、URLはURIであり、URNもURIである。
- URIの方が広い意味で使えるので便利だし、技術者っぽい