Web – WSGI와 CGI
CGI
- CGI란?
CGI(Common Gateway Interface) : 웹 서버와 외부 프로그램을 연결해주는 표준화된 프로토콜
- 웹 서버가 처리할 수 없는 정보가 웹 서버로 요청되면, 그 정보를 처리할 수 있는 외부 프로그램을 호출하고, 외부 프로그램은 요청받은 프로그램 파일을 읽어 HTML으로 반환하는 단계를 거치고, 그 결과를 웹 서버가 받아와 웹 브라우저에게 전송하는 형태
처리 방식)
요청 -> 웹 서버 -> CGI -> 외부 프로그램
[Python] WSGI
- WSGI란?
WSGI(Web Server Gateway Interface) : 파이썬 웹 어플리케이션이 웹 서버와 통신하기 위한 인터페이스
- CGI와 비슷하나 WSGI는 서버와 어플리케이션이 나뉘어져 있는 차이점이 있습니다.
처리 방식)
요청 -> 웹 서버 -> WSGI 서버 -> WSGI 웹 어플리케이션

- WSGI Server
웹 서버와 웹 어플리케이션 사이에 동작하며 상호작용을 위한 통신 규약의 역할을 합니다.
결과적으로 Web server 만으로는 동적 처리가 불가능하지만 CGI를 통해 동적 웹 페이지 처리가 가능하게 됩니다. 😲
추가적으로 우리가 많이 사용하는 Web Server의 처리 방식이 궁금하다면 – Web Server – 아파치와 Nginx
사담 – 단순히 Web Server만을 통해 정적 컨텐츠를 이용하는 것과 CGI를 통한 동적 컨텐츠의 차이는 사진을 보는 것과 화상통화를 하는 것의 차이라고 보면 이해가 편하려나요? 😁