웹의 동작 과정을 알아보기 전에 선수지식이 있다.
선수지식
- 클라이언트는 사용자가 인터넷이 연결된 장치들(컴퓨터, 휴대폰)로 웹에 접근하는 브라우저(크롬, 사파리, 파이어폭스)이다.
- 웹 서버는 웹페이지, 사이트, 또는 앱을 저장하는 프로그램을 말한다. 클라이언트에서 "http://xxx.co.kr" 주소를 요청하면, 서버에서는 페이지를 만드는 데 필요한 HTML, CSS, JS, Image 등을 가져와 정적인 페이지를 처리한다. 만약 클라이언트가 DB의 데이터가 필요한 동적 컨텐츠(예를 들어 회원정보)를 호출 시 WAS에게 요청한다. ex) Apache
- WAS는 서버에게 동적 컨텐츠 제공을 요청받고 DB와 연동하여 데이터를 처리한 뒤 생성한 파일을 서버에게 반환해 동적 페이지를 처리한다. ex) Apache Tomcat
- DNS(Domain Name System Servers)는 웹사이트를 위한 주소록이다. 사용자가 브라우저에 웹 주소를 입력할 때 브라우저는 DNS를 살펴보고 해당 도메인 네임에 맞는 IP주소를 찾는다.
- HTTP(HyperText Transfer Protocol)은 클라이언트와 서버가 서로 통신할 수 있게 하기 위한 언어를 정의하는 규약이다.
웹 페이지 동작 과정
1. 사용자가 웹 브라우저를 통해 찾고 싶은 웹 페이지의 URL 주소를 입력한다.
2. 브라우저는 DNS 서버로 가서 웹사이트가 있는 서버의 진짜 주소(IP주소)를 찾는다.
3. 브라우저는 서버에게 웹사이트의 사본을 클라이언트에게 보내달라는 HTTP 요청 메시지를 서버로 전송한다.
4. 이 메시지를 받은 서버는 브라우저의 요청을 승인하고 응답 메시지를 클라이언트에게 전송한다. 그다음 서버는 웹사이트의 파일들을 데이터 패킷이라 불리는 작은 일련의 덩어리들로 브라우저에 전송하기 시작한다.
5. 브라우저는 이 데이터들을 변환해 웹사이트를 사용자에게 출력한다.
'💻 Dev > Etc' 카테고리의 다른 글
aria-label을 사용한 웹 접근성 처리 (0) | 2023.12.01 |
---|---|
unable to launch the java virtual machine located at path msvcr100.dll (19) | 2020.08.26 |
[Oracle] ORA-65096: 공통 사용자 또는 롤 이름이 부적합합니다. 오류 (0) | 2020.08.26 |
[Oracle] ORA-01950: 테이블스페이스 'USERS'에 대한 권한이 없습니다. 오류 (0) | 2020.08.26 |