CGI - Common Gateway Interface
Abbreviation of Common Gateway Interface, CGI is a specification for transferring information between a World Wide Web server and a CGI program. A CGI program is any program designed to accept and return data that conforms to the CGI specification. The program could be written in any programming language, including C, Perl, Java, or Visual Basic.
CGI programs are the most common way for Web servers to interact dynamically with users. Many HTML pages that contain forms, for example, use a CGI program to process the form's data once it's submitted. Another increasingly common way to provide dynamic feedback for Web users is to include scripts or programs that run on the user's machine rather than the Web server. These programs can be Java applets, Java scripts, or ActiveX controls. These technologies are known collectively as client-side solutions, while the use of CGI is a server-side solution because the processing occurs on the Web server.
One problem with CGI is that each time a CGI script is executed, a new process is started. For busy Web sites, this can slow down the server noticeably. A more efficient solution, but one that it is also more difficult to implement, is to use the server's API, such as ISAPI or NSAPI. Another increasingly popular solution is to use Java servlets.
- Watch Datamation's editor James Maguire moderate roundtable discussions with tech experts from companies such as Accenture, Dell, Blue Jeans Network, Microsoft and more »
Taking ownership of our own misjudgments or simple forgetfulness takes a healthy amount of humility and some honest self-assessment. Yet sometimes... Read More »Have We Become a World of Addicts?
It's hard to imagine our lives without smartphones. But people who suffer separation anxiety when they don't have their phones nearby may be in... Read More »13 Best Free Android Apps
From secure messaging to document editing, our top free must-have apps have been rated, reviewed and named the best free Android apps of 2015. Read More »
From wacky alarm clocks to lecture hall tools and after class entertainment, these Android apps are a good fit for a student's life and budget. Read More »Network Fundamentals Study Guide
A network is a group of two or more computer systems or devices, linked together to share resources, exchange files and electronic communications.... Read More »Computer Architecture Study Guide
This Webopedia study guide describes the different parts of a computer system and their relations. Read More »