Как настроить 2 виртуальных окружения django на 1 сервере apache

Окружение:
Apache: 2.4
Python 3.7.2 (32bit)
1-й Django: 2.1.15
2-й Django: 3.2.11
Система: Windows Server 2016
База данных: SQL Server 2016

Я новичок в Apache и хочу добавить новый проект Django (3.2.11) на сервер Apache, который уже давно обслуживает другой проект Django (2.1.15). После проверки некоторых руководств в интернете, я все еще могу позволить только один проект Django, ниже приведены мои конфигурации:

файл: httpd.conf
Слушать *:1111
Слушать *:2222
active LoadModule vhost_alias_module modules/mod_vhost_alias.so
> активный Include conf/extra/httpd-vhosts.conf

файл: httpd-vhosts.conf

LoadFile "C:/Program Files (x86)/Python37-32/python37.dll"
LoadModule wsgi_module "d:/django_project1/env1/lib/site-packages/mod_wsgi/server/mod_wsgi.cp37-win32.pyd"

WSGIPythonHome "d:/django_project1/env1/"
#WSGIPythonHome "d:/django_project2/env2/"  <- I can't active both WSGIPythonHome at same time.

<VirtualHost *:1111>
    ServerName http://10.198.170.91
    ServerAlias http://10.198.170.91
    WSGIScriptAlias / D:/django_project1/web_project/web_project/wsgi_windows.py

    <Directory D:/django_project1/web_project/web_project>
        <Files wsgi_windows.py>
            Require all granted
        </Files>
    </Directory>

    Alias /static D:/django_project1/web_project/apps/static
    <Directory D:/django_project1/web_project/apps/static\>
        AllowOverride None
        Options None
        Require all granted
    </Directory>

    DocumentRoot "D:/django_project1/web_project"
    <Directory "D:/django_project1/web_project">
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
    </Directory>

    ErrorLog "logs/django_project1-error.log"
    CustomLog "logs/django_project1-access.log" common
</VirtualHost>

<VirtualHost *:2222>
    ServerName http://10.198.170.91
    ServerAlias http://10.198.170.91
    WSGIScriptAlias / D:/django_project2/web_project/web_project/wsgi_windows.py

    <Directory D:/django_project2/web_project/web_project>
        <Files wsgi_windows.py>
            Require all granted
        </Files>
    </Directory>

    Alias /static D:/django_project2/web_project/apps/static
    <Directory D:/django_project2/web_project/apps/static\>
        AllowOverride None
        Options None
        Require all granted
    </Directory>

    DocumentRoot "D:/django_project2/web_project"
    <Directory "D:/django_project2/web_project">
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
    </Directory>

    ErrorLog "logs/django_project2-error.log"
    CustomLog "logs/django_project2-access.log" common
</VirtualHost>

django_project1's wsgi_windows.py:

import os
import sys
import site
from django.core.wsgi import get_wsgi_application

site.addsitedir("D:/django_project1/env1/Lib/site-packages")

sys.path.append('D:/django_project1/web_project') 
sys.path.append('D:/django_project1/web_project/web_project')  

os.environ['DJANGO_SETTINGS_MODULE'] = 'web_project.settings' 
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "web_project.settings")  
 
application = get_wsgi_application()

django_project2's wsgi_windows.py:

import os
import sys
import site
from django.core.wsgi import get_wsgi_application

site.addsitedir("D:/django_project2/env2/Lib/site-packages")

sys.path.append('D:/django_project2/web_project') 
sys.path.append('D:/django_project2/web_project/web_project')  

os.environ['DJANGO_SETTINGS_MODULE'] = 'web_project.settings' 
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "web_project.settings")  
 
application = get_wsgi_application()

Я обнаружил, что если я активирую WSGIPythonHome "d:/django_project1/env1/", сайт 1-го проекта Django (http://10.198.170.91:1111) доступен, а 2-го проекта Django нет, если я активирую WSGIPythonHome "d:/django_project2/env2/", сайт 2-го проекта Django (http://10.198.170.91:2222) доступен, а 1-го проекта Django нет

Если я активирую оба WSGIPythonHome "d:/django_project1/env1/" и WSGIPythonHome "d:/django_project2/env2/", служба apache не может нормально запуститься.

Я пробовал много способов, но сервер Apache увидел, что не может установить 2 WSGIPythonHome одновременно, я схожу с ума, может кто-нибудь помочь мне? Большое спасибо!

Вернуться на верх