Django docs состояние:
Если вы новичок в развертывании Django и/или Python, мы рекомендуем вам попробовать mod_wsgi первым. В большинстве случаев это будет самый простой, быстрый и наиболее стабильный вариант развертывания.
На данный момент я бы выбрал Apache + wsgi.
Большую часть времени настраиваемой Django на Apache сводится к этой линии:
WSGIScriptAlias//path/to/project/bin/django.wsgi
И django.wsgi
это что-то вроде этого:
#!/usr/bin/python
import djangorecipe.wsgi
application = djangorecipe.wsgi.main('project.settings', logfile='')
Я также буду рекомендовать Nginx + FastCGI, а Я предпочитаю nginx lighttpd (он лучше поддерживается, или, по крайней мере, это было моим восприятием последние несколько лет). Но это не распространяется на документы Django, и документация на сайте nginx не так хороша. Я бы придерживался Apache + wsgi, если у вас нет оснований для этого (у вас уже есть nginx или lighttpd, или у вас есть веские основания полагать, что разница в производительности с использованием fastcgi может быть значимой для вашего сайта). В этом случае here являются two howtos. Суть ее в том, что вы запускаете сервер FastCGI с Django:
python manage.py runfcgi host=127.0.0.1 port=8080 --settings=settings
, а затем настроить Nginx отправлять запросы к ним:
location/{
# host and port to fastcgi server
fastcgi_pass 127.0.0.1:8080;
# (...)
Nginx, Lighttpd довольно хорошие альтернативы .. Использование Apache да 'd использовать mod_wsgi, поэтому mod_python кажется довольно устаревшим –
После небольшого поиска на сайте django указано, что mod_python будет устаревшим после версии 1.5 –
Есть ли большая часть выигрыша/потери производительности при использовании nginx над apache –