= Server arrangements = Because Django uses [http://www.python.org/peps/pep-0333.html WSGI], it can run on any WSGI-compatible Web server. Here's how to run Django on various server arrangements. == Apache with mod_python == See the [http://www.djangoproject.com/documentation/modpython/ official documentation]. == Apache with FastCGI == See the [http://www.djangoproject.com/documentation/fastcgi/ official documentation]. Mac OS X users, see [wiki:OsxFcgi Django with FCGI on OS X] -- How to get Django up and running with FastCGI and the Mac OS X default Apache 1.3 Legacy documentation (i.e., unofficial docs written before the official docs were released) is available here: [http://hugo.muensterland.org/2005/08/03/django-apache-and-fcgi/ Django, Apache and FCGI] and [http://hugo.muensterland.org/2005/07/26/running-django-with-fcgi-and-lighttpd/ lighttpd+FCGI documentation]. == lighttpd with FastCGI == See the [http://www.djangoproject.com/documentation/fastcgi/ official documentation]. Legacy documentation (i.e., unofficial docs written before the official docs were released) is available here: [http://hugo.muensterland.org/2005/07/26/running-django-with-fcgi-and-lighttpd/ Running Django with FCGI and lighttpd] and [http://hugo.muensterland.org/2005/07/27/django-lighttpd-and-fcgi-second-take/ Django, lighttpd and FCGI, second take]. Django/lighttpd/FastCGI [http://manuals.textdrive.com/read/book/15 instructions for use on TextDrive shared hosting accounts] are also available. == Multiple versions with FastCGI == See [wiki:MultipleVersionsWithFCGI] == Twisted == See #172. == TooFPy == See [http://simon.bofh.ms/cgi-bin/trac-toofpy.cgi/wiki/TooFPyAndDjango the description in the trac-wiki] for how to combine them. TooFPy is a pure-python webserver with focus on the creation of web services. == Apache and SCGI == [http://www.mems-exchange.org/software/scgi/ SCGI] can be used with Apache [https://simon.bofh.ms/cgi-bin/trac-django-projects.cgi/wiki/DjangoScgi#preview like this]. It builds on stuff from the Apache+FCGI documentation above. == Django behind/inside Zope == Not really a server arrangement ''per se'', I've found a way to query a Django site from Zope or Plone and return the result. This allows you to include a Django site inside a pre-existing Zope/Plone site. Good for custom content that you don't want to use existing Zope technologies to develop. For the code, see [http://bitprophet.org/code/django_to_zope.py this partly documented file]. It's in a temporary location for the time being; when I get a blog set up, I plan to complete the explanation and post it. For more info, drop an email to ''jeff (at) bitprophet (dot) org''. == CGI == Running Django as a traditional CGI is possible and would work the same as running any other sort of Python CGI script, but is generally not recommended. With traditional CGI, the program which will be run -- in this case, Django plus a Django-powered application -- is loaded from disk into memory each time a request is served, which results in a significant amount of processing overhead and much slower responses. FastCGI and SCGI, in contrast, load the code only once -- when the server starts up -- and keep it in memory as long as the server is running, resulting in much faster responses. If that hasn't put you off and you still need CGI, take a look at [http://code.djangoproject.com/ticket/2407 ticket 2407] == Django built-in development server == By default the development server that comes with Django will only accept connections on the localhost interface (127.0.0.1). To have it listen on the proper network interface, you can start the server like this: python manage.py runserver 0.0.0.0:8000