URL(Uniform Resource Locator)은 인터넷에 있는 특정 리소스(예: 웹사이트, 문서, 이미지 또는 비디오)의 주소나 위치를 말합니다. URL은 리소스(예: HTTP 또는 HTTPS), 리소스가 호스팅되는 서버의 도메인 네임이나 IP 주소, 리소스의 특정 경로나 파일 이름에 접속하는 데 사용되는 프로토콜을 정의합니다. URL은 일반적으로 웹 브라우저에서 웹사이트를 탐색하거나 온라인 콘텐츠에 접속하는 데 사용됩니다.
먼저 웹 프로토콜부터 살펴보겠습니다.
웹 프로토콜에 대한 이해를 돕기 위해 예제를 사용하겠습니다. 먼저 Chrome 또는 Firefox와 같은 웹 브라우저에서 www.apple.com에 방문합니다. 그리고 매번 세부 정보의 수준을 높여 이 예제를 여러 차례 실행합니다.
1단계로, 주소 표시줄에 www.apple.com을 입력하거나 링크를 클릭해 방문합니다.
2단계에서는 브라우저에서 요청 메시지를 작성한 다음, 해당 요청을 Apple 웹 서버로 전송합니다. 곧 이어 이 메시지의 형태와 Apple 웹 서버를 찾는 방법에 대해 설명합니다.
3단계에서 Apple 웹 서버는 요청을 수신한 후 응답 메시지를 작성하고 이를 브라우저로 다시 전송합니다.
마지막으로 4단계에서 브라우저가 응답을 렌더링하면 브라우저에서 Apple 웹페이지를 볼 수 있습니다.
여기서 중요한 점은 웹 프로토콜이 응답 메시지 다음에 요청 메시지가 오는 형식으로 구성된다는 것입니다. 종종 웹 사이트를 '방문'한다고 이야기하지만 실제로는 브라우저에서 웹 서버로 요청을 보내고 웹 서버가 응답을 다시 보내는 과정입니다.
웹 프로토콜 HTTP는 웹 클라이언트가 웹 서버와 통신하는 방법을 정의하는 요청 및 응답 프로토콜입니다. 웹 브라우저는 웹 클라이언트의 한 예입니다. 오늘날 iPhone 또는 Android 디바이스에는 수많은 모바일 웹 애플리케이션이 있습니다.
일반적인 웹페이지에는 다음과 같이 수십 개에서 수백 개에 이르는 오브젝트가 포함되어 있습니다.
- 스타일시트
- 코드 라이브러리
- 포함된 이미지
- 광고
각 오브젝트는 요청과 응답을 통해 가져와야 합니다. 따라서 페이지 하나를 가져오려면 수십 개에서 수백 개의 요청 및 응답 메시지 쌍이 수반됩니다. 이 프레젠테이션 전체에서는 단순한 설명을 위해 하나의 요청 및 응답 메시지 쌍만 제시합니다.
이 시리즈의 다음 비디오에서는 HTTPS 또는 보안 웹 프로토콜의 주제를 다룹니다.
인터넷은 종종 IP(인터넷 프로토콜)를 사용하는 네트워크의 네트워크로 기술됩니다. AT&T 및 Comcast와 같은 전 세계 수천 개의 상용 네트워크를 포함해 수십억 개의 웹사이트가 WWW(월드 와이드 웹)에 존재합니다.
인터넷은 다양한 애플리케이션을 지원합니다. 초창기에는 이메일, Usenet, FTP(File Transfer Protocol), 원격 로그인 및 Gopher와 같은 애플리케이션이 있었습니다. 그리고 WWW(월드 와이드 웹)이 나왔습니다.
WWW는 HTTP(Hypertext Transfer Protocol)라고 하는 웹 프로토콜을 통해 통신하는 애플리케이션 세트입니다. HTTP를 통해 통신하는 웹 브라우저, 모바일 웹 애플리케이션 및 웹 서버도 있습니다.
HTTP는 인터넷의 작동 방식의 근간이 된 웹 프로토콜이기도 합니다. 웹 사이트를 방문하면 HTTP를 사용해 해당 페이지의 콘텐츠를 전송하고 브라우저에 표시합니다. 웹 프로토콜 HTTP는 웹 클라이언트가 웹 서버와 통신하는 방법을 정의하는 요청 및 응답 프로토콜입니다.
HTTP에 관한 배경 정보
1989년, HTML을 발명한 것으로 유명한 팀 버너스 리(Tim Berners-Lee)는 CERN에서 하이퍼텍스트로 인터넷을 통해 다양한 종류의 콘텐츠를 전달하는 프로젝트를 진행했습니다. 프로젝트의 이름은 처음에 'Mesh'였지만 나중에 그 유명한 'World Wide Web'으로 업데이트되었습니다. HTTP는 기존 TCP/IP 프로토콜과 연동하도록 설계되어 이후 인터넷 메시징 통신의 토대가 되었습니다. HTTP는 클라이언트(예: 브라우저)와 서버 간 인터넷 메시징의 주류가 되었습니다.
HTTP는 상태 비저장 프로토콜, '클라이언트 및 서버' 프로토콜 또는 '요청 및 응답' 프로토콜로 정의되는 애플리케이션 레이어입니다. Chrome 및 Safari와 같은 인터넷 브라우저에서는 웹 주소 앞에 http://가 붙습니다. 이 접두사는 웹 브라우저가 HTTP 프로토콜(예: http://website.com/)을 통해 통신하도록 지시합니다. HTTP 연결 및 프로토콜로 통신이 시작되면 컴퓨터 또는 기타 인터넷에 연결된 디바이스를 통해 사용자에게 웹 콘텐츠의 종류가 전달됩니다.
HTTP 요청 및 응답 흐름의 단계
HTTP 프로토콜의 요청 및 응답 흐름부터 살펴봅니다. 사용자 또는 앱이 www.apple.com 같은 웹사이트를 탐색할 때 예상되는 웹사이트 콘텐츠를 보여주는 이미지가 브라우저 또는 앱에 바로 표시됩니다. 그러나 그 이면에서는 수백 건의 요청이 작성되고 응답이 다시 전송되곤 합니다.
웹 브라우저는 웹 클라이언트의 한 예이며, 이외에도 iPhone 또는 Android 디바이스에 설치된 모바일 웹 애플리케이션이 있습니다. 웹사이트를 탐색할 때 백 엔드에서 이러한 요청과 응답이 작성되는 방식을 보여주기 위해 해당 프로세스를 4단계로 구분할 수 있습니다.
1단계: 탐색 및 시작
사용자가 브라우저에 웹 주소를 입력하거나 이메일 또는 기타 통신에 포함된 링크를 클릭합니다. URL에는 도메인도 포함됩니다. 브라우저는 DNS 룩업을 통해 웹 주소를 찾은 다음, 이 주소로 요청을 전송합니다.
2단계: 클라이언트가 서버로 HTTP 요청 메시지 전송
HTTP 클라이언트(예: 브라우저)는 Apple 웹 서버로 리디렉션되는 요청 메시지를 작성합니다. HTTP 요청 메시지의 첫 번째 줄은 웹사이트의 루트 페이지, get /요소를 식별합니다.
이 줄은 HTTP의 버전(예: 버전 HTTP 1.1 또는 HTTP 1.0)을 나타냅니다. 이 첫 번째 줄 이후에 '요청 헤더'라고 하는 일련의 추가 줄에서 요청에 대한 추가 정보 및 요청 엔터티에 대한 정보(예: 브라우저)를 제공합니다.
요청 메시지가 웹 서버로 전송되면 메시지를 읽을 수 있고 응답을 작성할 수 있습니다.
3단계: Apple 웹 서버가 HTTP 응답을 클라이언트로 다시 전송
Apple 웹 서버가 요청을 수신한 후에 응답 메시지가 작성되고 브라우저(클라이언트)로 반환됩니다. 메시지의 첫 번째 줄에는 웹 서버가 요청에 성공적으로 응답할 수 있음을 나타내는 응답 코드 "200 OK"가 포함됩니다.
기타 응답 코드로는 다음이 있습니다.
- 404 - 찾을 수 없음
- 502 - 잘못된 게이트웨이
- 503 - 서비스를 사용할 수 없음
요청 메시지의 정확한 형식은 응답에 대한 정보를 제공하는 '응답 헤더'라는 일련의 줄을 포함해 HTTP 응답 메시지에서 반복됩니다. 응답 헤더에서 빈 줄 뒤에는 HTML(HyperText Markup Language)로 표시된 문서 형태로 실제 웹페이지 자체가 표시됩니다.
HTTP 응답 메시지가 생성되면, 웹 서버는 브라우저로 메시지를 다시 보내고, 브라우저는 응답을 수신하고 읽습니다.
4단계: 브라우저에서 메시지 렌더링
마지막 단계에서는 브라우저에서 응답 메시지를 렌더링하고 브라우저에 Apple 웹페이지를 표시합니다.
일반적인 웹페이지의 구성요소
위의 클라이언트 및 서버 간 요청 및 응답의 예는 실제 프로세스의 간소화된 버전입니다. 일반적인 웹페이지에는 다음과 같이 수십 개에서 수백 개에 이르는 오브젝트가 포함되어 있습니다.
- 스타일시트
- 코드 라이브러리
- 포함된 이미지
- 광고
각 오브젝트는 위의 2~4단계에서와 같이 요청과 응답을 통해 가져옵니다. 따라서 웹페이지를 구성하는 콘텐츠를 가져오려면 수십 개에서 수백 개의 요청 및 응답 메시지 쌍을 처리해야 합니다.
자주 묻는 질문(FAQ)
HTTP(Hypertext Transfer Protocol)는 HTML 파일과 같은 리소스를 가져오는 데 사용되는 프로토콜입니다. HTTP는 웹 클라이언트(예: 브라우저)와 웹 서버 간의 통신 교환을 용이하게 지원하는 메시징 표준을 제공합니다.
보안 웹 프로토콜(또는 HTTPS)은 HTTP 끝에 S가 표시되어 웹 사이트의 보안 인스턴스임을 나타냅니다. HTTPS는 웹사이트 인증은 물론, 웹 서버와 웹 클라이언트 사이에서 교환되는 데이터의 암호화를 제공합니다. HTTPS는 TLS(Transport Layer Security) 또는 SSL(Secure Sockets Layer)을 사용해 발급된 디지털 인증서를 사용합니다.
도메인 네임이라고도 하는 웹 도메인은 인터넷의 특정 웹사이트를 나타내는 사람이 읽을 수 있는 고유한 주소입니다. URL의 일부이며 일반적으로 최상위 도메인(TLD)과 2차 도메인(SLD)과 같은 두 가지 주요 구성요소로 이루어집니다.
최상위 도메인은 .com, .org, .net, .gov, .edu 등 도메인 네임의 마지막 부분을 말합니다. 이는 웹사이트의 종류 또는 목적(예: 상업, 기업, 네트워크, 정부, 교육)을 나타냅니다.
고객이 Akamai를 선택하는 이유
Akamai는 온라인 비즈니스를 지원하고 보호하는 사이버 보안 및 클라우드 컴퓨팅 기업으로, 시장을 대표하는 보안 솔루션, 탁월한 위협 인텔리전스, 글로벌 운영팀이 어디서나 기업 데이터와 애플리케이션을 보호하기 위한 심층 방어 기능을 제공한다. Akamai의 풀스택 클라우드 컴퓨팅 솔루션은 세계에서 가장 분산된 플랫폼에서 성능과 경제성을 제공한다. 글로벌 기업들은 비즈니스 성장에 필요한 업계 최고의 안정성, 확장성, 전문성을 제공하는 Akamai를 믿고 신뢰한다.