În întrebarea mea anterioară, am întrebat cum să fac ca mod_wsgi să utilizeze o anumită versiune Python. În urma răspunsului de la acea întrebare, am creat un mediu virtual Python 3.9 și am făcut ca WSGI să-l folosească. Cu toate acestea, acum aplicația mea Flask nu rulează deloc - doar am configurat pagina 404 pentru restul site-ului meu. Nu primesc erori când repornesc Apache2 și jurnalul de erori Apache este gol când vizitez site-ul. Cred că eroarea trebuie să se datoreze mediului meu virtual, deoarece am creat aplicații Flask de testare anterioare înainte de a folosi același stil de configurare.
Mediul meu virtual se află în cale/la/me/aplicația/venv/
.
cale/la/my/app/runner.wsgi
:
import sys
# Faceți să apară ceva în jurnalul de erori dacă WSGI este rulat
ridicați ValueError()
PROJECT_DIR = os.path.dirname(os.path.realpath(__file__))
sys.path.insert(0, PROJECT_DIR)
din my_app import aplicația ca aplicație
O parte din /etc/apache2/sites-available/000-default-le-ssl.conf
:
WSGIDaemonProcess myapp user=www-data group=www-data threads=4 python-home=/path/to/my/app/venv/
WSGIScriptAlias /my-app/ path/to/my/app/runner.wsgi
/etc/apache2/mods-available/wsgi.load
LoadModule wsgi_module „/path/to/my/app/venv/lib/python3.9/site-packages/mod_wsgi/server/mod_wsgi-py39.cpython-39-x86_64-linux-gnu.so”
WSGIPythonHome „cale/la/my/app/venv”
OS: Ubuntu 18.04.5 LTS