spawns FastCGI processes
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Stefan Bühler dc27ffe949 Add README.html 13 years ago
.gitignore Initial commit 13 years ago
CMakeLists.txt Add limits support via /etc/security/limits.conf (without pam) 13 years ago
README.html Add README.html 13 years ago
pam_limits.c Add limits support via /etc/security/limits.conf (without pam) 13 years ago
spawn-fcgi.1 Initial commit 13 years ago
spawn-fcgi.c Add limits support via /etc/security/limits.conf (without pam) 13 years ago
waf Initial commit 13 years ago
wscript Add limits support via /etc/security/limits.conf (without pam) 13 years ago


<style language="text/css">
pre { margin-left: 2em; border: 1px dashed black; padding: 2px }
pre.code { border: 1px solid blue } { border: 1px dashed green }

To clone this repository, issue the following command:
<pre class="shell">
$ git-clone <a href="git://">git://</a>

<p style='padding-left: 1em;'>
master: master branch<br />
debian: patch for debian package - will be rebased, so you may need to force updates with -f<br />

<h2>Original home</h2>

<p style='padding-left: 1em;'>
Source based on spawn-fcgi from <a href="">lighttpd</a>,
rewritten for external packaging and some extra features:
<li>chown/chmod the unix-domain socket</li>
<li>use /etc/security/limits.conf for limits</li>
<li>use glib2</li>

<p style='padding-left: 1em;'>
Includes modified code from the <a href="">Linux-PAM</a> project
for the limits.

<p style='padding-left: 1em;'>
spawn-fcgi prepares the environment for fastcgi applications; it opens a socket (tcp / unix-domain)
on filedescriptor 0, changes uid/gid for process and unix-domain socket, closes STDIN/STDOUT, ...


<p style='padding-left: 1em;'>
Examples for daemontools (with lighttpd on debian): <br/>

For php5:
<pre class="code">

exec 2&gt;&amp;1
exec /usr/bin/spawn-fcgi -s /var/run/lighttpd/php-webuser.sock -n -u webuser -U www-data -l -- /usr/bin/php5-cgi

<p style='padding-left: 1em;'>
For turbogears:
<pre class="code">

exec 2&gt;&amp;1
cd /var/www/tgapp
exec /usr/bin/spawn-fcgi -s /var/run/lighttpd/tgapp.sock -n -u tg-user -U www-data -- /var/www/tg-app/ prod.cfg

<p style='padding-left: 1em;'>
<pre class="code">
#!/usr/bin/env python
import pkg_resources
import cherrypy
import sys

cherrypy.lowercase_api = True


from cherrypy._cpwsgi import wsgiApp
from flup.server.fcgi import WSGIServer
from os.path import *

import turbogears

if len(sys.argv) > 1:
configfile = sys.argv[1]
elif exists(join(dirname(__file__), "")):
configfile = "dev.cfg"
configfile = "prod.cfg"

turbogears.update_config(configfile=configfile, modulename="tgapp.config")

from tgapp.controllers import Root

cherrypy.root = Root()

cherrypy.server.start(initOnly=True, serverClass=None)


<p style='padding-left: 1em;'>
spawn-fcgi is released under a BSD license, which may be found in the source files:
<a href="">spawn-fcgi.c</a>:
Copyright (c) 2004, Jan Kneschke, incremental
All rights reserved.
<a href="">pam_limits.c</a>:
Copyright (c) Cristian Gafton, 1996-1997, &gt;;
All rights reserved.