-
- URI 와 URL 두 개의 차이는?
보통 우리는 브라우저의 상단에 있는 주소를 URL 이라고 알고 있는 경우가 대부분이다.
그런데 이 주소는 URI 라고 말하는 사람이 있어서 그러면 URI 와 URL은 정확히 어떤 의미를 가지며 무슨 차이를 가질까 문득 생각을 해봤다.
먼저 정의를 알아보겠다.
URI : Uniform Resource Identifier 의 약자로 인터넷상 포현할수 있는 모든 리소스를 의미한다.
URL : Uniform Resource Locator 의 약자로 URI에서 네트워크상 경로, 어떤 자원의 위치에 대한 절대경로값을 지닌 문자열를 의미한다.
포함 관계를 살펴보자면 URI > URL 로서 URI 가 더 큰 개념을 가진다.
예를 들어보자 .
네이버 홈페이지의 기사 거리중 하나의 주소를 가지고 와봤다.
http://news.naver.com/main/list.nhn?mode=LPOD&mid=sec&sid1=001&sid2=140&oid=001&isYeonhapFlash=Y&aid=0009998039
여기서 먼저
제일 왼쪽의 부분부터 살펴보자면,
1. protocol
'http://' 이 부분이다.
웹에서 페이지나 파일에 접근하는데 사용되는 메소드라고 하며
대표적으로 웹 서버의 protocol 이라고 하는 http 와 https 가 있다.
2. Domain
news.naver.com/ 이 부분이다.
연결할 파일이 위치한 서버로서 포트번호가 함께 올수 있다.
보통 http 는 80과 8080 포트를 가지고 있으며 생략된다고 한다.
3. 경로
main/ 이 부분이다.
연결할 파일이 들어 있는 폴더로서 여러개의 폴더들로 구성될수 있고 '/' 로 구분되어진다.
지금은 main 이라는 경로로 이동한 셈이다.
4. 파일 이름
list.nhn 이 부분이다.
페이지.확장자 형식으로 보통 표시가 되며 연결되어 보여질 파일(페이지)의 실제 이름을 나타낸다.
5. Query
?mode=LPOD&mid=sec&sid1=001........ 이부분이다.
파일 이름과 Query 사이에서의 구분은 '?'로 구분짓는다.
해당 주소에 전달할 문자열을 지정하게 되며 변수=값 형식으로 보통 표시가 되며 Query 간의 &(쿼리세그먼트)로 구분을 짓는다.
자 이제 흔히 볼수 잇는 주소창의 구조를 알아봣고 다시 원래의 논점으로 가보자면 URL과 URI
예시를 들었던 이 주소는 URI 라고 말할수 있다. 허나 URL이라고 말할 수 없다.
URL은 어떤 자원의 위치에 대한 절대경로값을 지닌 문자열를 나타낸다.
Query 는 경로에 따라 변수, 값, 그에따른 Query 개수도 바뀐다. 즉 상대적인 경로를 가지게 된다.
그렇다는 것은 URL은 상대적인 경로를 나타내는 Query 를 가질수 없다.
즉 URL은 http://news.naver.com/main/list.nhn 까지이다.
뒤에 Query 부분까지 가지고 있는 주소가 있으면 URL이 아닌 URI이다.
밑에 그림을 보면 URI 와 URL 관계를 좀더 쉽게 이해가 될수 있을것이다.
'Thinking' 카테고리의 다른 글
Slack (0) 2018.04.07 Git 과 GitHub (1) 2018.04.06 CDN Server (0) 2018.04.01 Framework & Library (0) 2018.03.25 Front end & Back end (0) 2018.03.25