#!/usr/bin/python import sys, os # Set the DJANGO_SETTINGS_MODULE environment variable. # Customise this for your setup os.environ['DJANGO_SETTINGS_MODULE'] = "djsite.settings" from django.core.handlers.wsgi import WSGIHandler main_handler = WSGIHandler() def wrapper(environ, start_response): """FastCGI Authorizers don't get PATH_INFO. Make one from REQUEST_URI so that Django can use it in URL matching.""" if not environ["PATH_INFO"]: # Fastcgi doesn't give you PATH_INFO for authorizers uri = environ['REQUEST_URI'] if '?' in uri: path, query = environ['REQUEST_URI'].split('?', 1) else: path, query = uri, '' environ['PATH_INFO'] = path return main_handler(environ, start_response) if __name__ == '__main__': from flup.server.fcgi import WSGIServer from flup.server.fcgi_base import FCGI_AUTHORIZER # Django normally uses the FCGI_RESPONDER role and will reject AUTHORIZER # requests. WSGIServer(wrapper, roles=(FCGI_AUTHORIZER,)).run()