여러가지 URL을 통해 사이트를 탐색할때 과정을 배우는 과정에서 브라우저의 주요 기능중 자원의 주소는 URI에 의해 정해지고 어쩌고,,, 하면서 URL과 URI 차이를 분명히 배우긴했는데 기억이 안나 다시 한 번 정리하게 됐다. 그렇게 됐다..! 인간은 망각의 동물,,,
그림에서 보이다 시피 URI는 URN과 URL을 포함하고 있는 개념이당 근데 아니다 푸하하
URI (Uniform Resource Identifier)
URI는 인터넷에 있는 자원을 어디에 있는지 자원 자체를 식별하는 방법이다.
여기서 자원은 웹 브라우저의 파일만 뜻하는 게 아니라, 실시간 교통정보 등 우리가 구분할 수 있는 것은 모든 게 리소스가 된다
URL ( Uniform Resource Locator)
URL은 네트워크 상에서 자원이 어디 있는지 위치를 알려주기 위한 규약
즉, 컴퓨터 네트워크와 검색 메커니즘에서의 위치를 지정하는, 웹 리소스에 대한 참조이다.
흔히 URL을 웹 사이트 주소로만 알고 있지만, URL은 웹 사이트 주소뿐만 아니라 컴퓨터 네트워크 상의 자원을 모두 나타내는 표기법이다.
해당 주소에 접속하려면 URL에 맞는 프로토콜(http, sftp, smp ..등)을 알아야 하고, 그와 동일한 프로토콜로 접속해야 한다.
URN (Uniform Resource Name)
URL이 리소스가 있는 위치를 지정한다면, URN은 리소스에 이름을 부여한다.
하지만 리소스가 이름에 매핑되어 있어야 하기 때문에 이름으로 부여하면 거의 찾기가 힘들다. 그래서 대부분 URL만 쓴다. (즉 URN은 몰라도 된다)
http://www.naver.com/index.html?page=1232950&id=776
여기서 URL은 index.html의 위치를 표기한 http://www.naver.com/index.html 까지이다.
하지만 사용자가 원하는 정보에 도달 하기 위해서는 뒤에 식별자가 필요하다.
모두 합친 주소가 URI이고 식별자가 빠진 주소가 URL
통상적으로 대충 URL이라고 얘기를 하지만 엄격하게는 URI
저 예시 주소에서는 프로토콜은 http 이고 호스트는 www.naver.com 파일 경로는 /index.html 이고 그 뒤는 쿼리 매개변수
아니 잠만, 원하는 정보에 도달하기위해서는 뒤에 식별자가 필요하다면서 URL과 식별자가 합쳐진게 URI고 근데 URI가 식별자라면서
URI와 URL를 쉽게 구분하는 방법은
URI 는 통합 자원 식별자로 주소에 식별자가 있으면 URI
URL은 리소스 주소를 나타내므로 리소스 위치까지만 나타내면 URL
예시로 든다면
- https://0boss.tistory.com/category
0boss.tistory.com 에서 category 라는 경로를 나타내고 category는 리소스의 실제 위치이므로 이 주소는 URL
- https://0boss.tistory.com/category/12
0boss.tistory.com 에서 category 라는 자원의 경로를 나타내는 부분까진 URL 이지만
/12 는 식별자 이므로 https://0boss.tistory.com/category URL을 포함한 URI라고 할 수 있겠다.
- https://0boss.tistory.com/category?page=12
위와 마찬가지로 https://0boss.tistory.com/category 까지는 자원의 실제 위치를 나타내기 때문에 URL이고,
뒤의 query ( ?page=12 ) 가 붙었으므로 https://hstory0208.tistory.com/category URL을 포함한 URI
요약
URI = 자원(리소스)의 식별자
URL = 위치 (Location)
URN = 이름 (Name)
URL은 식별자가 있을 수도 있고 없을 수도 있고
URL은 URI의 일부지만, 모든 URI 가 URL은 아니라네 헉,,,허거덩,,! 우띠
만약에 리소스를 식별하는데 위치가 필요하지 않다면 URI지만 URL은 아니다. 서른이지만 열아홉입니다 같은 말이다. 참,,,
자세히 아는분은 댓글 바람 ^^*
참고
https://inpa.tistory.com/entry/WEB-%F0%9F%8C%90-URL-URI-%EC%B0%A8%EC%9D%B4
'CS' 카테고리의 다른 글
스턱스넷 : Stuxnet 핵이 된 디지털 웜 (0) | 2024.06.21 |
---|---|
Monolithic vs MSA (2) | 2024.04.21 |
비동기 처리 (0) | 2024.01.24 |
RDBMS 와 NoSQL (+짧은 회고) (0) | 2024.01.23 |