Answers
to Questions about...
Web Servers
CGI [Common
Gateway Interface] is a first-generation Web technology that,
because of its simplicity and universality, continues to have wide appeal
for developing dynamic pages. Web sites implemented with CGI are relatively
easy to port across HTTP software and platforms, because most
web servers natively support CGI.
In addition, many CGI programs are developed in Perl,
a portable open-source scripting language with a large and growing
library of cost-free modules
and native
database extensions. For these reasons CGI remains a reasonable
choice for building lightly loaded or relatively static web sites.
Additional Perl
CGI Resources.
Comprehensive Perl Archive Network, CPAN.
Perl
CGI Programming FAQ, by Shishir Gundavaram and Tom Christiansen.
CGI.pm
- a Perl5 CGI Library, by L. Stein.
"How
to Set Up a Simple Database with mSQL and CGI Interfaces,"
by L. Fini.
"Oyster Grit," by G.
Benett
On the downside, each invocation of a CGI program launches a separate
process, making the technique slow, resource-intensive
and non-scaleable. CGI itself provides no support for
encryption, concurrency control, transaction integrity, or many other
features associated with enterprise applications.
Several alternatives to CGI are discussed below.