HTTP 완벽 가이드 2주차 2장

박정훈·2022년 7월 30일
2

HTTP 완벽 가이드

목록 보기
2/8
post-thumbnail

📚독서 스터디

1주차에 이어 2주차!
2장을 읽어오고 문제를 만들어 가야 한다 :)
2주차도 읽은거를 정리해 보자.

2장 URL과 리소스

Uniform Resource Locator, 인터넷 리소스를 가리키는 표준 이름이다.
브라우저가 정보를 찾는데 필요한 리소스의 위치를 가리킨다.

http://www.joes-hardware.com/seasonal/index-fall.html

  • URL의 첫 부분인 HTTP는 URL의 스킴이다. 스킴은 웹 클라이언트가 리소스에 어떻게 접근하는지 알려준다.
  • URL의 두 번째 부분인 www.joes-hardware.com은 서버의 위치다. 이는 웹 클라가 리소스가 어디에 호스팅 되어 있는지 알려준다.
  • URL의 세 번째 부분인 /seasonal/index-fall.html은 리소스의 경로다. 서버에 존재하는 로컬 리소스들 중에서 요청받은 리소스가 무엇인지 알려준다.

물론 HTTP 프로토콜이 아닌 다른 가용한 프로토콜을 사용할 수도 있다. (FTP..)

📌 URL 문법

대부분의 URL 스킴의 문법은 일반적으로 9개 부분으로 나뉜다.
차례대로 살펴보자.

1. 스킴: 사용할 프로토콜

주어진 리소스에 어떻게 접근하는지 알려주는 중요한 정보다. URL을 해석하는 애플리케이션이 어떤 프로토콜을 사용하여 리소스를 요청해야 하는지 알려준다.
http가 스킴이다.

2. 호스트와 포트

URL의 호스트와 포트 컴포넌트는 리소스를 호스팅하고 있는 장비(호스트명 또는 IP주소)와 그 장비 내에서 리소스에 접근할 수 있는 서버가 어디에 있는지 알려준다.

3. 사용자 이름과 비밀번호

많은 서버가 자신이 가지고 있는 데이터에 접근을 허용하기 전에 사용자 이름과 비밀번호를 요구한다.
@문자로 URL로부터 사용자 이름과 비밀번호 컴포넌트를 분리한다.
사용자 이름과 비밀번호를 :문자로 분리한다.
ftp://anonymous:my_password@ftp.perp.ai.mit.edu/pub/gnu

4. 경로

서버가 리소스의 위치를 찾는데 사용하는 정보다.
http://www.something.com:80/seasonal/index-fall.html
위 주소에서 /seasonal/index-fall.html 가 URL의 경로가 된다.

5. 파라미터

많은 프로토콜이 리소스에 접근하기 위해서 사용자 이름 및 비밀번호 외에도 많은 정보를 요구한다.
URL의 파라미터 컴포넌트는, 애플리케이션이 서버에 정확한 요청을 하기 위해 필요한 입력 파라미터를 받는데 사용한다.
; 문자로 구분하며 이름/값 쌍의 리스트 형태를 띈다.
http://www.joes-hardware.com/hammers;sale=false/index.html;graphics=true

6. 질의 문자열

데이터베이스 같은 서비스들은 리소스 형식의 범위를 좁히기 위해서 질문이나 질의를 받을 수 있다. 물음표의 우측에 값이 들어오며,
http://www.joes-hardware.com/inventory-check.cgi?item=12731
제품번호가 12731!

7. 프래그먼트

리소스의 특정 부분을 가리킬 수 있도록,URL은 리소스 내의 조각을 가리킬 수 있는 프래그먼트 컴포넌트를 제공한다. 예를 들어 URL은 html 문서에 있는 특정 이미지나 일부분을 가리킬 수 있다. URL의 오른쪽에 #문자에 이어서 온다.
http://www.joes-hardware.com/tools.html#drills

📌 단축 URL

웹 클라이언트는 몇몇 단축 URL을 인식하고 사용한다. 상대 URL은 리소스 안에 있는 리소스를 간결하게 기술하는데 사용할 수 있다.

상대 URL

URL은 상대 URL절대 URL로 나뉜다. 현재까지 우리가 다룬 것은 절대 URL뿐이다.
절대 URL은 리소스에 접근하는데 필요한 모든 정보를 가지고 있다.
그에 반해 상대 URL은 모든 정보를 담고 있지는 않다. URL을 짧게 표기하는 방식이다.

🧐절대 URL
http://www.joes-hardware.com/tools.html
🧐기저 URL
http://www.joes-hardware.com/
🧐상대 URL
./hammers.html

기저 URL

상대 URL의 기준이 된다.

마무리

URL 문법의 종류와 스킴 종류가 이렇게나 많다니! 처음 보는 키워드들이 아주 많이 튀어나왔다. 그럼에도 어디서 들어본적은 있는 키워드 또한 많이 나왔고 키워드로 그치지 않고 그 속까지 들여다 본 것 같아서 재밌게 읽었다. 특히 미래에 관한 부분이 흥미로웠다. 앞으로 다가올 미래의 기술은 어떻게 현재의 방식을 꿰찰지...

URL은 세상에 존재하는 모든 객체에 이름을 지을 수 있다. 그렇지만 URL은 주소이지 실제 이름은 아니다. 이는 URL이 특정 시점에 어떤 것이 위치한 곳을 알려준다는 것을 뜻한다. 이러한 스킴의 단점은 리소스가 옮겨지면 URL을 더는 사용할 수 없다는 것이다. 기존에 가리키던 객체 또한 찾을 수 없다.
이런 단점을 보완하고자 나온 방법이 URN이며, 객체가 옮겨지더라도 항상 객체를 가리킬 수 있는 이름을 제공하기 때문에 위치가 바뀌더라도 리소스의 위치를 찾을 수 있다.

profile
그냥 개인적으로 공부한 글들에 불과

1개의 댓글

comment-user-thumbnail
2022년 7월 31일

일목요연하게 정리를 잘하셨네요! 잘 읽고 갑니다👀

답글 달기