tinc: integration and gui
[tomato.git] / release / src / router / spawn-fcgi / spawn-fcgi.1
blob029dd040b9d5f7b827bd327fd94c61b66d811ff6
1 .TH spawn-fcgi 1 "26 March 2009"
3 .SH NAME
5 spawn-fcgi \- Spawns FastCGI processes
7 .SH SYNOPSIS
9 .B spawn-fcgi
10 [options] [ -- <fcgiapp> [fcgi app arguments]]
12 .B spawn-fcgi
13 \-v
15 .B spawn-fcgi
16 \-h
18 .SH DESCRIPTION
20 \fIspawn-fcgi\fP is used to spawn remote and local FastCGI processes.
22 While it is obviously needed to spawn remote FastCGI backends (the web server
23 can only spawn local ones), it is recommended to spawn local backends
24 with spawn-fcgi, too.
26 Reasons why you may want to use spawn-fcgi instead of something else:
27 .IP * 3
28 Privilege separation without needing a suid-binary or running a server as root.
29 .IP * 3
30 You can restart your web server and the FastCGI applications without restarting the others.
31 .IP * 3
32 You can run them in different chroot()s.
33 .IP * 3
34 Running your FastCGI applications doesn't depend on the web server you are running,
35 which allows for easier testing of other web servers.
37 .SH OPTIONS
39 \fIspawn-fcgi\fP accepts the following options:
40 .TP 8
41 .B  \-f <path>
42 Filename of the FastCGI application to spawn. This option is deprecated and it
43 is recommend to always specify the application (absolute path) and its parameters after "--";
44 the fcgiapp parameter is directly used for the exec() call, while for starting the binary given
45 with \-f /bin/sh is needed (which may not be available in a chroot).
46 .IP
47 This option is ignored if fcgiapp is given.
48 .TP 8
49 .B  \-d <path>
50 Change the current directory before spawning the application.
51 .TP 8
52 .B  \-a <address>
53 IPv4/IPv6 address to bind to; only used if \-p is given too. Defaults to "0.0.0.0" (IPv4).
54 .TP 8
55 .B  \-p <port>
56 TCP port to bind to; you cannot combine this with the \-s option.
57 .TP 8
58 .B  \-s <path>
59 Path to the Unix domain socket to bind to; you cannot combine this with the \-p option.
60 .TP 8
61 .B  \-C <children>
62 (PHP only) Number of children to spawn by setting the PHP_FCGI_CHILDREN
63 environment variable. Default is not to overwrite the environment variable;
64 php will spawn no children if the variable is not set (same as setting it to 0).
65 .TP 8
66 .B  \-F <children>
67 Number of children to fork, defaults to 1. This option doesn't work with \-n,
68 have a look at
69 .BR multiwatch(1)
70 if you want to supervise multiple forks on the same socket.
71 .TP 8
72 .B  \-P <path>
73 Name of the PID file for spawned processes (ignored in no-fork mode)
74 .TP 8
75 .B  \-n
76 No forking should take place (for daemontools)
77 .TP 8
78 .B  \-M <mode>
79 Change file mode of the Unix domain socket; only used if \-s is given too.
80 .TP 8
81 .B  \-?, \-h
82 General usage instructions
83 .TP 8
84 .B  \-v
85 Shows version information and exits
88 The following options are only available if you invoke spawn-fcgi as root:
89 .TP 8
90 .B  \-c <directory>
91 Chroot to specified directory; the Unix domain socket is created inside the chroot unless \-S is given.
92 .TP 8
93 .B  \-S
94 Create Unix domain socket before chroot().
95 .TP 8
96 .B  \-u
97 User ID to change to.
98 .TP 8
99 .B  \-g
100 Group ID to change to. Defaults to primary group of the user given for \-u.
101 .TP 8
102 .B  \-U
103 Change user of the Unix domain socket, defaults to the value of \-u. (only used if \-s is given)
104 .TP 8
105 .B  \-G
106 Change group of the Unix domain socket, defaults to the primary group of the user given for \-U;
107 if \-U wasn't given, defaults to the value of \-g. (only used if \-s is given)
109 .SH "SEE ALSO"
111 .BR svc(8),
112 .BR supervise(8),
113 see http://cr.yp.to/daemontools.html
115 .BR multiwatch(1),
116 see http://cgit.stbuehler.de/gitosis/multiwatch/about/