CGI / Web Server / MIME Type 핵심 개념 정리
웹의 동작 원리를 깊이 이해하기 위해서는 CGI, 웹 서버, MIME Type 간의 관계를 알아야 하는데요. 이 세 가지 요소는 클라이언트와 서버 간의 정보 전달, 정적/동적 콘텐츠 처리, 그리고 콘텐츠 해석 방식에 있어 중요한 역할을 합니다.
CGI (Common Gateway Interface)
CGI는 웹 서버와 외부 프로그램 간 데이터를 주고받기 위한 표준 인터페이스입니다. 클라이언트가 웹 서버에 특정 요청을 하면, 웹 서버는 해당 요청을 처리할 별도의 CGI 프로그램(스크립트)을 실행하지요.
이후 CGI 프로그램은 사용자의 입력을 받아 처리한 결과를 웹 서버를 통해 다시 클라이언트에 전달하는데요. 주로 폼 처리, 데이터베이스 질의 결과 제공 등의 동적 콘텐츠 생성에 많이 활용됩니다.
Web Server (웹 서버)
웹 서버는 HTTP 프로토콜을 이용해 클라이언트의 요청을 받고, 이에 대응하는 웹 콘텐츠(HTML 문서, 이미지, 비디오 등)를 클라이언트에 제공하는 역할을 합니다. 대표적인 웹 서버로는 Apache, Nginx, IIS 등이 있으며, 정적인 콘텐츠뿐 아니라 CGI와 같은 인터페이스를 통해 동적인 콘텐츠 생성도 지원합니다.
MIME Type (Multipurpose Internet Mail Extensions)
MIME Type은 인터넷에서 전송되는 콘텐츠의 형식을 나타내는 표준입니다. 웹 서버는 클라이언트에 콘텐츠를 제공할 때 MIME Type을 HTTP 헤더에 포함하여 클라이언트가 받은 데이터를 어떻게 처리할지 알려주는데요.
예를 들어, HTML 파일은 text/html
, JPEG 이미지는 image/jpeg
, MPEG 비디오는 video/mpeg
와 같은 MIME Type으로 전달됩니다. MIME Type 덕분에 브라우저는 다양한 콘텐츠를 적절히 처리하고 사용자에게 보여줄 수 있지요.
마치면서
이처럼 CGI는 동적 콘텐츠를, 웹 서버는 콘텐츠의 전달을, MIME Type은 콘텐츠의 해석을 책임지며, 이 세 요소는 현대 웹 시스템의 핵심 축을 이룹니다. 각각의 개념을 명확히 이해하면 웹의 요청-응답 구조와 서버 동작 방식에 대한 통찰력을 얻을 수 있게 될 것입니다.
'크래프톤 정글 > CS기초(키워드, 개념정리)' 카테고리의 다른 글
[CS기초] 8주차 개념 정리 (1) | 2025.05.06 |
---|---|
[CS기초] HTTP (요청/응답, 헤더, 메서드, 상태코드, HEAD 메서드) 핵심 정리 (0) | 2025.05.05 |
[CS기초] Datagram Socket(UDP) vs Stream Socket(TCP) 핵심 개념 정리 (0) | 2025.05.05 |
[CS기초] 파일 디스크립터(File Descriptor) 핵심 개념 정리 (0) | 2025.05.05 |
[CS기초] 프록시(Proxy) 핵심 개념 정리 (0) | 2025.05.04 |