CGI(Common Gateway Interface)
• "CGI" stands for "Common Gateway Interface." CGI is one method by which a web server can obtain data from (or send data to) databases, documents, and other programs, and presents that data to viewers via the web. More simply, a CGI is a program intended to be run on the web. A CGI program can be written in any programming language, but Perl is one of the most popular languages
• CGI is a standard for interfacing external applications with information servers, such as HTTP or Web servers
• This interface provides a means for browsers and the server where document resides to communicate and pass information back and forth
• Primarily, this is done through the <FORM> tag, but there can be other ways to use CGI effectively, like through Server Side Includes (SSI)
• CGI, permits interactivity between a client and a host operating system through the World Wide Web via the Hyper Text Transfer Protocol (HTTP)
• CGI program can be written in C or C++, Perl, ASP, PHP, Python, TCL, shells, and many others languages and scripts
Examples of uses for CGI:
forms on web sites allow the user to enter information which is processed by CGI and mailed to an administrator or logged
On-the-Fly Pages web pages can be created dynamically (as needed) with up-to-date nformation.
• Database Interaction
an application of on-the-fly page creation. Web pages can be created using information read from a database, or a web site form can allow a user to update database entries
• Logging / Counters
a log file can record traffic data updated with information on each visitor. A counter can be included on the web page to advertise traffic.
"server-push" programs can be used to feed the client successive images in an animated sequence.
• Catalogs, Search engines
• Obtaining input from a user or from a data file.
• Storing that input in program variables.
• Manipulating those variables to achieve some desired purpose, and
• Sending the results to a file or video display.