GNU Info

Info Node: (python2.1-lib.info)cgi-intro

(python2.1-lib.info)cgi-intro


Next: Using the cgi module Prev: cgi Up: cgi
Enter node , (file) or (file)node

Introduction
------------

A CGI script is invoked by an HTTP server, usually to process user
input submitted through an HTML `<FORM>' or `<ISINDEX>' element.

Most often, CGI scripts live in the server's special `cgi-bin'
directory.  The HTTP server places all sorts of information about the
request (such as the client's hostname, the requested URL, the query
string, and lots of other goodies) in the script's shell environment,
executes the script, and sends the script's output back to the client.

The script's input is connected to the client too, and sometimes the
form data is read this way; at other times the form data is passed via
the "query string" part of the URL.  This module is intended to take
care of the different cases and provide a simpler interface to the
Python script.  It also provides a number of utilities that help in
debugging scripts, and the latest addition is support for file uploads
from a form (if your browser supports it -- Grail 0.3 and Netscape 2.0
do).

The output of a CGI script should consist of two sections, separated by
a blank line.  The first section contains a number of headers, telling
the client what kind of data is following.  Python code to generate a
minimal header section looks like this:

     print "Content-Type: text/html"     # HTML is following
     print                               # blank line, end of headers

The second section is usually HTML, which allows the client software to
display nicely formatted text with header, in-line images, etc.  Here's
Python code that prints a simple piece of HTML:

     print "<TITLE>CGI script output</TITLE>"
     print "<H1>This is my first CGI script</H1>"
     print "Hello, world!"


automatically generated by info2www version 1.2.2.9