我用的是Linux(Debian/Ubuntu)。在
三个Django项目存储在三个独立的Python虚拟环境中(即py3venv1、py3venv2、py2venv1):/var/www/
.........py3venv1/
..................bin/
..................include/
..................lib/
..................project1/
........................../manage.py
........................../project1/wsgi.py
........................../myapp
.........py3venv2/
..................bin/
..................include/
..................lib/
..................project2/
........................../manage.py
........................../project2/wsgi.py
........................../myapp
.........py2venv1/
..................bin/
..................include/
..................lib/
..................project3/
........................../manage.py
........................../project3/wsgi.py
........................../myapp
我为Python3安装了mod\wsgi(pip3 install mod_wsgi)
Apache配置:/etc/apache2/sites-available/000-default.conf对于项目1和项目2(仅限于Python3),未配置项目3(Python 2):
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# Project 1 (Python3)
WSGIScriptAlias /project1 /var/www/py3venv1/project1/project1/wsgi.py process-group=group1
WSGIDaemonProcess group1 python-home=/var/www/py3venv1/lib/python3.5 python-path=/var/www/py3venv1/project1
WSGIProcessGroup group1
Alias /project1/static /var/www/py3env1/project1/assets
Require all granted
# Project 2 (Python3)
WSGIScriptAlias /project2 /var/www/py3venv2/project2/project2/wsgi.py process-group=group2
WSGIDaemonProcess group2 python-home=/var/www/py3venv2/lib/python3.5 python-path=/var/www/py3venv2/project2
WSGIProcessGroup group2
Alias /project2/static /var/www/py3env2/project2/assets
Require all granted