设置Django服务器为多个站点提供服务的最佳方式是什么?

我目前使用Apache 2.0和FastCGI来服务我的Django站点(我从一台服务器/ IP托pipe多个站点)。 每个站点都有它自己的FastCGI进程,它会阻止Apache分叉多个可以使用大量内存的副本,这意味着我可以在不重新启动Apache的情况下重新启动单个Django站点。

这是一个明智的做事方式,还有其他更好的select吗?

  • 你如何在Nginx中设置服务器特定的ENV值?
  • 应用程序故障不能在configuration了BIG IP(f5)负载均衡器的apache 2.2 web服务器上工作
  • 如何解决Apache 500内部服务器错误? (重启,状态,尾巴...然后呢?)
  • 使用全新的Ubuntu Web Server和用户和权限保护Apache安装
  • 在同一台服务器上使用Nginx和Apache的潜在问题?
  • 用于邮件,文件和数据库存储的理想服务器规格/软件
  • 3 Solutions collect form web for “设置Django服务器为多个站点提供服务的最佳方式是什么?”

    你一定需要mod-wsgi。

    mod-wsgi是由多年前制造mod-python的同样的大脑开发的。 mod-wsgi现在推荐用于所有现代应用程序框架(包括django)的mod-python。

    基本上,mod-wsgi有两种操作模式:embedded式(最快的类似mod-python只有更快)或守护进程(有点像fast-cgi)。

    在守护进程模式下,最好使用fast-cgi,因为:

    1. 它不需要任何额外的移动部件(如flup)
    2. 你不需要停下来启动python解释器,这是由mod-wsgi来完成的。

    在embedded模式下,最好是mod-python,因为:

    1. mod-python的开发已经停止了mod-wsgi
    2. mod-wsgi最终会支持python 3k。
    3. mod-wsgi比mod-python快

    这里是文档: http : //code.google.com/p/modwsgi/wiki/IntegrationWithDjango

    / Richy

    早期我使用nginx和supervisord(在俄罗斯http://buzzja.mine.nu/blog/2009/02/21/dzhango-za-stenoj/

    我使用Apache2和mod_python成功。 你只是最终添加一些Django的应用程序。 特定的东西到Apache类似于这个(例如从一个VHOS运行reviewboardboard ReviewBoard拉):

    <Location "/reviewboard"> SetHandler mod_python PythonPath "['/usr/lib/python2.4/site-packages/django'] + ['/usr /local/reviewboard'] + ['/usr/local/reviewboard/djblets', '/usr/local'] + sys.pa th" SetEnv DJANGO_SETTINGS_MODULE reviewboard.settings PythonHandler django.core.handlers.modpython PythonAutoReload Off PythonDebug Off PythonInterpreter reviewboard </Location> 

    在这种情况下,重要的设置是在不同的Django应用程序中使用“PythonInterpreter”的独特性。

    祝你好运。

    服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器.