两个django项目在同一个ip地址(服务器)

时间:2018-03-05 14:41:39

标签: python django apache server mod-wsgi

是否可以在同一个IP地址/服务器上设置两个不同的django项目(在本例中为Linode)?例如,在www.example.com上运行的django1_project和在django2.example.com上运行的django2_project。这是首选,但如果这不可能,那么如何制作两个djangos,即一个在www.example.com/django1上运行,第二个在www.example.com/django2上运行?我是否需要调整settings.py,wsgi.py文件或apache文件(在/ etc / apache2 / sites-available)或其他内容?

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

是的,可以从一个主机/ Apache实例托管几个使用Apache + mod_wsgi的Python驱动的站点。唯一的限制:所有应用程序/站点必须由相同的Python版本提供支持,尽管每个应用程序可能拥有(或不拥有)自己的virtualenv(强烈建议)。还建议使用mod_wsgi守护进程模式,并让每个Django站点在单独的守护进程组中运行。

答案 1 :(得分:0)

我不熟悉Linode限制,但如果您可以控制Apache文件,那么您当然可以使用基于名称的虚拟主机来实现。设置两个具有相同IP地址和端口的VirtualHost容器(假设www.example.com和django2.example.com都解析为该IP地址),然后使用容器中的ServerName设置区分请求。在Apache 2.4中,基于名称的虚拟主机是自动的。在Apache 2.2中,您需要NameVirtualHost指令。