Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 5 Sep 2009 15:47:11 +0200
From:      Michel Talon <talon@lpthe.jussieu.fr>
To:        freebsd-ports@FreeBSD.org
Cc:        ohartman@zedat.fu-berlin.de
Subject:   Re: Lighttpd: (mod_fastcgi.c.1742) connect failed
Message-ID:  <20090905134711.GA95775@lpthe.jussieu.fr>

next in thread | raw e-mail | index | archive | help
O. Hartmann wrote:

> 2009-09-03 19:47:49: (mod_fastcgi.c.1742) connect failed: Connection 
> refused on unix:/tmp/lighttpd-fastcgi-php.socket-7

Have you checked the permissions? I seem to remember i had the same
problem once with lighttpd and it was because permissions of the
socket under /tmp. Now my server works OK since ages. I had to
take provisions for permissions in the fastcgi python responder. In my case
the relevant bits are when daemonizing the responder:
pid = os.fork()
if pid > 0 :                    # In first child
    import time
    time.sleep(3)
    while not os.access(socket, os.F_OK) :
        time.sleep(1)
    # the socket created by the child is made accessible to the web
    # server
    os.chown(socket, wwwuid, wwwgid)
    os.chmod(socket, 0700)
    sys.exit(0)                 # Exit first child
....

While still being root i adjust the permissions of the socket. Then 
i change effective userid:

.....
# And finally the routine which starts the fcgi responder, as user www
os.seteuid(wwwuid)
WSGIServer(request_handler, **wsgi_opts).run()
....

The complete script you can get at:
http://www.lpthe.jussieu.fr/~talon/show_index.fcgi
It is a simpler server than for example django if you want to understand
fastcgi. By the way the aim is to display  the FreeBSD ports trough
a fastcgi responder.


-- 

Michel TALON




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090905134711.GA95775>