웹사이트란 웹서버 애플리케이션이 공개하는 다양한 웹페이지의 집합이다. 웹페이지는 일반적으로 HTML 파일로 만든다.
웹사이트의 주소는 URL(Unirom Resource Locator)이라고 부르며, 구조는 다음과 같다.
<스킴>://<호스트명>/<경로명>
ex) https://velog.io/@yjok/
스킴이라는 것은 웹브라우저가 웹서버의 데이터에 접속하기 위한 프로토콜을 나타낸다. 그 뒤에 호스트명은 이전 포스트에서 설명했듯이 IP 주소와 대응하는 것으로 DNS를 통해 IP 주소를 구할 수 있다. 호스트명 뒤에는 포트 번호가 있을 수도 있지만 보통 생략된다. 호스트명 다음 /
뒤에는 웹서버 어디에 파일이 있는지 나타내는 경로이다.
웹사이트를 구성하는 HTML 파일을 전송하기 위해서는 HTTP(Hyper Text Transfer Protocol)를 이용한다. HTML 파일 뿐만 아니라, 다양한 종료의 파일을 전송하는 프로토콜로도 이용할 수 있는데, 이 파일 전송은 HTTP 리퀘스트(요청)와 HTTP 리스폰스(응답)를 주고받으면서 이루어진다.
웹브라우저에서 웹서버 애플리케이션으로 보내는 HTTP 요청 메시지는 다음 세 부분으로 구성된다.
HTTP 요청에 대한 응답으로 HTTP 응답을 반환한다. HTTP 응답 메시지는 요청 메시지와 비슷하게 리스폰스 라인, 메시지 헤더, 엔티티 바디로 구성된다.