CGI (Common Gateway Interface)
웹 서버에서 동적인 페이지를 보여 주기 위해
임의의 프로그램을 실행할 수 있도록 하는 기술 중 하나
CGI는 현재는 널리 쓰이지 않는데, 가장 큰 문제로
요청이 하나 들어 올 때마다 프로세스가 하나씩 실행된다는 것
이는 특히 스크립트 언어에서 치명적이었는데
스크립트 언어에서는 보통 코드를 실행할 때마다 코드를 매번 해석해야 하기 때문
이 문제를 해결하기 위해 나온 방안들
1. 웹 서버가 직접 스크립트 언어를 해석하고
그 결과를 캐싱해서 빠르게 실행할 수 있도록 하는 경우
특히 웹 서버 모듈로 확장 가능한 웹 서버에서 흔히 쓰이는데
대표적인 언어가 바로 PHP
2. CGI 프로그램이 한 요청만 처리하고 종료되는 게 아니라
요청을 계속 처리할 수 있도록 CGI를 개량한 경우
이 중 언어와 상관 없는 기술로는 FastCGI와 이의 개량판 SCGI
대표적으로 PHP를 윈도우에서 IIS로 돌리거나
리눅스에서 NGINX로 돌릴 경우 FastCGI 모듈을 이용
3. 그냥 원하는 언어로 웹 서버를 짠다!(python, ruby)
이 경우 해당 프로그램은 항상 실행되어 있고,
웹 서버는 그 내부 서버를 중개하는 역할만함
'Web 관련' 카테고리의 다른 글
정규식 공부 도움되는 사이트 (0) | 2020.07.08 |
---|---|
WSGI, WAS, CGI (0) | 2020.06.03 |
SOP(Same Origin Policy) (0) | 2020.05.13 |
Web server and Web application (0) | 2020.05.13 |
URI URL (0) | 2020.04.29 |