Hi everyone, Here's a questions I just posted on stackoverflow.com (because I like that forum's layout) - but I thought posting it here might lead to more / better coverage. See: http://stackoverflow.com/questions/322694/
Multiple installs of Django - How to configure transparent multiplex through the webserver (Lighttpd)? Hi Everyone, This question flows from the answer to: How does one set up multiple accounts with separate databases for Django on one server? (http:// stackoverflow.com/questions/314515) I haven't seen anything like this on Google or elsewhere (perhaps I have the wrong vocabulary), so I think input could be a valuable addition to the internet discourse. How could one configure a server likeso: * One installation of Lighttpd * Multiple Django projects running as FastCGI * The Django projects may be added/removed at will, and ought not to require restarting the webserver * Transparent redirection of all requests/responses to a particular Django installation depending on the current user I.e. Given Django projects (with corresponding FastCGI socket): * Bob (/tmp/bob.fcgi) * Sue (/tmp/sue.fcgi) * Joe (/tmp/joe.fcgi) The Django projects being started with a (oversimplified) script likeso: #!/bin/sh NAME=bob SOCKET=/tmp/$NAME.fcgi PROTO=fcgi DAEMON=true /django_projects/$NAME/manage.py runfcgi protocol=$PROTO socket= $SOCKET daemonize=$DAEMON # ---- end I want traffic to http://www.example.com/ to direct the request to the correct Django application depending on the user that is logged in. In other words, http://www.example.com should come "be" /tmp/bob.fcgi if bob is logged in, /tmp/joe.fcgi if joe is logged in, /tmp/sue.fcgi if sue is logged in. If no-one is logged in, it should redirect to a login page. I've contemplated a demultiplexing "plexer" FastCGI script with the following algorithm: 1. If the cookie $PLEX is set, pipe request to /tmp/$PLEX.fcgi 2. Otherwise redirect to login page (which sets the cookie PLEX based on a many-to-one mapping of Username => PLEX) Of course as a matter of security $PLEX should be taint checked, and $PLEX shouldn't give rise to any presumption of trust. A Lighttpd configuration would be likeso (though Apache, Nginx, etc. could be used just as easily): fastcgi.server = ( "plexer.fcgi" => ( "localhost" => ( "socket" => "/tmp/plexer.fcgi", "check-local" => "disable" ) ) ) # ---- end Input and thoughts, helpful links, and to know how to properly implement the FastCGI plexer would all be appreciated. Thank you. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---