1.0. CGI 프로그램의 기능:
먼저, 공통 게이트웨이 인터페이스(CGI)란 무엇입니까? CGI는 웹 서버와 외부 프로그램 간의 통신 방법을 정의하는 데 사용되는 표준으로, 외부 프로그램에서 HTML, 이미지 또는 기타 콘텐츠를 생성할 수 있고, 서버는 외부 프로그램에서 생성되지 않은 HTML, 이미지 또는 기타 콘텐츠를 처리하는 방법을 제공합니다. 동일합니다. 따라서 CGI 프로그램을 사용하면 정적 콘텐츠뿐만 아니라 동적 콘텐츠도 생성할 수 있습니다. CGI를 사용하는 이유는 잘 정의되어 있고 널리 지원되는 표준이기 때문입니다. Java, ActiveX 등이 CGI 프로그램의 기능을 완성할 수 있지만 모든 브라우저가 이를 지원하는 것은 아닙니다. 반대로 모든 브라우저는 Lynx, IE, Netscape 등과 같은 CGI를 지원합니다.
그러나 다른 기술과 마찬가지로 CGI에도 한계가 있습니다. 이 섹션에서는 CGI 프로그램의 기능, 장점, 단점에 대해 설명합니다.
1.1.CGI 기능
CGI가 최선이자 유일한 옵션인 작업은 많이 있으며 이러한 작업은 초급 작업, 중급 작업, 고급 작업의 세 가지 범주로 나눌 수 있습니다. 기본 작업은 다음과 같이 프로그래밍이 거의 필요하지 않은 작업입니다.
문자 카운터
간단한 HTML을 생성하는 프로그램
Perl, Shell Script, C 또는 C++로 작성된 50줄 미만의 프로그램
이러한 작업을 작성하기 위해 CGI를 사용하면 최소한 세 가지 이점이 있습니다. 첫째, CGI는 가장 빠르게 실행되는 반면 Java는 너무 비싸고, 둘째, CGI 표준은 이전에 언급한 바와 같이 세 번째, CGI 리소스와 가장 호환됩니다. 풍부하며 인터넷에서 수천 개의 CGI 코드를 찾을 수 있습니다.
중간 작업에는 이미지 매핑 및 기타 약간 더 복잡한 프로그래밍 작업이 포함됩니다. 중급 수준에서는 CGI와 Java로 프로그램을 작성하는 용이성에 거의 차이가 없습니다.
이러한 작업에는 다음이 포함됩니다.
이미지 매핑
전체 페이지 HTML을 생성하는 CGI 스크립트
생기
특징적으로 고급 작업의 경우 CGI는 Java 프로그래밍보다 훨씬 간단합니다. 이러한 작업에는 다음이 포함됩니다.
백엔드 데이터베이스 작업
검색 엔진
여러 동적 페이지
그중 백엔드 데이터베이스 작업(데이터베이스에 액세스하는 애플리케이션)은 CGI의 우수성을 반영합니다. CGI는 다른 사람들이 CGI 라이브러리에서 많은 유용한 기능을 동시에 수행한 특정 역사를 가지고 있으며 많은 대기업이 CGI로 만든 소스 코드를 제공했습니다. Java는 프로그래밍 언어이고 CGI는 게이트웨이 프로그램의 기능 사양입니다. Java에 큰 변화가 있으면 전체 프로그램을 다시 작성해야 하고, CGI에 큰 변화가 있으면 CGI 라이브러리 프로그램만 업그레이드하면 됩니다.
그러나 CGI는 일부 영역에서 한계를 가지고 있습니다.
1.2. CGI의 한계
이미지 매핑과 애니메이션 측면에서 CGI 프로그램은 Java 프로그램만큼 개발하기가 쉽지 않습니다. 이제 Java가 점점 더 대중화되면서 CGI 프로그램은 짧고 복잡한 프로그램 및 데이터베이스 응용 프로그램을 작성하는 데 점점 더 적합해지고 있습니다.
1.3. CGI 프로그램 기능
CGI 프로그램의 가장 큰 특징은 CGI 사양만 준수한다면 어떤 언어로든 컴파일하고 어떤 플랫폼에서든 실행할 수 있다는 점이다. 다음 표는 비교입니다.
작업CGI+HTML HTML
양식 처리예 아니요
웹 페이지에 비정적 콘텐츠 생성예 아니요
이미지 이미지 파일 처리 예 예
웹 페이지 및 문서에서 예 아니요를 검색하세요.
양식 생성예 예
플랫폼 독립적인 문서 생성 예 예
채팅방과 같은 대화형 애플리케이션 생성 예 아니요
페이지 동적 생성 예 아니요
사용자 요구에 따라 페이지 문서 자르기 예 아니요
다음으로 일련의 "Hello World" 프로그램으로 이 강의를 마무리합니다.
펄:
"cgi-lib.pl"이 필요합니다.
PRint&PrintHeader;
인쇄 " ";
"Hello World"를 인쇄합니다.
인쇄 &PrintEnv;
출구;
이 파일은 C:HTTPDCGI-BIN 디렉터리에 저장되며 이름은 2_1.pl입니다. http://localhost/cgi-bin/2_1.pl 주소를 사용하여 브라우저에서 호출합니다. 이때 OmniHTTPD가 실행 중이어야 합니다. 모든 것이 잘 되면 브라우저에서 "Hello World"와 환경 변수를 볼 수 있습니다.
C: #포함
#include "html-lib.h"
#include "cgi-lib.h"
정수 메인()
{
html_header();
html_begin("CGI 테스트");
h1("CGI 프로그램");
printf(" ");
h2("CGI 환경 변수");
print_cgi_env();
html_end();
0을 반환합니다.
컴파일 후 실행 파일을 C:HTTPDCGI-BIN에 복사하고 이름을 2_1.cgi로 바꾸고 http://localhost/cgi-bin/2_1.cgi 주소로 호출합니다.