CGI - Common Gateway InterfaceCGI is the original standard for creating plugin enhancements for Web servers. Its most frequent use is to process HTML forms.
CGI works by using the operating system's standard i/o and environment variable mechanisms to pass information between the form, server and the plugin.
While binary programs can be used as CGI plugins, scripting languages, such as PERL are commonly used for CGI. Such scripting languages are portable, easy to modify remotely, and require no compilation or interruption of the server.
The down side to using CGI is that CGI scripts typically need to be loaded and unloaded from memory each time they are executed. This, combined with the use of standard i/o and environment variables, drastically impacts the performance of servers.
A replacement for CGI is being adopted on some platforms that allow the plugin to remain in memory, and use more direct methods of interfacing - providing far better performance on web servers. ISAPI on MS Windows is one such alternative.