개발도서 읽기/HTTP 완벽 가이드

[1. HTTP: 웹의 기초] 2장) URL과 리소스

까연 2021. 4. 11. 14:56

URL

: URI의 부분집합으로, 브라우저가 정보를 찾는데 필요한 리소스의 위치를 가리킨다. 

 

사용자는 브라우저에 URL을 입력하고 브라우저는 화면 뒤에서 사용자가 원하는 리소스를 얻기 위해서 적절한 프로토콜을 사용하여 메시지를 전송한다.

 

- URL 문법 구조

 

- 절대 URL / 상대 URL

- 안전하지 않은 문자

URL은 잘 호환되도록 설계되었고, 인터넷에 있는 모든 리소스가 여러 프로토콜을 통해 전달될 수 이쏟록, 각 리소스에 유일한 이름을 지을 수 있게 설계되었다.

 

어떤 프로토콜을 통해서든 안전하게 전송될 수 있도록 URL을 설계하는 것은 중요하다.

 

안전한 전송을 위해 모든 프로토콜로 URL이 전송될 수 있고, 가독성 있으며, 안전한 알파벳 문자만 포함하도록 허락한다.

 

  • URL 문자 집합

: 컴퓨터 시스템의 기본 문자 집합인 영어 중심 (US-ASCII), 특정 이진 데이터를 포함하기 위해 이스케이프 문자열을 쓸 수 있도록 설계

 

  • 인코딩 체계

: URL에 있는 안전하지 않은 문자들을 표현할 수 있는 인코딩 방식

 

  • 문자 제한

: URL에서 예약된 문자들은 혼동될 수 있으므로 본래의 목적이 아닌 다른 용도로 사용하려면 인코딩해야 한다.

 

스킴 같은 몇몇 URL 컴포넌트는 쉽게 알아볼 수 있어야 하며 알파벳 문자로 시작되어야 한다.

 

- 스킴의 바다

스킴 설명
http 하이퍼 텍스트 전송 프로토콜 (포트번호: 80)
https http스킴과 다르게 HTTP의 커넥션의 양 끝단에서 암호화하기 위해 개발한 보안 소켓 계층(SSL)을 사용한다. 문법은 HTTP와 같다. (포트: 443)
mailto 이메일 주소를 가리키며, 표준 URL과는 다른 포맷을 가진다.
ftp 파일 전송 프로토콜. FTP서버에 있는 파일을 올리거나 내려 받는데 사용.
rtsp, rtspu RTSP URL은 실시간 스트리밍 프로토콜(rtsp)을 통해 읽을 수 있는 미디어 리소스 식별자
file 주어진 호스트 기기에서 바로 접근할 수 있는 파일들을 나타낸다.
news 특정 문서나 뉴스 그룹에 접근하는데 사용.
telnet 대화형 서비스에 접근하는데 사용. 

 

- 미래

URL은 특정 시점에 어떤 것이 위치한 곳을 알려준다는 것을 뜻한다. 따라서 리소스가 옮겨지면 URL을 더는 사용할 수 없다. 

이런 문제를 예방하기 위해선, 위치와 관계없이 실제 객체의 이름을 사용하는 것이다. => URN

 

* PURL: URL로 URN의 기능을 제공. 리소스의 실제 URL 목록을 관리하고 추적하는 리소스 위치 중개 서버를 두고, 해당 리소스를 우회적으로 제공