TIL80-17 면접준비38: https://naver.com을 주소창에 입력했을 때 일어나는 과정

김태혁·2023년 4월 26일
0

TIL

목록 보기
201/205

https://naver.com을 주소창에 입력했을 때 일어나는 과정

  • "https://naver.com"을 입력하면 DNS 조회, TCP 연결 설정, SSL 핸드셰이크 수행, 서버에 요청 보내기, 요청 처리, 응답 보내기, 렌더링 등 일련의 프로세스가 트리거됩니다. 웹 사이트, JavaScript 코드 실행 및 완전히 렌더링된 웹 사이트를 사용자에게 표시합니다.

심화

  1. DNS 조회: 먼저 브라우저가 "naver.com"과 연결된 IP 주소를 찾기 위해 DNS 서버에 요청을 보냅니다. DNS 서버는 웹 사이트를 호스팅하는 서버의 IP 주소로 응답합니다.
  2. TCP 연결 설정: IP 주소를 얻으면 브라우저는 해당 IP 주소의 서버와 TCP 연결을 설정합니다.
  3. SSL 핸드셰이크: 웹사이트에서 HTTPS(SSL/TLS를 통한 HTTP)를 사용하는 경우 브라우저와 서버는 SSL 핸드셰이크를 수행하여 보안 연결을 설정합니다. 핸드셰이크 중에 서버는 SSL 인증서를 브라우저에 보내고 브라우저는 인증서가 유효하고 신뢰할 수 있는 인증 기관에서 발급했는지 확인합니다.
  4. 요청 보내기: 연결이 설정되면 브라우저는 서버에 HTTP 요청을 보냅니다. 요청에는 웹 사이트의 URL과 서버에서 요청을 처리하는 데 필요한 추가 정보가 포함됩니다.
  5. 서버 처리: 서버가 요청을 받아 처리합니다. 여기에는 데이터베이스 액세스, 서버 측 코드 실행 또는 다른 서버에서 데이터 가져오기가 포함될 수 있습니다.
  6. 응답 보내기: 서버는 HTTP 응답을 다시 브라우저로 보냅니다. 응답에는 브라우저에서 웹 사이트를 렌더링하는 데 필요한 HTML, CSS 및 JavaScript 코드가 포함됩니다.
  7. 웹사이트 렌더링: 브라우저가 응답을 수신하고 웹사이트 렌더링을 시작합니다. HTML 코드를 구문 분석하고 외부 리소스(예: 이미지 및 스크립트)를 다운로드하고 CSS 스타일을 HTML 요소에 적용하여 웹 사이트의 시각적 레이아웃을 만듭니다.
  8. JavaScript 실행: 웹사이트에 JavaScript 코드가 포함되어 있으면 브라우저가 이를 실행합니다. 여기에는 서버에 대한 추가 요청, HTML 및 CSS 수정 또는 사용자와의 상호 작용이 포함될 수 있습니다.
  9. 웹사이트 표시: 마지막으로 브라우저는 완전히 렌더링된 웹사이트를 사용자에게 표시합니다. 그런 다음 사용자는 링크를 클릭하고 양식을 작성하고 기타 작업을 수행하여 웹 사이트와 상호 작용할 수 있습니다.
profile
도전을 즐기는 자

0개의 댓글