본문 바로가기

팁과노하우/일반상식

CGI(Common Gateway Interface)

웹서버에 있어 사용자의 요구를 응용프로그램에 전달하고 그 결과를 사용자에게 되돌려주기 위한 표준방식.

웹브라우저에서 HTML에 의해 여러가지 정보를 처리하지만 그 기능만으로 모든 정보처리를 다 할 수 없다. 대개의 웹페이지는 사용자가 브라우저를 통해 문서를 요청하고, 웹서버는 준비된 문서를 송출하는 형태의 단방향식 정보 제공 역할만 할뿐이다.

정보검색, 정보조회나 쇼핑몰 주문 등 데이터베이스를 활용해 웹형태로 서비스할 때 다양하게 이어지는 외부 웹페이지는 데이터베이스에 접속하는 프로그램이 사용자 요청에 따라 작동된 후 웹서버에 전달돼 HTML문서를 즉석에서 만들어내는 경우다.

이처럼 단방향식 정보제공 역할을 보충하기 위한 외부 프로그램과 웹서버(HTTP Server) 간의 연결 역할을 하기 위한 규약이 CGI다. 즉 웹의 변형이나 어떠한 특정 변경을 원할때 프로그램과의 인터페이스를 CGI라고 한다.

또는 넓은 의미로 CGI를 수행하는 외부 프로그램을 포함하여 말하기도 한다.
예를 들어 홈페이지에 방문객들의 comment를 받을 수 있는 방명록을 만들려고 할 때, 웹에서 구현하는 HTML만으로는 해결할 수 없다. 그때 사용하는 프로그램을 흔히 CGI프로그램(혹은 CGI스크립트)이라고 한다. 이 CGI프로그램은 통상적으로 C/C++ 나 PERL혹은 UNIX Shell, Tcl/Tk 등을 사용하여 구현한다.

CGI프로그램의 종류는 방문객 카운터나 방명록 뿐만 아니라 웹게시판, 웹대화방, 검색엔진, 다양한 배너 보여주기, 업로드가 가능한 자료실, 폼을 이용하여 메일을 띄우는 폼메일 등 이루 헤아릴 수 없이 많다.

'팁과노하우 > 일반상식' 카테고리의 다른 글

플래시 메모리(Flash Memory)  (0) 2008.05.19
디빅(DivX;Digital Video Express)  (0) 2008.05.13
오마주(hommage)  (0) 2008.05.13
스트리밍(Streaming)  (0) 2008.05.01
웹 접근성  (0) 2008.05.01