Common Gateway Interface (CGI) - an introduction
CGI is an interface for running programs on the server at the request of the client.
When the user clicks on a CGI link, the server calls the corresponding process and returns its output, not the data/file/code associated with the process.
Typical Applications
- Support for dynamic generation of HTML documents, such as on-the-fly conversions from other formats.
- Interface to and integration with Forms/GUI area of HTML - submitted forms are handled by suitable CGI processes.
- Interfacing with other (non-HTTP) remote services such as databases, video-on-demand, simulations, etc.
- This is current area of major development of the web.
Look at a simple example of an HTML form with its CGI Perl program.