Skip to main content
 首页 » 编程设计

python之如何在一台服务器上运行两个 django 项目

2024年10月25日20duanxz

我正在使用 python 2.7、django 1.4 和 Apache2.2.21,我能够在 Apache 服务器上运行一个项目,我想使用相同的 Apache 和相同的服务器来运行我的第二个项目。

我正在为我的第一个项目使用以下 wsgi.py

import os 
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "product.settings") 
from django.core.wsgi import get_wsgi_application 
application = get_wsgi_application() 

并在 Apache httpd.conf 文件中使用以下代码

LoadModule wsgi_module modules/mod_wsgi.so 

文件的最后

WSGIScriptAlias / C:/Python27/Lib/site-packages/django/bin/product/product/wsgi.py 
 
WSGIPythonPath /C:/Python27/Lib/site-packages/django/bin/product 
 
<Directory C:/Python27/Lib/site-packages/django/bin/product/media> 
 
Order allow,deny 
 
Allow from all 
 
</Directory> 
 
<Directory C:/Python27/Lib/site-packages/django/bin/product> 
 
Order allow,deny 
 
 Allow from all 
 
 </Directory> 
 
<Directory  "C:/Python27/Lib/site-packages/django/contrib/admin/media"> 
 
Order deny,allow 
 
Allow from all 
 
</Directory> 
 
Alias /static/admin/  C:/Python27/Lib/site-packages/django/contrib/admin/media/  

请帮助我如何运行第二个项目,wsgi.py 路径为 C:/Python27/Lib/site-packages/django/bin/second/product/product/wsgi.py在同一个 Apache 服务器上。

请您参考如下方法:

您不应该在模块配置(mod_wsgi.so) 上编写您的应用程序配置(您添加的代码)

您应该创建应用程序配置文件(通常在 /var/www/apache2/sites-available/)然后启用它。为了创建多个应用程序,您应该使用 VirtualHost .

例如,

/var/www/apache2/sites-available/application1.conf

<VirtualHost *:80> 
ServerName www.application1.com 
 
# Your application 1 configuration 
 
</VirtualHost> 

/var/www/apache2/sites-available/application2.conf

<VirtualHost *:80> 
ServerName www.application2.com 
 
# Your application 2 configuration 
 
</VirtualHost> 

然后,您应该启用该应用程序。通常,命令是 sudo apache2ensite application1 && sudo apache2ensite application2。命令可能会因分布而异。

最后,您应该重新加载 apache sudo service apache2 reload。

我强烈建议您搜索特定发行版的虚拟主机设置指南。