본문 바로가기
웹/책 & 강의

HTTP 완벽가이드 - 5장 (웹 서버)

by sun__ 2022. 1. 9.

웹 서버

  • 웹 리소스에 대한 HTTP 요청을 받아서 콘텐츠를 클라이언트에게 돌려줌
  • 웹 서버 SW + 웹페이지 제공에 특화된 장비 양쪽 모두를 가리킴
    • ex. 웹브라우저로 접근 가능한 관리기능을 제공하는 공유기
  • HTTP 및 그와 관련된 TCP 처리를 구현한 것.
  • TCP 커넥션 관리에 대한 책임을 OS와 나눠 갖는다.

가상 호스팅

  • 하나의 컴퓨터에서 여러 도메인 운영

정적 콘텐츠 리소스 매핑

  • URI에 대응하는 콘텐츠나 콘텐츠 생서기를 웹 서버에서 찾아서 콘텐츠를 식별해야함
  • docroot
    • URI를 웹서버의 파일시스템 안에 있는 파일 이름으로 사용할 수 있다. 이때 루트를 docroot라 한다.
    • 보통 public_html
  • 웹 서버는 경로가 파일이 아닌 디렉터리를 가리키는, 디렉터리 URL에 대한 요청을 받을 수 있다. 이 때,
    • 에러를 반환하거나,
    • 디렉터리 대신 특별한 색인 파일(주로 index.html)을 반환하거나,
    • 디렉터리를 탐색해서 그 내용을 담은 HTML페이지를 반환

동적 콘텐츠 리소스 매핑

  • 요청에 맞게 콘텐츠를 생성하는 프로그램에 URI를 매핑.
  • 특히 웹 서버 중 애플리케이션 서버(Web Application Server)라고 하는 것들은 웹 서버를 복잡한 백엔드 애플리케이션과 연결하는 일을 한다.
  • WAS론 tomcat, jeus등이 많이 사용된다고 하는데, 개발하면서 신경써본 기억은 없다. 찾아봐도 내 프로젝트에서 1:1 대응되는게 뭔지 잘 모르겠다.(TODO)

node.js, fastapi 애플리케이션 등은 위 그림의 APP에 해당함