Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
Stefan Bühler ed69e05383 Use glib no-return macro 10 роки тому
.gitignore Add autotools support 10 роки тому
CMakeLists.txt Add proper build date + fix some warnings 10 роки тому
Makefile.am Add autotools support 10 роки тому
README.html Remove some trailing whitespaces 11 роки тому
autogen.sh Add autotools support 10 роки тому
config.h.cmake Remove build date from cmake header 10 роки тому
configure.ac Add autotools support 10 роки тому
pam_limits.c Add proper build date + fix some warnings 10 роки тому
spawn-fcgi.1 Initial commit 11 роки тому
spawn-fcgi.c Use glib no-return macro 10 роки тому

README.html


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

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

<h3>Branches</h3>
<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 />
</p>

<h2>Original home</h2>

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

<p style='padding-left: 1em;'>
Includes modified code from the <a href="http://www.kernel.org/pub/linux/libs/pam/">Linux-PAM</a> project
for the limits.
</p>

<h2>Description</h2>
<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>

<h2>Usage</h2>

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

For php5:
</p>
<pre class="code">
#!/bin/sh

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
</pre>

<p style='padding-left: 1em;'>
For turbogears:
<p>
<pre class="code">
#!/bin/sh

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/start-tgapp-fcgi.py prod.cfg
</pre>

<p style='padding-left: 1em;'>
/var/www/tg-app/start-tgapp-fcgi.py:<br/>
<p>
<pre class="code">
#!/usr/bin/env python
import pkg_resources
import cherrypy
import sys

cherrypy.lowercase_api = True

pkg_resources.require("TurboGears")

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__), "setup.py")):
configfile = "dev.cfg"
else:
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)

WSGIServer(application=wsgiApp).run()
</pre>

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