|
|
|
@ -1,34 +1,57 @@
|
|
|
|
|
.TH spawn-fcgi 1 2009-02-06 |
|
|
|
|
.TH spawn-fcgi 1 "26 March 2009" |
|
|
|
|
. |
|
|
|
|
.SH NAME |
|
|
|
|
. |
|
|
|
|
spawn-fcgi \- Spawns FastCGI processes |
|
|
|
|
. |
|
|
|
|
.SH SYNOPSIS |
|
|
|
|
. |
|
|
|
|
.B spawn-fcgi |
|
|
|
|
[options] [ -- <fcgiapp> [fcgi app arguments]] |
|
|
|
|
|
|
|
|
|
.P |
|
|
|
|
.B spawn-fcgi |
|
|
|
|
\-v |
|
|
|
|
|
|
|
|
|
.P |
|
|
|
|
.B spawn-fcgi |
|
|
|
|
\-h |
|
|
|
|
. |
|
|
|
|
.SH DESCRIPTION |
|
|
|
|
\fIspawn-fcgi\fP is used to spawn remote FastCGI processes (but may be used |
|
|
|
|
for local processes, too). |
|
|
|
|
. |
|
|
|
|
\fIspawn-fcgi\fP is used to spawn remote and local FastCGI processes. |
|
|
|
|
.P |
|
|
|
|
While it is obviously needed to spawn remote FastCGI backends (the webserver |
|
|
|
|
can only spawnn local ones), it is recommended to spawn local backends |
|
|
|
|
with spawn-fcgi, too. |
|
|
|
|
.P |
|
|
|
|
Reasons why you may want to use spawn-fcgi instead of something else: |
|
|
|
|
.IP * 3 |
|
|
|
|
Privilege separation without needing a suid-binary or running a server as root. |
|
|
|
|
.IP * 3 |
|
|
|
|
You can restart your webserver and the FastCGI applications without restarting the others. |
|
|
|
|
.IP * 3 |
|
|
|
|
You can run them in different chroot()s. |
|
|
|
|
.IP * 3 |
|
|
|
|
Running your FastCGI applications doesn't depend on the webserver you are running, |
|
|
|
|
which allows for easier testing of other webservers. |
|
|
|
|
. |
|
|
|
|
.SH OPTIONS |
|
|
|
|
. |
|
|
|
|
\fIspawn-fcgi\fP accepts the following options: |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-f <path> |
|
|
|
|
Filename of the FastCGI application to spawn. If you need to specify |
|
|
|
|
additional arguments, specify the application and its parameters after "--"; |
|
|
|
|
this option is ignored if <fcgiapp> is given. |
|
|
|
|
Filename of the FastCGI application to spawn. This option is deprecated and it |
|
|
|
|
is recommend to always specify the application (absolute path) and its parameters after "--"; |
|
|
|
|
.IP |
|
|
|
|
This option is ignored if fcgiapp is given. |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-a <addr> |
|
|
|
|
IP address to bind to (for TCP/IP-based IPC) |
|
|
|
|
IP address to bind to; only used if \-p is given too. |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-p <port> |
|
|
|
|
TCP port to bind to (for TCP/IP-based IPC) |
|
|
|
|
TCP port to bind to; you cannot combine this with the \-s option. |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-s <path> |
|
|
|
|
Path to the Unix-domain socket to bind to (for Unix sockets-based IPC) |
|
|
|
|
Path to the Unix-domain socket to bind to; you cannot combine this with the \-p option. |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-C <children> |
|
|
|
|
(PHP only) Number of children to spawn by setting the PHP_FCGI_CHILDREN |
|
|
|
@ -36,7 +59,10 @@ environment variable. Default is not to overwrite the environment variable;
|
|
|
|
|
php will spawn no childs if the var is not set (same as setting it to 0). |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-F <children> |
|
|
|
|
Number of children to fork. Defaults to 1. |
|
|
|
|
Number of children to fork, defaults to 1. This option doesn't work with \-n, |
|
|
|
|
have a look at |
|
|
|
|
.BR multiwatch(1) |
|
|
|
|
if you want to supervise multiple forks on the same socket. |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-P <path> |
|
|
|
|
Name of the PID file for spawned processes (ignored in no-fork mode) |
|
|
|
@ -44,21 +70,42 @@ Name of the PID file for spawned processes (ignored in no-fork mode)
|
|
|
|
|
.B \-n |
|
|
|
|
No forking should take place (for daemontools) |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-M <mode> |
|
|
|
|
Change file mode of the unix socket; only used if \-s is given too. |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-?, \-h |
|
|
|
|
General usage instructions |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-v |
|
|
|
|
Shows version information and exits |
|
|
|
|
.P |
|
|
|
|
. |
|
|
|
|
The following options are only available if you invoke spawn-fcgi as root: |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-c <dir> |
|
|
|
|
Chroot to specified directory (can only be invoked by root) |
|
|
|
|
Chroot to specified directory; the unix socket is created inside the chroot unless \-S is given. |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-S |
|
|
|
|
Create unix socket before chroot()ing. |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-u |
|
|
|
|
User ID to change to (can only be invoked by root) |
|
|
|
|
User ID to change to. |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-g |
|
|
|
|
Group ID to change to (can only be invoked by root). Defaults to primary group |
|
|
|
|
of user if -u is given, |
|
|
|
|
Group ID to change to. Defaults to primary group of the user given for \-u. |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-?, \-h |
|
|
|
|
General usage instructions |
|
|
|
|
.B \-U |
|
|
|
|
Change user of the unix socket, defaults to the value of \-u. (only used if \-s is given) |
|
|
|
|
.TP 8 |
|
|
|
|
.B \-v |
|
|
|
|
Shows version information and exits |
|
|
|
|
.SH AUTHOR |
|
|
|
|
This manual page was written by Gunnar Wolf <gwolf@debian.org>, for |
|
|
|
|
the Debian GNU/linux system (but may be used by others). |
|
|
|
|
.B \-G |
|
|
|
|
Change group of the unix socket, defaults to the primary group of the user given for \-U; |
|
|
|
|
if \-U wasn't given, defaults to the value of \-g. (only used if \-s is given) |
|
|
|
|
. |
|
|
|
|
.SH "SEE ALSO" |
|
|
|
|
. |
|
|
|
|
.BR svc(8), |
|
|
|
|
.BR supervise(8), |
|
|
|
|
see http://cr.yp.to/daemontools.html |
|
|
|
|
.P |
|
|
|
|
.BR multiwatch(1), |
|
|
|
|
see http://cgit.stbuehler.de/gitosis/multiwatch/about/ |
|
|
|
|