1) 웹 브라우저와 웹 서버의 통신 과정
1-1. IP 주소 요청 및 응답 (웹 브라우저 ↔️ DNS)
웹 브라우저가 웹 서버와 통신하기 위해서는 웹 서버의 고유 IP 주소를 알아야 한다.
하지만 이를 외우는 것은 매우 복잡하기 때문에 사용자는 도메인을 사용한다.
때문에 도메인 주소를 웹 서버에 요청하기 전, DNS를 통해 IP 주소로 변환해야 하는 필요가 생긴다.
✍️ DNS 란?
DNS(Domain Name System)은 웹 브라우저에서 요청한 도메인 주소와 부합하는 IP 주소를 찾아주는 역할을 하는 시스템이다.
도메인 주소의 .(dot)을 기준으로 구분되며, 이를 계층적으로 분석하여 요청에 부합하는 값을 돌려준다.
1-2. IP 주소에 해당하는 웹 페이지 요청 (웹 브라우저 ➡️ 웹 서버)
DNS에서 반환된 IP 주소를 받은 웹 브라우저는 이를 이용하여 웹 서버에 해당되는 웹 페이지를 요청한다.
이때, 연결될 웹 서버에서도 특정한 서버 프로그램을 구분하기 위하여 포트(port)를 사용할 수 있다.
✍️ 기본 포트 번호
HTTP - 80
tomcat - 8080
1-3. HTML 응답 (웹 서버 ➡️ 웹 브라우저)
웹 브라우저의 요청에 해당되는 HTML 문서를 웹 브라우저에 보내면 렌더링(rendering)을 통해 화면이 표현된다.
2) 통신 자원 및 데이터
2-1. HTTP 요청 / 응답 데이터
상기한 웹 브라우저와 웹 서버 간에 데이터(HTML, 이미지, 자바스크립트 코드 등)를 주고 받을 때에는 일련의 규칙을 따라야 하며,
그 규칙을 HTTP라고 한다.
웹 브라우저에서 웹 서버로 요청할 때 필요한 것이 요청 데이터, 그 반대가 응답 데이터이다.
✍️ HTTP 와 HTTPS 의 차이점
HTTPS는 HTTP의 기능에서 보안의 취약성을 보완하기 위하여 만들어졌다.
데이터 암호화를 통해 보안이 유지될 수 있으며 대칭키(세션키), 비대칭키(공개키, 개인키)를 사용한다.
2-2. WEB 과 WAS
이 데이터는 다시 페이지로 출력이 될 때, 같은 응답 데이터를 받아 고정된 결과를 출력한다면 정적 자원,
시간이나 특정한 조건에 따라 응답 데이터가 달라진다면 동적 자원이라고 한다.
정적 자원의 경우에는 비교적 단순한 데이터를 처리하기 때문에 WEB(웹 서버)에서 제공할 수 있지만,
동적 자원의 경우에는 해당하는 데이터에 따라 WAS의 Web container를 통해
알맞는 프로그램을 실행해야 원하는 실행 결과를 얻을 수 있고, JSP는 여기에 해당한다.
'JSP' 카테고리의 다른 글
Cookie 와 Session (0) | 2022.08.13 |
---|---|
JSP 페이지 구성 (0) | 2022.08.12 |