URI(Uniform Resource Identifier)
URI는 인터넷에 있는 많은 자원들을 구별하기 위한 문자열이다.
웹 사이트는 각자만의 고유의 IP가 있다.
사용자는 해당 IP로 웹 사이트의 자원에 접근을 할 수 있는데, 사용자가 모든 IP 주소를 기억하는 데는 한계가 있다.
그래서 문자열로 된 URI를 만들어서 사용하게 되었다.
URI의 개념
- URI는 자원이 어디 있는지 식별하는 통합된 방법이다.
- URI는 URL, URN을 포함하고 있다.
https://velog.io/@kimdukbae/URI-URL-URN - URL은 통합 자원 위치로 네트워크 상에서 자원이 어디 있는지 알려 주는 문자열이다.
- URL의 기본 형태는 스키마://호스트/경로로 이루어져 있다.
- URL만으로 웹 사이트에 접근할 수 있다.
- URN은 통합 자원 이름으로 하나의 자원에 대하여 위치, 스키마, 호스트에 상관없이 각각의 자원에 이름을 부여한 것이다.
- URN은 자원에 어떻게 접근할 것인지는 명시하지 않는다.
- URN은 실제 자원을 찾기 위해서는 URL로 변환하여 사용한다.
- URN의 시본 형태는 urn:이름 공간 식별자:이름공간에 대한 특별 문자열 이다.
구조
이름 | 설명 |
스키마 | 사용자와 자원 사이의 통신 규칙을 나타낸다. |
호스트 | IP 혹은 도메인으로 자원의 주소를 나타낸다. |
포트 | 포트번호이다. 하나의 컴퓨터 안에 여러 개의 서버가 있을 때 어떤 서버와 통신할지 나타는대. 웹 서버는 매우 유명한 서버이기에 웹 서버에서는 80번 포트를 사용한다는 무언의 규칙이 있어 생략이 가능하다. |
경로(URL Path) | 자원의 경로를 나타낸다. |
쿼리 스트링(Query String) | 주소 뒤에 덧붙여 추가적인 정보를 서버 측으로 전달하는 방식으로 사용자가 어떤 자원을 원하는지 알려준다. |
URI를 사용하는 이유
URL은 수많은 자료가 있는 인터넷에서 정확하고 편리하게 자원을 식별하기 위해 사용한다.
하지만 URL 방식은 고유한 위치에 대응하는 자료가 없어지거나 이용할 수 없을 경우 검색 수단으로서의
기능을 잃어버리게 된다.
이를 해결하기 위해 URN이 만들어졌고, 이 둘을 합친 개념이 URI이다.
현재는 물리적으로 자원의 정보가 바뀌어도 고유의 데이터가 유지되며 자원의 식별도 가능한 URI를 사용한다.