Назад | Перейти на главную страницу

Как запустить несколько сайтов django, используя ту же виртуальную среду, что и подкаталоги в apache?

У меня безымянный впс. У меня есть 3 сайта django sitename_dev, sitename_staging, sitename_live, которые запускаются с использованием виртуального env. Все 3 экземпляра django по умолчанию без изменений. Я настроил свой apache следующим образом.

в /etc/apache2/conf-available/wsgi.conf

#from virtual env
LoadModule wsgi_module "/path/to/virtualenv/lib/python3.6/site-packages/mod_wsgi/server/mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so"
WSGIPythonHome "/path/to/virtualenv"

# dev site
Include /path/to/sitename_dev.conf

#staging
#Include /path/to/sitename_staging.conf

в path/to/sitename_dev.conf

WSGIScriptAlias /sitename_dev /path/to/sitename_dev/sitename_dev/wsgi.py
WSGIPythonPath /path/to/sitename_dev

<Directory /path/to/sitename_dev/sitename_dev>
    <Files wsgi.py>
        Require all granted
    </Files>
</Directory>

в path/to/sitename_staging.conf

WSGIScriptAlias /sitename_staging /path/to/sitename_staging/sitename_staging/wsgi.py
WSGIPythonPath /path/to/sitename_staging

<Directory /path/to/sitename_staging/sitename_staging>
    <Files wsgi.py>
        Require all granted
    </Files>
</Directory>

С этой конфигурацией my.ip / sitename_dev / открывается. Но если я раскомментирую строку промежуточного сайта, чтобы включить его в /etc/apache2/conf-available/wsgi.conf, оба my.ip / sitename_dev и my.ip / sitename_staging дают ошибку 500. Как я могу запустить 3 сайта как подкаталоги?

specs: OS: ubuntu 16.4 LTS server: apache2 2.4.18 python version of virtual env & wsgi: 3.6