Common Gateway Interfaces
The Common Gateway Interfaces (literally “Interface common footbridge”), generally shortened cgi , is a standardized interface used by the waiters HTTP. This last, instead of sending the contents of a file (page HTML, image…), a program carries out then turns over the generated contents, as if it were about contents of file. Cgi is the Standard industrialist which indicates how to transmit the request of waiter HTTP to the program and how to recover the generated answer. Cgi makes it possible to pass from the parameters to the program, in such a way that it can hold account of it to generate the data. A traditional example of parameter is the Character string containing the terms sought near a Search engine.
One of the characteristics of interface cgi is to be independent of any language. Even if the language Perl often were historically used to write some, it is possible to write a program cgi in C, Python, in script Shell or very other Computer programming language.
A sample program cgi is that which makes function the Annuaire Web Open Directory Project . When a visitor subjects a request to the Web site, waiter HTTP transmits by cgi the term which was seized in the form of the Web page. Program cgi then seeks in its Database all the sites containing the term, creates a page HTML containing the results and turns over it to the waiter HTTP which will transmit it to the navigator.
From the point of view of waiter HTTP, it is necessary to configure it to associate the execution of program cgi with some URLs claimed by the navigators. By defect, the waiters are generally satisfied to turn over the contents of the files.
As this technology requires that a new copy of the program is launched at each request, it overloads the waiters quickly. This caused creation of other more flexible and effective technologies. FastCGI is an evolution based on cgi which made it possible to launch program cgi only once, and not with each request concerned; this technique requires a small bookstore which was developed for the principal languages used (C, Perl…). Thereafter the languages were directly integrated in waiter HTTP in the form of modules, this requiring an adaptation much heavier interpreters and who is specific to waiter HTTP. It is the case with Apache for languages usually employed for the applications Web, like (configured in module), Perl (mod_perl), Python (mod_python) or sometimes Java.
See too
Internal bonds
- Variable of environment cgi
- NCSA httpd
- ISAPI
- Waiter HTTP
External bonds
- Documentation of the NCSA (in English)
| Random links: | The Marvellous Visit | Boris Brunov | Turn of the Basque Country 2005 | Pennapiedimonte | Lioudmila Jouravliova | Chick flick | 823 |