CGI or Common Gateway Interface - is an interface program that extends the capabilities of Web servers. It is a set of instructions written in a programming language that processes the data, and returns the result. For example when you submit a form, search terms, register on a site, fill in login and password, query databases by submitting search requests, etc. most probably the server is using a CGI script to receive and process the data. The program can be written in any programming language, including C/C++, Perl, Java, PHP, ASP, Visual Basic, etc. It is often stored in a special directory called cgi-bin.