Acronym for the Common Gateway Interface

A standard that defines the conditions a CGI program should be able to expect.

A CGI program is run by a WebServer to process certain requests. It is expected to return output to be sent back as the server's response to that request. That output will often be a WebPage, but might also be anything else the server can send, like an image or a binary file.

The standard specifies EnvironmentVariables that provide information about the request, like PATH_INFO, QUERY_STRING, REMOTE_USER, and more, as well as details such as where STDIN/OUT/ERR should be connected.

Note that this means that CGI programs can be written in any ProgrammingLanguage, even if "CGI" is commonly -- and wrongly -- associated with Perl.