FastCGI Developer's Kit Index Page
    - doc/
        directory.
    
        - FastCGI
            Technical White Paper.  Start here.
            Motivates FastCGI, then explains the FastCGI interface,
            FastCGI application roles, the FastCGI application
            library, server support for FastCGI, and FastCGI performance.
         - Understanding FastCGI
            Application Performance document.
            Why FastCGI applications often run faster than applications
            coded directly to Web server APIs.
         - FastCGI Developer's Kit
            document.
            
                - Describes how to configure and build the
                    kit for your development platform.
                
 - Tells how to write applications using the
                    libraries in the kit.
                
 - Documents cgi-fcgi, a tool in the kit
                    that allows you to develop and test FastCGI applications
                    using a Web server that lacks FastCGI support.
            
 
         - Open Market
             FastCGI 1.0 Programmer's Guide.
             Programmer-oriented documentation for developers of
             applications that run on the Open Market's Secure
             WebServer 2.0.  The content overlaps considerably with Section 3
             of the Developer's Kit document.
         - FCGI_Accept.3,
            FCGI_Finish.3,
            FCGI_SetExitStatus.3,
            FCGI_StartFilterData.3,
                 and
            cgi-fcgi.1 manpages.
	
 - Integrating FastCGI with Perl-5
	     document.
	     How to build FastCGI support into the Perl-5 interpreter
             and how to write FastCGI applications in Perl.
	 -  Integrating FastCGI with Tcl
	     document.
	     How to build FastCGI support into the Tcl interpreter
             and how to write FastCGI applications in Tcl.
	 -  Integrating FastCGI with Java
	     document.
	     How to build Web server applications in Java using
             FastCGI.
        - FastCGI:
            A High-Performance Gateway Interface document.
            Position paper presented at the workshop
            "Programming the Web -- a search for APIs",
            Fifth International World Wide Web Conference,
            6 May 1996, Paris, France.  Short paper, addressed to an
            audience of technical specialists.
        - FastCGI Specification
            document.
            Defines the interface between a FastCGI
            application and a Web server that supports FastCGI.
            This is dry stuff, not needed for writing applications!
      
     - include/
        directory.
        .h files for the FastCGI libraries.
     - libfcgi/
        directory.
        .c files for the FastCGI libraries.
     - examples/
        directory.
        Several example programs.  The links below invoke the
        programs.  Use the section that corresponds to the
        Web server you have configured for FastCGI:
        
          - Open Market Secure WebServer:
          
            - echo,
              an example program that returns a page containing all of its
              inputs -- environment variables and stdin. (Source code:
              echo.c.)
              Notice the FastCGI process ID in the initial
              environment (there are two echo processes
              running).  Also notice the request variables
              that carry ticketing information (SI_*);
              the anonymous ticket has been forced into the URL so you
              can see it.  Alter it if you wish -- see what happens.
            
 - echo,
              the same program accessed via a URL that is access
              controlled by a simple Authorizer.
              (Source code:
              tiny-authorizer.c.)
              Authenticate with user ID fastcgi and
              password sano to gain access.  In addition
              to demonstrating Authorizer-based access control, this
              application demonstrates Authorizer-controlled session affinity:
              Use the query string
              ?0
              to route your request to echo process 0,
              and the query string
              ?1
              to route your request to echo process 1.
            
 - sample-store,
              a more realistic example. (Source code:
              sample-store.c.)
              This shopping cart implementation demonstrates how
              FastCGI applications can get high performance using
              in-memory caching yet preserve data across crashes.
              Request routing is controlled by the anonymous ticket in
              the URL; if you erase your ticket you'll get a new
              shopping cart.  Using ps, locate and kill the
              two sample-store processes; the Web server will
              restart them and the new processes will recover your
              shopping cart.  The program also illustrates how a
              single application can play multiple roles.
          
 
           - NCSA and Apache servers:
          
            - echo,
              an example program that returns a page containing all of its
              inputs -- environment variables and stdin. (Source code:
              echo.c.)
          
 
            - Any Web server, using cgi-fcgi:
          
            - echo,
              an example program that returns a page containing all of its
              inputs -- environment variables and stdin. (Source code:
              echo.c.)
          
 
         
     - perl-5/
        directory.
        Bits for building FastCGI-integrated Perl-5 if you can't
        use the already-built Perl-5 interpreters from
        www.fastcgi.com.
     - tcl/
        directory.
        Bits for building FastCGI-integrated Tcl if you can't
        use the already-built Tcl interpreters from
        www.fastcgi.com.
     - java/src
        directory.
        Source code for FastCGI Java classes.
     - cgi-fcgi/
        directory.
        .c file for the CGI-to-FastCGI bridge.
 
© 1996, Open Market, Inc.