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

时间:2014-09-29 04:52:13

标签: python django apache python-2.7

我正在使用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/ 

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

1 个答案:

答案 0 :(得分:2)

您不应该在模块配置(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。根据分布情况,commnad可能会有所不同。

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

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