手册页部分 1: 用户命令

退出打印视图

更新时间: 2014 年 7 月
 
 

cgi-fcgi (1)

名称

cgi-fcgi - bridge from CGI to FastCGI

用法概要

cgi-fcgi -f cmdPath
cgi-fcgi -bind  -connect connName
cgi-fcgi -start -connect connName appPath [nServers]
cgi-fcgi -connect connName appPath [nServers]

描述

NAME
     cgi-fcgi   - bridge from CGI to FastCGI

SYNOPSIS
     cgi-fcgi -f cmdPath
     cgi-fcgi -bind  -connect connName
     cgi-fcgi -start -connect connName appPath [nServers]
     cgi-fcgi -connect connName appPath [nServers]

DESCRIPTION
     cgi-fcgi is a CGI/1.1 program that communicates with an
     already-running  FastCGI  application in order to respond to
an
     HTTP request.   cgi-fcgi  is  also  capable  of  starting  a
FastCGI
     application.

     When you invoke cgi-fcgi as

         cgi-fcgi -f cmdPath

     then cgi-fcgi opens the file at cmdPath and reads its
     arguments from that file.  cgi-fcgi will skip lines
     that begin with the comment character #.  The first
     non-comment line should contain valid arguments in
     one of the other three forms.

     The -f form of cgi-fcgi is designed for Unix systems
     whose  exec(2) family of system calls supports the execution
of
     command interpreter files.  For instance, if a file with
     execute permission contains the text

         #! /bin/cgi-fcgi -f
         -connect /httpd/root/sock/app /httpd/root/bin/app

     the effect is the same as executing

         /bin/cgi-fcgi       -connect        /httpd/root/sock/app
/httpd/root/bin/app

     When you invoke cgi-fcgi as

         cgi-fcgi -bind -connect connName

     the  connName  argument  is  either  the path name of a Unix
domain
     listening socket or a host:port pair.  If connName contains
     a colon, it is assumed to be host:port.  cgi-fcgi performs
     a connect(2) using connName.  If the connect succeeds,  cgi-
fcgi
     forwards the CGI environment variables and stdin data to the
     FastCGI application, and forwards the stdout and stderr data
from
     the  application to cgi-fcgi's stdout (most likely connected
to
     a Web server).  When the FastCGI application signals the end
of
     its response, cgi-fcgi flushes its buffers and
     exits, and the Web server completes the http response.

     When you invoke cgi-fcgi as

         cgi-fcgi -start -connect connName appPath [nServers]

     then cgi-fcgi performs the function of starting one or more
     FastCGI application processes.  The connName argument speci-
fies
     either the path name of the  Unix  domain  listening  socket
that
     cgi-fcgi will create, or is "localhost:NNN" where NNN is the
port
     number of the TCP/IP listening  socket  that  cgi-fcgi  will
create
     on the local machine.  (cgi-fcgi will not create processes
     on  remote  machines.)  After cgi-fcgi creates the listening
socket,
     it forks nServers copies of a process running the executable
file
     appPath.   If  nServers  is omitted, the effect is as if the
value "1"
     had been specified.  The processes share the single  listen-
ing socket.

     When you invoke cgi-fcgi as

         cgi-fcgi -connect connName appPath [nServers]

     cgi-fcgi  performs  -bind  and  then,  if necssary, performs
-start
     and repeats the -bind.  That is, cgi-fcgi first operates  as
if
     the command had been

         cgi-fcgi -bind -connect connName

     If the connect fails, cgi-fcgi tries

         cgi-fcgi -start -connect connName appPath [nServers]

     and finally retries

         cgi-fcgi -bind -connect connName

     In  this form, cgi-fcgi does not support TCP/IP connections.

ENVIRONMENT VARIABLES
     The usual CGI ones, but they are  not  interpreted  by  cgi-
fcgi.

SEE ALSO
     FGCI_accept(3)

BUGS
     cgi-fcgi  doesn't  generate useful HTTP responses in case of
error,
     and it generates no response at all when run as  start-fcgi.

     On  Digital  UNIX  3.0  systems  the  implementation of Unix
Domain
     sockets does not work when such sockets are  stored  on  NFS
file
     systems.  Symptom: cgi-fcgi may core dump or may exit with
     status 38.  Work-around: store sockets in local file systems
     (/tmp often works) or use TCP/IP.

     On AIX systems the implementation of listening sockets
     does not support socket sharing, and the standard FastCGI
     application libraries can't synchronize access to  AIX  lis-
tening
     sockets.   Work-around:  Don't  use the nServers argument on
AIX.

HISTORY
     Copyright (c) 1996 Open Market, Inc.
     See the file "LICENSE.TERMS" for information  on  usage  and
redistribution
     of this file, and for a DISCLAIMER OF ALL WARRANTIES.
     $Id: cgi-fcgi.1,v 1.1.1.1 1997/09/16 15:36:26 stanleyg Exp $


ATTRIBUTES





See
attributes(5)
for
descrip-
tions
of
the
fol-
low-
ing
attributes:

+---------------+------------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE  |
+---------------+------------------+
|Availability   | library/fastcgi  |
+---------------+------------------+
|Stability      | Uncommitted      |
NOTES-----------+------------------+





This
soft-
ware
was
built
from
source
avail-
able
at
https://java.net/projects/solaris-
user-
land.
The
orig-
i-
nal
com-
mu-
nity
source
was
down-
loaded
from
http://www.fastcgi.com/dist/fcgi-2.4.0.tar.gz

Fur-
ther
infor-
ma-
tion
about
this
soft-
ware
can
be
found
on
the
open
source
com-
mu-
nity
web-
site
at
http://www.fastcgi.com/.