CGI means Common Gateway Interface. It's a way to provide
interactivity to Web pages, in particular to handle the input from forms. For
instance, you can use CGI to take information from a form and send it to your
e-mail account, and many shopping-cart programs use CGIs. Many Web-hosting
companies have libraries of CGI scripts you can use. Some allow you to install
your own CGI scripts, but don't provide a library. Others don't allow you to add
any CGIs.
A standard for interfacing web servers with an executable
application. A CGI program can be
written in any language like Perl or C/C++ and it is often stored in a special
directory like /cgi-bin. CGI is often
used to process data from HTML forms.
What are CGI Scripts?
The difference between your web site just being a virtual
billboard and it being an interactive web site, is having the ability to get
information to and from your viewers. The Web provides a mechanism for
accomplishing this, CGI, the Common Gateway Interface, using CGI scripts. An
example of a CGI script would be: Shopping cart systems, hit counters,
guestbooks, order forms, mail, maps, etc.
CGI scripts are the way most servers communicate with other
programs and scripts. CGI scripts are simple text files, lines of code, that
are interpreted as requested by the server. A CGI script will work together
with other programs and with the HTML content of your web page. Since HTML
alone only allows for information to be displayed, CGI scripts give HTML the
ability to interact with the visitor. CGI scripts can be written in Perl, PHP,
C, Visual Basic, or Python. CGI is not a programming language itself. It's more
of a protocol for communication between the web server and the script. Perl and
PHP seem to be the languages of choice, because they are easy to learn and are
very portable.
How Does A CGI Script Work?
A CGI Script is a collection of lines of code that contain
instructions for the server. Unlike a simple HTML document request, a CGI-BIN
(Common Gateway Interface) request requires something a whole lot smarter than
a regular HTML request for content from the server. When you click on a link
that looks like:
http://100best-web-hosting.com/cgi-bin/Guestbook/guestbook.cgi, you are really
instructing the server to run an actual program that handles only this one type
of request. In this case it runs the program that calls up the form that allows
you to make an entry in the guestbook. Here is a breakdown of what actually
happens:
Your browser sends the request shown above to the server.
The server runs the guestbook.cgi program.
The guestbook.cgi program realizes that you are not adding
anything yet, so it makes the decision to create and return to you, a blank
data entry form.
Your browser then displays this form as it would any other
HTML document.
So you take a moment and fill in all the fields and click on
the SUBMIT button. Now a more complex series of actions take place. The command
in the browser location window may look something like this:
/cgi-bin/Guestbook/guestbook.cgi?name=joe&email=joe@mail.com
When the CGI receives the request, it executes a program
called guestbook.cgi that is located in the Guestbook directory under cgi-bin.
What is different now is that in addition to a program request, information is
being fed to the CGI script.
This is what the script then does:
Load the guestbook.cgi program into memory for running.
It notices that it has to split up the information using the
& as a way of telling where one bit starts and ends.
Seeing that the e-mail has a name in it, sends a thank you
note to the person that signed the book.
Sends a note to the webmaster that a new entry is in the
guestbook.
Takes all the input data, and uses the information to create
a new entry that is tagged onto the guestbook.html document.
Creates an HTML document saying "Thank you for signing
my guestbook!" that is returned to the browser. And the CGI's job is
finished.
The important concept is that in order to use CGI-BIN or a
CGI script, you must create a real, however big or small computer program. It
is not embedded in your HTML document, but it is installed in your cgi-bin
directory located on your server.
What are Free CGI Scripts?
Free CGI scripts are prewritten applications in PERL or
other programming code, that you can download or copy straight from the
provider. By utilizing the many free CGI scripts available you can have CGI
features on your site (guestbook, forms, etc.), but don't need any programming
skills to create these features on your own. Usually the free CGI scripts will
run from the CGI providers servers, so you don't have to deal with complex
installation and maintenance procedures. Free CGI scripts like hit counters and
guestbooks are offered by most web hosts. If your web host doesn't offer these
features, here are a few resources for Free CGI Scripts: HotScripts
www.hotscripts.com, The CGI Resource Index www.cgi-resources.com,
Free-Scripts.Net www.free-scripts.net, Script Search www.scriptsearch.com.
Do I need CGI Scripts in the hosting package I choose?
In order to use CGI programs, your server must be configured
to support them. Check with your system administrator as to whether or not you
can use them, and if so, where your CGI programs must reside. If you are not
allowed to do CGI on your server- consider moving to someplace where you can,
or finding somebody to host your scripts.
SPONSORS:
No comments:
Post a Comment